mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
26968 lines
1.4 MiB
Plaintext
26968 lines
1.4 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_0276B010 @ 0x276b010
|
|
void Gambit_fn_0276B010(CPUState* cpu) {
|
|
L_0276B010: ; // 0x276b010
|
|
/* 0276B010 */ return;
|
|
}
|
|
|
|
// fn_0276B014 @ 0x276b014
|
|
void Gambit_fn_0276B014(CPUState* cpu) {
|
|
L_0276B014: ; // 0x276b014
|
|
/* 0276B014 */ return;
|
|
}
|
|
|
|
// fn_0276B018 @ 0x276b018
|
|
void Gambit_fn_0276B018(CPUState* cpu) {
|
|
L_0276B018: ; // 0x276b018
|
|
/* 0276B018 */ return;
|
|
}
|
|
|
|
// fn_0276B01C @ 0x276b01c
|
|
void Gambit_fn_0276B01C(CPUState* cpu) {
|
|
L_0276B01C: ; // 0x276b01c
|
|
/* 0276B01C */ return;
|
|
}
|
|
|
|
// fn_0276B020 @ 0x276b020
|
|
void Gambit_fn_0276B020(CPUState* cpu) {
|
|
L_0276B020: ; // 0x276b020
|
|
/* 0276B020 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276B024 */ return;
|
|
}
|
|
|
|
// fn_0276B028 @ 0x276b028
|
|
void Gambit_fn_0276B028(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276B028: ; // 0x276b028
|
|
/* 0276B028 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 0276B028 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0276B02C */ return;
|
|
}
|
|
|
|
// fn_0276B030 @ 0x276b030
|
|
void Gambit_fn_0276B030(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276B030: ; // 0x276b030
|
|
/* 0276B030 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 0276B030 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276B034 */ return;
|
|
}
|
|
|
|
// fn_0276B038 @ 0x276b038
|
|
void Gambit_fn_0276B038(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276B038: ; // 0x276b038
|
|
/* 0276B038 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0276B038 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0276B03C */ return;
|
|
}
|
|
|
|
// fn_0276B040 @ 0x276b040
|
|
void Gambit_fn_0276B040(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276B040: ; // 0x276b040
|
|
/* 0276B040 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0276B040 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276B044 */ return;
|
|
}
|
|
|
|
// fn_0276B048 @ 0x276b048
|
|
void Gambit_fn_0276B048(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276B048: ; // 0x276b048
|
|
/* 0276B048 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276B048 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276B04C */ return;
|
|
}
|
|
|
|
// fn_0276B050 @ 0x276b050
|
|
void Gambit_fn_0276B050(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_0276B050: ; // 0x276b050
|
|
/* 0276B050 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0276B050 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B050 */ cpu->r[1] = _t0;
|
|
/* 0276B054 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0276B054 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0276B058 */ /* nop */
|
|
/* 0276B05C */ cpu->r[0] = cpu->lr;
|
|
/* 0276B060 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0276B060 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0276B064 */ /* nop */
|
|
/* 0276B068 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B068 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0276B06C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B06C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276B070 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0276B070 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0276B074 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 0276B074 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0276B078 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B078 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0276B07C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B07C */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0276B080 */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0276B080 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0276B084 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B084 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276B084 */ if (_t10) goto L_0276B088; else goto L_0276B098;
|
|
L_0276B088: ; // 0x276b088
|
|
/* 0276B088 */ cpu->r[3] = 0x0000064Cu;
|
|
/* 0276B08C */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B090 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276B094 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B094 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276B094 */ if (_t12) goto L_0276B224; else goto L_0276B098;
|
|
L_0276B098: ; // 0x276b098
|
|
/* 0276B098 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B09C */ Gambit_fn_0276F238(cpu);
|
|
/* 0276B0A0 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276B0A4 */ cpu->r[30] = 0x10110000u;
|
|
/* 0276B0A8 */ cpu->r[0] = cpu->r[0] + 0x000002ECu;
|
|
/* 0276B0AC */ cpu->r[10] = 0x10100000u;
|
|
/* 0276B0B0 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0276B0B0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0276B0B4 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276B0B8 */ _t14 = cpu->r[10] + 0x0000041Cu;
|
|
/* 0276B0B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0276B0BC */ cpu->r[29] = cpu->r[31] + 0x000004CCu;
|
|
/* 0276B0BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276B0C0 */ cpu->r[30] = cpu->r[30] + 0x00000A2Cu;
|
|
/* 0276B0C4 */ _t15 = cpu->r[9] + 0x00000420u;
|
|
/* 0276B0C4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0276B0C8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B0C8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0276B0C8 */ if (_t17) goto L_0276B0CC; else goto L_0276B0DC;
|
|
L_0276B0CC: ; // 0x276b0cc
|
|
/* 0276B0CC */ cpu->r[3] = 0x00000060u;
|
|
/* 0276B0D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B0D4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276B0D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276B0D8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B0D8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0276B0D8 */ if (_t19) goto L_0276B118; else goto L_0276B0DC;
|
|
L_0276B0DC: ; // 0x276b0dc
|
|
/* 0276B0DC */ cpu->r[5] = 0x10100000u;
|
|
/* 0276B0E0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276B0E4 */ cpu->r[6] = 0x10100000u;
|
|
/* 0276B0E8 */ cpu->r[5] = cpu->r[5] + 0x000004B0u;
|
|
/* 0276B0EC */ cpu->r[8] = 0x00000000u;
|
|
/* 0276B0F0 */ cpu->r[6] = cpu->r[6] + 0x0000043Cu;
|
|
/* 0276B0F4 */ cpu->r[7] = cpu->r[5];
|
|
/* 0276B0F8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276B0FC */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276B100 */ _t20 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0276B100 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[30]);
|
|
/* 0276B104 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276B108 */ _t21 = cpu->r[29] + 0x00000058u;
|
|
/* 0276B108 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[31]);
|
|
/* 0276B10C */ _t22 = cpu->r[11] + 0x00000424u;
|
|
/* 0276B10C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0276B110 */ _t23 = cpu->r[29] + 0x00000000u;
|
|
/* 0276B110 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 0276B114 */ _t24 = cpu->r[29] + 0x00000054u;
|
|
/* 0276B114 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
L_0276B118: ; // 0x276b118
|
|
/* 0276B118 */ cpu->r[29] = cpu->r[31] + 0x0000052Cu;
|
|
/* 0276B118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276B11C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B11C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0276B11C */ if (_t26) goto L_0276B120; else goto L_0276B130;
|
|
L_0276B120: ; // 0x276b120
|
|
/* 0276B120 */ cpu->r[3] = 0x00000060u;
|
|
/* 0276B124 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B128 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276B128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276B12C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B12C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0276B12C */ if (_t28) goto L_0276B16C; else goto L_0276B130;
|
|
L_0276B130: ; // 0x276b130
|
|
/* 0276B130 */ cpu->r[5] = 0x10100000u;
|
|
/* 0276B134 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276B138 */ cpu->r[6] = 0x10100000u;
|
|
/* 0276B13C */ cpu->r[5] = cpu->r[5] + 0x0000045Cu;
|
|
/* 0276B140 */ cpu->r[8] = 0x00000000u;
|
|
/* 0276B144 */ cpu->r[6] = cpu->r[6] + 0x0000049Cu;
|
|
/* 0276B148 */ cpu->r[7] = cpu->r[5];
|
|
/* 0276B14C */ cpu->r[3] = cpu->r[29];
|
|
/* 0276B150 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276B154 */ _t29 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0276B154 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[30]);
|
|
/* 0276B158 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276B15C */ _t30 = cpu->r[29] + 0x00000058u;
|
|
/* 0276B15C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 0276B160 */ _t31 = cpu->r[10] + 0x00000428u;
|
|
/* 0276B160 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0276B164 */ _t32 = cpu->r[29] + 0x00000000u;
|
|
/* 0276B164 */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 0276B168 */ _t33 = cpu->r[29] + 0x00000054u;
|
|
/* 0276B168 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
L_0276B16C: ; // 0x276b16c
|
|
/* 0276B16C */ cpu->r[29] = cpu->r[31] + 0x0000058Cu;
|
|
/* 0276B16C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276B170 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B170 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0276B170 */ if (_t35) goto L_0276B174; else goto L_0276B184;
|
|
L_0276B174: ; // 0x276b174
|
|
/* 0276B174 */ cpu->r[3] = 0x00000060u;
|
|
/* 0276B178 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B17C */ cpu->r[29] = cpu->r[3];
|
|
/* 0276B17C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276B180 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B180 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0276B180 */ if (_t37) goto L_0276B1C8; else goto L_0276B184;
|
|
L_0276B184: ; // 0x276b184
|
|
/* 0276B184 */ cpu->r[5] = 0x10100000u;
|
|
/* 0276B188 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276B18C */ cpu->r[6] = 0x10100000u;
|
|
/* 0276B190 */ cpu->r[5] = cpu->r[5] + 0x00000468u;
|
|
/* 0276B194 */ cpu->r[8] = 0x00000000u;
|
|
/* 0276B198 */ cpu->r[6] = cpu->r[6] + 0x0000044Cu;
|
|
/* 0276B19C */ cpu->r[7] = cpu->r[5];
|
|
/* 0276B1A0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276B1A4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276B1A8 */ _t38 = cpu->r[29] + 0x00000000u;
|
|
/* 0276B1A8 */ rbrew_write32(cpu->mem, _t38, cpu->r[30]);
|
|
/* 0276B1AC */ cpu->r[12] = 0x10100000u;
|
|
/* 0276B1B0 */ _t39 = cpu->r[12] + 0x0000042Cu;
|
|
/* 0276B1B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0276B1B4 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276B1B8 */ _t40 = cpu->r[29] + 0x00000058u;
|
|
/* 0276B1B8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]);
|
|
/* 0276B1BC */ _t41 = cpu->r[12] + 0x00000430u;
|
|
/* 0276B1BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0276B1C0 */ _t42 = cpu->r[29] + 0x00000054u;
|
|
/* 0276B1C0 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
/* 0276B1C4 */ _t43 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0276B1C4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
L_0276B1C8: ; // 0x276b1c8
|
|
/* 0276B1C8 */ cpu->r[29] = cpu->r[31] + 0x000005ECu;
|
|
/* 0276B1C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276B1CC */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B1CC */ _t45 = _t44 & 0x00000001u;
|
|
/* 0276B1CC */ if (_t45) goto L_0276B1D0; else goto L_0276B1E0;
|
|
L_0276B1D0: ; // 0x276b1d0
|
|
/* 0276B1D0 */ cpu->r[3] = 0x00000060u;
|
|
/* 0276B1D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B1D8 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276B1D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276B1DC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B1DC */ _t47 = _t46 & 0x00000001u;
|
|
/* 0276B1DC */ if (_t47) goto L_0276B224; else goto L_0276B1E0;
|
|
L_0276B1E0: ; // 0x276b1e0
|
|
/* 0276B1E0 */ cpu->r[5] = 0x10100000u;
|
|
/* 0276B1E4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276B1E8 */ cpu->r[6] = 0x10100000u;
|
|
/* 0276B1EC */ cpu->r[5] = cpu->r[5] + 0x00000474u;
|
|
/* 0276B1F0 */ cpu->r[8] = 0x00000000u;
|
|
/* 0276B1F4 */ cpu->r[6] = cpu->r[6] + 0x00000488u;
|
|
/* 0276B1F8 */ cpu->r[7] = cpu->r[5];
|
|
/* 0276B1FC */ cpu->r[3] = cpu->r[29];
|
|
/* 0276B200 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276B204 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276B208 */ _t48 = cpu->r[11] + 0x00000434u;
|
|
/* 0276B208 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0276B20C */ _t49 = cpu->r[29] + 0x00000000u;
|
|
/* 0276B20C */ rbrew_write32(cpu->mem, _t49, cpu->r[30]);
|
|
/* 0276B210 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276B214 */ _t50 = cpu->r[29] + 0x00000054u;
|
|
/* 0276B214 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
/* 0276B218 */ _t51 = cpu->r[12] + 0x00000438u;
|
|
/* 0276B218 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0276B21C */ _t52 = cpu->r[29] + 0x00000058u;
|
|
/* 0276B21C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[31]);
|
|
/* 0276B220 */ _t53 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0276B220 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
L_0276B224: ; // 0x276b224
|
|
/* 0276B224 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B224 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0276B228 */ _t55 = cpu->r[1] + 0x00000030u;
|
|
/* 0276B228 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0276B22C */ _t56 = cpu->r[1] + 0x00000020u;
|
|
/* 0276B22C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0276B230 */ _t57 = cpu->r[1] + 0x00000028u;
|
|
/* 0276B230 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 0276B234 */ _t58 = cpu->r[1] + 0x00000018u;
|
|
/* 0276B234 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 0276B238 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B23C */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B23C */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0276B240 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B240 */ cpu->r[30] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0276B244 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276B244 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0276B244 */ if (_t62) goto L_0276B248; // else: addr-0 trap, fall-through
|
|
L_0276B248: ; // 0x276b248
|
|
/* 0276B248 */ _t63 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0276B248 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0276B24C */ cpu->lr = cpu->r[0];
|
|
/* 0276B250 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0276B254 */ return;
|
|
}
|
|
|
|
// fn_0276B25C @ 0x276b25c
|
|
void Gambit_fn_0276B25C(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_0276B25C: ; // 0x276b25c
|
|
/* 0276B25C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B25C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B25C */ cpu->r[1] = _t0;
|
|
/* 0276B260 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B260 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276B264 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B264 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276B268 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276B26C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B26C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276B270 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B270 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276B270 */ if (_t5) goto L_0276B274; else goto L_0276B284;
|
|
L_0276B274: ; // 0x276b274
|
|
/* 0276B274 */ cpu->r[3] = 0x000002F0u;
|
|
/* 0276B278 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B27C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B27C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276B280 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B280 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276B280 */ if (_t7) goto L_0276B2C4; else goto L_0276B284;
|
|
L_0276B284: ; // 0x276b284
|
|
/* 0276B284 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B288 */ Gambit_fn_0276D9B8(cpu);
|
|
/* 0276B28C */ cpu->r[0] = 0x10100000u;
|
|
/* 0276B290 */ cpu->r[3] = cpu->r[31] + 0x000002E0u;
|
|
/* 0276B290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B294 */ cpu->r[0] = cpu->r[0] + 0x0000067Cu;
|
|
/* 0276B298 */ cpu->r[30] = 0x00000000u;
|
|
/* 0276B29C */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0276B29C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0276B2A0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B2A0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276B2A0 */ if (_t10) goto L_0276B2A4; else goto L_0276B2B4;
|
|
L_0276B2A4: ; // 0x276b2a4
|
|
/* 0276B2A4 */ cpu->r[3] = 0x00000008u;
|
|
/* 0276B2A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B2AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B2B0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B2B0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276B2B0 */ if (_t12) goto L_0276B2BC; else goto L_0276B2B4;
|
|
L_0276B2B4: ; // 0x276b2b4
|
|
/* 0276B2B4 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 0276B2B4 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0276B2B8 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 0276B2B8 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
L_0276B2BC: ; // 0x276b2bc
|
|
/* 0276B2BC */ _t15 = cpu->r[31] + 0x000002E9u;
|
|
/* 0276B2BC */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[30]);
|
|
/* 0276B2C0 */ _t16 = cpu->r[31] + 0x000002E8u;
|
|
/* 0276B2C0 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[30]);
|
|
L_0276B2C4: ; // 0x276b2c4
|
|
/* 0276B2C4 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B2C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276B2C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B2CC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B2CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276B2D0 */ cpu->lr = cpu->r[0];
|
|
/* 0276B2D4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B2D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276B2D8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B2DC */ return;
|
|
}
|
|
|
|
// fn_0276B2E0 @ 0x276b2e0
|
|
void Gambit_fn_0276B2E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_0276B2E0: ; // 0x276b2e0
|
|
/* 0276B2E0 */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0276B2E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B2E0 */ cpu->r[1] = _t0;
|
|
/* 0276B2E4 */ /* nop */
|
|
/* 0276B2E8 */ cpu->r[0] = cpu->lr;
|
|
/* 0276B2EC */ cpu->r[27] = cpu->r[3];
|
|
/* 0276B2F0 */ _t1 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0276B2F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0276B2F4 */ Gambit_fn_0276E258(cpu);
|
|
/* 0276B2F8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0276B2FC */ _t2 = cpu->r[12] + 0x00001A9Cu;
|
|
/* 0276B2FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0276B300 */ cpu->r[3] = cpu->r[27];
|
|
/* 0276B304 */ _t3 = cpu->r[27] + 0x00000214u;
|
|
/* 0276B304 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0276B308 */ Gambit_fn_0276E504(cpu);
|
|
/* 0276B30C */ cpu->r[3] = cpu->r[27];
|
|
/* 0276B310 */ Gambit_fn_0276E524(cpu);
|
|
/* 0276B314 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276B318 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0276B31C */ _t4 = cpu->r[9] + 0x000004C4u;
|
|
/* 0276B31C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0276B320 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 0276B324 */ cpu->f[12] = cpu->f[1] * cpu->f[0];
|
|
/* 0276B328 */ /* nop */
|
|
/* 0276B32C */ _t5 = cpu->r[10] + 0x00000008u;
|
|
/* 0276B32C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0276B330 */ /* nop */
|
|
/* 0276B334 */ /* nop */
|
|
/* 0276B338 */ cpu->f[0] = cpu->f[13] * cpu->f[12];
|
|
/* 0276B33C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B33C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276B340 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B340 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276B344 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B344 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 0276B348 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B348 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276B34C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0276B350 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B350 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 0276B354 */ cpu->r[5] = cpu->r[27] + 0x00000074u;
|
|
/* 0276B358 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0276B358 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0276B35C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0276B360 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276B360 */ rbrew_write32(cpu->mem, _t12, cpu->r[8]);
|
|
/* 0276B364 */ Gambit_fn_023D860C(cpu);
|
|
/* 0276B368 */ _t13 = cpu->r[27] + 0x00000008u;
|
|
/* 0276B368 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B36C */ _t14 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0276B36C */ cpu->r[10] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0276B370 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0276B374 */ cpu->r[10] = cpu->r[10] | 0x00000001u;
|
|
/* 0276B378 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 0276B37C */ _t15 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0276B37C */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[10]);
|
|
/* 0276B380 */ Gambit_fn_02C69510(cpu);
|
|
/* 0276B384 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B388 */ Gambit_fn_02980378(cpu);
|
|
/* 0276B38C */ cpu->r[3] = 0x101D0000u;
|
|
/* 0276B390 */ _t16 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0276B390 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276B394 */ Gambit_fn_02826F20(cpu);
|
|
/* 0276B398 */ _t17 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276B398 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276B39C */ _t18 = cpu->r[12] + 0x00000034u;
|
|
/* 0276B39C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276B3A0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276B3A4 */ cpu->r[4] = 0x0000002Cu;
|
|
/* 0276B3A8 */ cpu->r[5] = 0x00000004u;
|
|
/* 0276B3AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276B3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B3B4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B3B4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276B3B4 */ if (_t20) goto L_0276B3C4; else goto L_0276B3B8;
|
|
L_0276B3B8: ; // 0x276b3b8
|
|
/* 0276B3B8 */ _t21 = cpu->r[27] + 0x000002E4u;
|
|
/* 0276B3B8 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 0276B3BC */ cpu->r[0] = 0x0000000Bu;
|
|
/* 0276B3C0 */ _t22 = cpu->r[27] + 0x000002E0u;
|
|
/* 0276B3C0 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
L_0276B3C4: ; // 0x276b3c4
|
|
/* 0276B3C4 */ _t23 = cpu->r[27] + 0x000002E0u;
|
|
/* 0276B3C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0276B3C8 */ cpu->r[28] = 0x00000000u;
|
|
/* 0276B3CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[0]);
|
|
/* 0276B3D0 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276B3D0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0276B3D0 */ if (_t25) goto L_0276B3D4; else goto L_0276B47C;
|
|
L_0276B3D4: ; // 0x276b3d4
|
|
/* 0276B3D4 */ cpu->r[25] = 0x10110000u;
|
|
/* 0276B3D8 */ cpu->r[26] = 0x101F0000u;
|
|
/* 0276B3DC */ cpu->r[23] = 0x00000000u;
|
|
/* 0276B3E0 */ cpu->r[25] = cpu->r[25] + 0x00000514u;
|
|
/* 0276B3E4 */ cpu->r[26] = cpu->r[26] + 0x00001AA4u;
|
|
/* 0276B3E8 */ cpu->r[24] = cpu->r[23];
|
|
L_0276B3EC: ; // 0x276b3ec
|
|
/* 0276B3EC */ _t26 = cpu->r[27] + 0x000002E4u;
|
|
/* 0276B3EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0276B3F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 0276B3F4 */ _t27 = cpu->r[27] + 0x00000008u;
|
|
/* 0276B3F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0276B3F8 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276B3F8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0276B3F8 */ if (_t29) goto L_0276B3FC; else goto L_0276B400;
|
|
L_0276B3FC: ; // 0x276b3fc
|
|
/* 0276B3FC */ cpu->r[31] = cpu->r[31] + cpu->r[24];
|
|
L_0276B400: ; // 0x276b400
|
|
/* 0276B400 */ cpu->r[3] = 0x00000088u;
|
|
/* 0276B404 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B408 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276B408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276B40C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B40C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0276B40C */ if (_t31) goto L_0276B420; else goto L_0276B410;
|
|
L_0276B410: ; // 0x276b410
|
|
/* 0276B410 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276B414 */ cpu->r[4] = cpu->r[30];
|
|
/* 0276B418 */ Gambit_fn_027F1AC0(cpu);
|
|
/* 0276B41C */ _t32 = cpu->r[29] + 0x00000004u;
|
|
/* 0276B41C */ rbrew_write32(cpu->mem, _t32, cpu->r[25]);
|
|
L_0276B420: ; // 0x276b420
|
|
/* 0276B420 */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 0276B420 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 0276B424 */ _t34 = cpu->r[27] + 0x000002E0u;
|
|
/* 0276B424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0276B428 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 0276B42C */ _t35 = cpu->r[27] + 0x000002E4u;
|
|
/* 0276B42C */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0276B430 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276B430 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0276B430 */ if (_t37) goto L_0276B434; else goto L_0276B438;
|
|
L_0276B434: ; // 0x276b434
|
|
/* 0276B434 */ cpu->r[10] = cpu->r[10] + cpu->r[24];
|
|
L_0276B438: ; // 0x276b438
|
|
/* 0276B438 */ _t38 = cpu->r[10] + 0x00000000u;
|
|
/* 0276B438 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0276B43C */ cpu->r[4] = cpu->r[26] + cpu->r[23];
|
|
/* 0276B440 */ cpu->r[5] = 0x00000003u;
|
|
/* 0276B444 */ Gambit_fn_027F1F94(cpu);
|
|
/* 0276B448 */ _t39 = cpu->r[27] + 0x000002E0u;
|
|
/* 0276B448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0276B44C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 0276B450 */ _t40 = cpu->r[27] + 0x000002E4u;
|
|
/* 0276B450 */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0276B454 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276B454 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0276B454 */ if (_t42) goto L_0276B458; else goto L_0276B45C;
|
|
L_0276B458: ; // 0x276b458
|
|
/* 0276B458 */ cpu->r[11] = cpu->r[11] + cpu->r[24];
|
|
L_0276B45C: ; // 0x276b45c
|
|
/* 0276B45C */ _t43 = cpu->r[11] + 0x00000000u;
|
|
/* 0276B45C */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0276B460 */ Gambit_fn_027F2520(cpu);
|
|
/* 0276B464 */ _t44 = cpu->r[27] + 0x000002E0u;
|
|
/* 0276B464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0276B468 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 0276B46C */ cpu->r[24] = cpu->r[24] + 0x00000004u;
|
|
/* 0276B470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[0]);
|
|
/* 0276B474 */ cpu->r[23] = cpu->r[23] + 0x00000018u;
|
|
/* 0276B478 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276B478 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0276B478 */ if (_t46) goto L_0276B3EC; else goto L_0276B47C;
|
|
L_0276B47C: ; // 0x276b47c
|
|
/* 0276B47C */ /* nop */
|
|
/* 0276B480 */ _t47 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0276B480 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0276B484 */ cpu->lr = cpu->r[0];
|
|
/* 0276B488 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0276B48C */ return;
|
|
}
|
|
|
|
// fn_0276B490 @ 0x276b490
|
|
void Gambit_fn_0276B490(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0276B490: ; // 0x276b490
|
|
/* 0276B490 */ cpu->r[0] = cpu->lr;
|
|
/* 0276B494 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B494 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B494 */ cpu->r[1] = _t0;
|
|
/* 0276B498 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B498 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276B49C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B49C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276B4A0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276B4A4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B4A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276B4A8 */ _t4 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276B4AC */ _t5 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B4AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276B4B0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B4B4 */ cpu->r[12] = cpu->r[31] + cpu->r[10];
|
|
/* 0276B4B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0276B4BC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B4BC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276B4BC */ if (_t7) goto L_0276B4E4; else goto L_0276B4C0;
|
|
L_0276B4C0: ; // 0x276b4c0
|
|
/* 0276B4C0 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0276B4C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276B4C4 */ Gambit_fn_027F2744(cpu);
|
|
/* 0276B4C8 */ _t9 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B4C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276B4CC */ _t10 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B4CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276B4D0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B4D4 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 0276B4D8 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0276B4DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0276B4E0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B4E0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276B4E0 */ if (_t12) goto L_0276B4E4; else goto L_0276B4C0;
|
|
L_0276B4E4: ; // 0x276b4e4
|
|
/* 0276B4E4 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B4E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B4E8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B4E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276B4EC */ cpu->lr = cpu->r[0];
|
|
/* 0276B4F0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B4F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276B4F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B4F8 */ return;
|
|
}
|
|
|
|
// fn_0276B494 @ 0x276b494
|
|
void Gambit_fn_0276B494(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0276B494: ; // 0x276b494
|
|
/* 0276B494 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B494 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B494 */ cpu->r[1] = _t0;
|
|
/* 0276B498 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B498 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276B49C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B49C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276B4A0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276B4A4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B4A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276B4A8 */ _t4 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276B4AC */ _t5 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B4AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276B4B0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B4B4 */ cpu->r[12] = cpu->r[31] + cpu->r[10];
|
|
/* 0276B4B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0276B4BC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B4BC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276B4BC */ if (_t7) goto L_0276B4E4; else goto L_0276B4C0;
|
|
L_0276B4C0: ; // 0x276b4c0
|
|
/* 0276B4C0 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0276B4C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276B4C4 */ Gambit_fn_027F2744(cpu);
|
|
/* 0276B4C8 */ _t9 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B4C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276B4CC */ _t10 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B4CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276B4D0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B4D4 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 0276B4D8 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0276B4DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0276B4E0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B4E0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276B4E0 */ if (_t12) goto L_0276B4E4; else goto L_0276B4C0;
|
|
L_0276B4E4: ; // 0x276b4e4
|
|
/* 0276B4E4 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B4E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B4E8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B4E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276B4EC */ cpu->lr = cpu->r[0];
|
|
/* 0276B4F0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B4F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276B4F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B4F8 */ return;
|
|
}
|
|
|
|
// fn_0276B4FC @ 0x276b4fc
|
|
void Gambit_fn_0276B4FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0276B4FC: ; // 0x276b4fc
|
|
/* 0276B4FC */ cpu->r[0] = cpu->lr;
|
|
/* 0276B500 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B500 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B500 */ cpu->r[1] = _t0;
|
|
/* 0276B504 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B504 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276B508 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B50C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B50C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276B510 */ Gambit_fn_0276E454(cpu);
|
|
/* 0276B514 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B518 */ Gambit_fn_0276B490(cpu);
|
|
/* 0276B51C */ cpu->r[0] = 0x00000000u;
|
|
/* 0276B520 */ _t3 = cpu->r[31] + 0x000002E9u;
|
|
/* 0276B520 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0276B524 */ _t4 = cpu->r[31] + 0x000002E8u;
|
|
/* 0276B524 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0276B528 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276B52C */ cpu->lr = cpu->r[0];
|
|
/* 0276B530 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B530 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276B534 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B538 */ return;
|
|
}
|
|
|
|
// fn_0276B500 @ 0x276b500
|
|
void Gambit_fn_0276B500(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0276B500: ; // 0x276b500
|
|
/* 0276B500 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B500 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B500 */ cpu->r[1] = _t0;
|
|
/* 0276B504 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B504 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276B508 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B50C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B50C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276B510 */ Gambit_fn_0276E454(cpu);
|
|
/* 0276B514 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B518 */ Gambit_fn_0276B490(cpu);
|
|
/* 0276B51C */ cpu->r[0] = 0x00000000u;
|
|
/* 0276B520 */ _t3 = cpu->r[31] + 0x000002E9u;
|
|
/* 0276B520 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0276B524 */ _t4 = cpu->r[31] + 0x000002E8u;
|
|
/* 0276B524 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0276B528 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276B52C */ cpu->lr = cpu->r[0];
|
|
/* 0276B530 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B530 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276B534 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B538 */ return;
|
|
}
|
|
|
|
// fn_0276B53C @ 0x276b53c
|
|
void Gambit_fn_0276B53C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_0276B53C: ; // 0x276b53c
|
|
/* 0276B53C */ cpu->r[0] = cpu->lr;
|
|
/* 0276B540 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B540 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B540 */ cpu->r[1] = _t0;
|
|
/* 0276B544 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B544 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276B548 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276B54C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B54C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276B550 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276B554 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B554 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276B558 */ _t4 = cpu->r[10] + 0xFFFFDA34u;
|
|
/* 0276B558 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276B558 */ cpu->r[10] = _t4;
|
|
/* 0276B55C */ cpu->r[4] = 0x101D0000u;
|
|
/* 0276B560 */ _t5 = cpu->r[30] + 0x000002DCu;
|
|
/* 0276B560 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276B564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276B568 */ cpu->r[4] = cpu->r[4] + 0xFFFFDDE4u;
|
|
/* 0276B56C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B56C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276B56C */ if (_t7) goto L_0276B570; else goto L_0276B584;
|
|
L_0276B570: ; // 0x276b570
|
|
/* 0276B570 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276B574 */ cpu->r[11] = 0x00000001u;
|
|
/* 0276B578 */ cpu->r[0] = cpu->r[0] + 0x0000025Cu;
|
|
/* 0276B57C */ _t8 = cpu->r[10] + 0x00000000u;
|
|
/* 0276B57C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0276B580 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 0276B580 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_0276B584: ; // 0x276b584
|
|
/* 0276B584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276B588 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B588 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276B588 */ if (_t11) goto L_0276B5A8; else goto L_0276B58C;
|
|
L_0276B58C: ; // 0x276b58c
|
|
/* 0276B58C */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 0276B58C */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276B590 */ _t13 = cpu->r[6] + 0x0000006Cu;
|
|
/* 0276B590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B594 */ cpu->ctr = cpu->r[0];
|
|
/* 0276B598 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B59C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276B5A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B5A4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B5A4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0276B5A4 */ if (_t15) goto L_0276B5A8; else goto L_0276B5AC;
|
|
L_0276B5A8: ; // 0x276b5a8
|
|
/* 0276B5A8 */ cpu->r[31] = 0x00000000u;
|
|
L_0276B5AC: ; // 0x276b5ac
|
|
/* 0276B5AC */ _t16 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B5AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276B5B0 */ cpu->r[8] = 0x10100000u;
|
|
/* 0276B5B4 */ _t17 = cpu->r[8] + 0x00000420u;
|
|
/* 0276B5B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0276B5B8 */ cpu->r[7] = 0x10100000u;
|
|
/* 0276B5BC */ _t18 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B5BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276B5C0 */ _t19 = cpu->r[7] + 0x0000041Cu;
|
|
/* 0276B5C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0276B5C4 */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B5C8 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276B5CC */ cpu->r[12] = cpu->r[8] + cpu->r[7];
|
|
/* 0276B5D0 */ cpu->r[10] = 0x00000003u;
|
|
/* 0276B5D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0276B5D8 */ _t20 = cpu->r[11] + 0x000004C8u;
|
|
/* 0276B5D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0276B5DC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B5DC */ _t22 = _t21 & 0x00000001u;
|
|
/* 0276B5DC */ if (_t22) goto L_0276B630; else goto L_0276B5E0;
|
|
L_0276B5E0: ; // 0x276b5e0
|
|
/* 0276B5E0 */ _t23 = cpu->r[31] + 0x000005E0u;
|
|
/* 0276B5E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0276B5E4 */ _t24 = cpu->r[31] + 0x00000520u;
|
|
/* 0276B5E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0276B5E8 */ _t25 = cpu->r[31] + 0x00000640u;
|
|
/* 0276B5E8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0276B5EC */ _t26 = cpu->r[8] + 0x00000000u;
|
|
/* 0276B5EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0276B5F0 */ _t27 = cpu->r[31] + 0x00000580u;
|
|
/* 0276B5F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0276B5F4 */ _t28 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0276B5F4 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 0276B5F8 */ _t29 = cpu->r[9] + 0x00000018u;
|
|
/* 0276B5F8 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[9]);
|
|
/* 0276B5FC */ _t30 = cpu->r[9] + 0x00000020u;
|
|
/* 0276B5FC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 0276B600 */ _t31 = cpu->r[9] + 0x00000010u;
|
|
/* 0276B600 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[10]);
|
|
/* 0276B604 */ _t32 = cpu->r[9] + 0x00000024u;
|
|
/* 0276B604 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[8]);
|
|
/* 0276B608 */ _t33 = cpu->r[9] + 0x0000001Cu;
|
|
/* 0276B608 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 0276B60C */ _t34 = cpu->r[9] + 0x00000014u;
|
|
/* 0276B60C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 0276B610 */ _t35 = cpu->r[9] + 0x00000028u;
|
|
/* 0276B610 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 0276B614 */ _t36 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B614 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0276B618 */ _t37 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B618 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0276B61C */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B620 */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 0276B624 */ cpu->r[12] = cpu->r[12] + cpu->r[7];
|
|
/* 0276B628 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0276B62C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B62C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0276B62C */ if (_t39) goto L_0276B630; else goto L_0276B5E0;
|
|
L_0276B630: ; // 0x276b630
|
|
/* 0276B630 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B630 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0276B634 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B634 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0276B638 */ cpu->lr = cpu->r[0];
|
|
/* 0276B63C */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B63C */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0276B640 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B644 */ return;
|
|
}
|
|
|
|
// fn_0276B540 @ 0x276b540
|
|
void Gambit_fn_0276B540(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_0276B540: ; // 0x276b540
|
|
/* 0276B540 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B540 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B540 */ cpu->r[1] = _t0;
|
|
/* 0276B544 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B544 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276B548 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276B54C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B54C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276B550 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276B554 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B554 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276B558 */ _t4 = cpu->r[10] + 0xFFFFDA34u;
|
|
/* 0276B558 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276B558 */ cpu->r[10] = _t4;
|
|
/* 0276B55C */ cpu->r[4] = 0x101D0000u;
|
|
/* 0276B560 */ _t5 = cpu->r[30] + 0x000002DCu;
|
|
/* 0276B560 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276B564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276B568 */ cpu->r[4] = cpu->r[4] + 0xFFFFDDE4u;
|
|
/* 0276B56C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B56C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276B56C */ if (_t7) goto L_0276B570; else goto L_0276B584;
|
|
L_0276B570: ; // 0x276b570
|
|
/* 0276B570 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276B574 */ cpu->r[11] = 0x00000001u;
|
|
/* 0276B578 */ cpu->r[0] = cpu->r[0] + 0x0000025Cu;
|
|
/* 0276B57C */ _t8 = cpu->r[10] + 0x00000000u;
|
|
/* 0276B57C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0276B580 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 0276B580 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_0276B584: ; // 0x276b584
|
|
/* 0276B584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276B588 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B588 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276B588 */ if (_t11) goto L_0276B5A8; else goto L_0276B58C;
|
|
L_0276B58C: ; // 0x276b58c
|
|
/* 0276B58C */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 0276B58C */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276B590 */ _t13 = cpu->r[6] + 0x0000006Cu;
|
|
/* 0276B590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B594 */ cpu->ctr = cpu->r[0];
|
|
/* 0276B598 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B59C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276B5A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B5A4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B5A4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0276B5A4 */ if (_t15) goto L_0276B5A8; else goto L_0276B5AC;
|
|
L_0276B5A8: ; // 0x276b5a8
|
|
/* 0276B5A8 */ cpu->r[31] = 0x00000000u;
|
|
L_0276B5AC: ; // 0x276b5ac
|
|
/* 0276B5AC */ _t16 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B5AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276B5B0 */ cpu->r[8] = 0x10100000u;
|
|
/* 0276B5B4 */ _t17 = cpu->r[8] + 0x00000420u;
|
|
/* 0276B5B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0276B5B8 */ cpu->r[7] = 0x10100000u;
|
|
/* 0276B5BC */ _t18 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B5BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276B5C0 */ _t19 = cpu->r[7] + 0x0000041Cu;
|
|
/* 0276B5C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0276B5C4 */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B5C8 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276B5CC */ cpu->r[12] = cpu->r[8] + cpu->r[7];
|
|
/* 0276B5D0 */ cpu->r[10] = 0x00000003u;
|
|
/* 0276B5D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0276B5D8 */ _t20 = cpu->r[11] + 0x000004C8u;
|
|
/* 0276B5D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0276B5DC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B5DC */ _t22 = _t21 & 0x00000001u;
|
|
/* 0276B5DC */ if (_t22) goto L_0276B630; else goto L_0276B5E0;
|
|
L_0276B5E0: ; // 0x276b5e0
|
|
/* 0276B5E0 */ _t23 = cpu->r[31] + 0x000005E0u;
|
|
/* 0276B5E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0276B5E4 */ _t24 = cpu->r[31] + 0x00000520u;
|
|
/* 0276B5E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0276B5E8 */ _t25 = cpu->r[31] + 0x00000640u;
|
|
/* 0276B5E8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0276B5EC */ _t26 = cpu->r[8] + 0x00000000u;
|
|
/* 0276B5EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0276B5F0 */ _t27 = cpu->r[31] + 0x00000580u;
|
|
/* 0276B5F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0276B5F4 */ _t28 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0276B5F4 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 0276B5F8 */ _t29 = cpu->r[9] + 0x00000018u;
|
|
/* 0276B5F8 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[9]);
|
|
/* 0276B5FC */ _t30 = cpu->r[9] + 0x00000020u;
|
|
/* 0276B5FC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 0276B600 */ _t31 = cpu->r[9] + 0x00000010u;
|
|
/* 0276B600 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[10]);
|
|
/* 0276B604 */ _t32 = cpu->r[9] + 0x00000024u;
|
|
/* 0276B604 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[8]);
|
|
/* 0276B608 */ _t33 = cpu->r[9] + 0x0000001Cu;
|
|
/* 0276B608 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 0276B60C */ _t34 = cpu->r[9] + 0x00000014u;
|
|
/* 0276B60C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 0276B610 */ _t35 = cpu->r[9] + 0x00000028u;
|
|
/* 0276B610 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 0276B614 */ _t36 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B614 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0276B618 */ _t37 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B618 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0276B61C */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B620 */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 0276B624 */ cpu->r[12] = cpu->r[12] + cpu->r[7];
|
|
/* 0276B628 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0276B62C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B62C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0276B62C */ if (_t39) goto L_0276B630; else goto L_0276B5E0;
|
|
L_0276B630: ; // 0x276b630
|
|
/* 0276B630 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B630 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0276B634 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B634 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0276B638 */ cpu->lr = cpu->r[0];
|
|
/* 0276B63C */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B63C */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0276B640 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B644 */ return;
|
|
}
|
|
|
|
// fn_0276B648 @ 0x276b648
|
|
void Gambit_fn_0276B648(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0276B648: ; // 0x276b648
|
|
/* 0276B648 */ cpu->r[0] = cpu->lr;
|
|
/* 0276B64C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B64C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B64C */ cpu->r[1] = _t0;
|
|
/* 0276B650 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B650 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276B654 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B658 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B658 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276B65C */ Gambit_fn_027705F0(cpu);
|
|
/* 0276B660 */ _t3 = cpu->r[31] + 0x00000204u;
|
|
/* 0276B660 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276B664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276B668 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B668 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276B668 */ if (_t5) goto L_0276B680; else goto L_0276B66C;
|
|
L_0276B66C: ; // 0x276b66c
|
|
/* 0276B66C */ _t6 = cpu->r[10] + 0x0000008Cu;
|
|
/* 0276B66C */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0276B670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276B674 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B674 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276B674 */ if (_t8) goto L_0276B678; else goto L_0276B680;
|
|
L_0276B678: ; // 0x276b678
|
|
/* 0276B678 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B67C */ Gambit_fn_0276B53C(cpu);
|
|
L_0276B680: ; // 0x276b680
|
|
/* 0276B680 */ _t9 = cpu->r[31] + 0x000002E9u;
|
|
/* 0276B680 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0276B684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276B688 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B688 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276B688 */ if (_t11) goto L_0276B68C; else goto L_0276B6AC;
|
|
L_0276B68C: ; // 0x276b68c
|
|
/* 0276B68C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276B690 */ _t12 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276B690 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276B694 */ _t13 = cpu->r[12] + 0x00000250u;
|
|
/* 0276B694 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B698 */ Gambit_fn_0209D03C(cpu);
|
|
/* 0276B69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B6A0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B6A0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0276B6A0 */ if (_t15) goto L_0276B6AC; else goto L_0276B6A4;
|
|
L_0276B6A4: ; // 0x276b6a4
|
|
/* 0276B6A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276B6A8 */ _t16 = cpu->r[31] + 0x000002E9u;
|
|
/* 0276B6A8 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[0]);
|
|
L_0276B6AC: ; // 0x276b6ac
|
|
/* 0276B6AC */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B6AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276B6B0 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B6B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276B6B4 */ cpu->lr = cpu->r[0];
|
|
/* 0276B6B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B6BC */ return;
|
|
}
|
|
|
|
// fn_0276B64C @ 0x276b64c
|
|
void Gambit_fn_0276B64C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0276B64C: ; // 0x276b64c
|
|
/* 0276B64C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B64C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B64C */ cpu->r[1] = _t0;
|
|
/* 0276B650 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B650 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276B654 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B658 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B658 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276B65C */ Gambit_fn_027705F0(cpu);
|
|
/* 0276B660 */ _t3 = cpu->r[31] + 0x00000204u;
|
|
/* 0276B660 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276B664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276B668 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B668 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276B668 */ if (_t5) goto L_0276B680; else goto L_0276B66C;
|
|
L_0276B66C: ; // 0x276b66c
|
|
/* 0276B66C */ _t6 = cpu->r[10] + 0x0000008Cu;
|
|
/* 0276B66C */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0276B670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276B674 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B674 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276B674 */ if (_t8) goto L_0276B678; else goto L_0276B680;
|
|
L_0276B678: ; // 0x276b678
|
|
/* 0276B678 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B67C */ Gambit_fn_0276B53C(cpu);
|
|
L_0276B680: ; // 0x276b680
|
|
/* 0276B680 */ _t9 = cpu->r[31] + 0x000002E9u;
|
|
/* 0276B680 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0276B684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276B688 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B688 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276B688 */ if (_t11) goto L_0276B68C; else goto L_0276B6AC;
|
|
L_0276B68C: ; // 0x276b68c
|
|
/* 0276B68C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276B690 */ _t12 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276B690 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276B694 */ _t13 = cpu->r[12] + 0x00000250u;
|
|
/* 0276B694 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B698 */ Gambit_fn_0209D03C(cpu);
|
|
/* 0276B69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B6A0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B6A0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0276B6A0 */ if (_t15) goto L_0276B6AC; else goto L_0276B6A4;
|
|
L_0276B6A4: ; // 0x276b6a4
|
|
/* 0276B6A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276B6A8 */ _t16 = cpu->r[31] + 0x000002E9u;
|
|
/* 0276B6A8 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[0]);
|
|
L_0276B6AC: ; // 0x276b6ac
|
|
/* 0276B6AC */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B6AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276B6B0 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B6B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276B6B4 */ cpu->lr = cpu->r[0];
|
|
/* 0276B6B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B6BC */ return;
|
|
}
|
|
|
|
// fn_0276B6C0 @ 0x276b6c0
|
|
void Gambit_fn_0276B6C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0276B6C0: ; // 0x276b6c0
|
|
/* 0276B6C0 */ cpu->r[0] = cpu->lr;
|
|
/* 0276B6C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B6C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B6C4 */ cpu->r[1] = _t0;
|
|
/* 0276B6C8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B6C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276B6CC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B6CC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276B6D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276B6D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B6D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276B6D8 */ _t4 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B6D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276B6DC */ _t5 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B6DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276B6E0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B6E4 */ cpu->r[12] = cpu->r[31] + cpu->r[11];
|
|
/* 0276B6E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0276B6EC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B6EC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276B6EC */ if (_t7) goto L_0276B714; else goto L_0276B6F0;
|
|
L_0276B6F0: ; // 0x276b6f0
|
|
/* 0276B6F0 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0276B6F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276B6F4 */ Gambit_fn_027F4668(cpu);
|
|
/* 0276B6F8 */ _t9 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B6F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276B6FC */ _t10 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B6FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276B700 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B704 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 0276B708 */ cpu->r[12] = cpu->r[10] + cpu->r[11];
|
|
/* 0276B70C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0276B710 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B710 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276B710 */ if (_t12) goto L_0276B714; else goto L_0276B6F0;
|
|
L_0276B714: ; // 0x276b714
|
|
/* 0276B714 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B718 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B718 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276B71C */ cpu->lr = cpu->r[0];
|
|
/* 0276B720 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B720 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276B724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B728 */ return;
|
|
}
|
|
|
|
// fn_0276B6C4 @ 0x276b6c4
|
|
void Gambit_fn_0276B6C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0276B6C4: ; // 0x276b6c4
|
|
/* 0276B6C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B6C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B6C4 */ cpu->r[1] = _t0;
|
|
/* 0276B6C8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B6C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276B6CC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B6CC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276B6D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276B6D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B6D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276B6D8 */ _t4 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B6D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276B6DC */ _t5 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B6DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276B6E0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B6E4 */ cpu->r[12] = cpu->r[31] + cpu->r[11];
|
|
/* 0276B6E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0276B6EC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B6EC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276B6EC */ if (_t7) goto L_0276B714; else goto L_0276B6F0;
|
|
L_0276B6F0: ; // 0x276b6f0
|
|
/* 0276B6F0 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0276B6F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276B6F4 */ Gambit_fn_027F4668(cpu);
|
|
/* 0276B6F8 */ _t9 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B6F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276B6FC */ _t10 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B6FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276B700 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B704 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 0276B708 */ cpu->r[12] = cpu->r[10] + cpu->r[11];
|
|
/* 0276B70C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0276B710 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B710 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276B710 */ if (_t12) goto L_0276B714; else goto L_0276B6F0;
|
|
L_0276B714: ; // 0x276b714
|
|
/* 0276B714 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B718 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B718 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276B71C */ cpu->lr = cpu->r[0];
|
|
/* 0276B720 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B720 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276B724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B728 */ return;
|
|
}
|
|
|
|
// fn_0276B72C @ 0x276b72c
|
|
void Gambit_fn_0276B72C(CPUState* cpu) {
|
|
uint32_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_0276B72C: ; // 0x276b72c
|
|
/* 0276B72C */ cpu->r[0] = cpu->lr;
|
|
/* 0276B730 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276B730 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B730 */ cpu->r[1] = _t0;
|
|
/* 0276B734 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B734 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276B738 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B738 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0276B73C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B73C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0276B740 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276B744 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276B744 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276B748 */ _t5 = cpu->r[11] + 0xFFFF8C60u;
|
|
/* 0276B748 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0276B74C */ cpu->r[31] = cpu->r[4];
|
|
/* 0276B750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276B754 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276B758 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B758 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276B758 */ if (_t7) goto L_0276B7A8; else goto L_0276B75C;
|
|
L_0276B75C: ; // 0x276b75c
|
|
/* 0276B75C */ _t8 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B75C */ cpu->r[29] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276B760 */ _t9 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276B764 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B768 */ cpu->r[0] = cpu->r[29] + cpu->r[9];
|
|
/* 0276B76C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0276B770 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B770 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276B770 */ if (_t11) goto L_0276B7A8; else goto L_0276B774;
|
|
L_0276B774: ; // 0x276b774
|
|
/* 0276B774 */ _t12 = cpu->r[29] + 0x00000000u;
|
|
/* 0276B774 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276B778 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 0276B778 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B77C */ _t14 = cpu->r[7] + 0x00000014u;
|
|
/* 0276B77C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276B780 */ cpu->ctr = cpu->r[0];
|
|
/* 0276B784 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276B788 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276B78C */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 0276B790 */ _t15 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276B794 */ _t16 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B794 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276B798 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B79C */ cpu->r[0] = cpu->r[10] + cpu->r[9];
|
|
/* 0276B7A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0276B7A4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B7A4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276B7A4 */ if (_t18) goto L_0276B7A8; else goto L_0276B774;
|
|
L_0276B7A8: ; // 0x276b7a8
|
|
/* 0276B7A8 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B7A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276B7AC */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276B7AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0276B7B0 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B7B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276B7B4 */ cpu->lr = cpu->r[0];
|
|
/* 0276B7B8 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B7B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276B7BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276B7C0 */ return;
|
|
}
|
|
|
|
// fn_0276B730 @ 0x276b730
|
|
void Gambit_fn_0276B730(CPUState* cpu) {
|
|
uint32_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_0276B730: ; // 0x276b730
|
|
/* 0276B730 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276B730 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B730 */ cpu->r[1] = _t0;
|
|
/* 0276B734 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B734 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276B738 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B738 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0276B73C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B73C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0276B740 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276B744 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276B744 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276B748 */ _t5 = cpu->r[11] + 0xFFFF8C60u;
|
|
/* 0276B748 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0276B74C */ cpu->r[31] = cpu->r[4];
|
|
/* 0276B750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276B754 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276B758 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B758 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276B758 */ if (_t7) goto L_0276B7A8; else goto L_0276B75C;
|
|
L_0276B75C: ; // 0x276b75c
|
|
/* 0276B75C */ _t8 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B75C */ cpu->r[29] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276B760 */ _t9 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276B764 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B768 */ cpu->r[0] = cpu->r[29] + cpu->r[9];
|
|
/* 0276B76C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0276B770 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B770 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276B770 */ if (_t11) goto L_0276B7A8; else goto L_0276B774;
|
|
L_0276B774: ; // 0x276b774
|
|
/* 0276B774 */ _t12 = cpu->r[29] + 0x00000000u;
|
|
/* 0276B774 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276B778 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 0276B778 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276B77C */ _t14 = cpu->r[7] + 0x00000014u;
|
|
/* 0276B77C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276B780 */ cpu->ctr = cpu->r[0];
|
|
/* 0276B784 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276B788 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276B78C */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 0276B790 */ _t15 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276B790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276B794 */ _t16 = cpu->r[30] + 0x000002E4u;
|
|
/* 0276B794 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276B798 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B79C */ cpu->r[0] = cpu->r[10] + cpu->r[9];
|
|
/* 0276B7A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0276B7A4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B7A4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276B7A4 */ if (_t18) goto L_0276B7A8; else goto L_0276B774;
|
|
L_0276B7A8: ; // 0x276b7a8
|
|
/* 0276B7A8 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B7A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276B7AC */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276B7AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0276B7B0 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B7B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276B7B4 */ cpu->lr = cpu->r[0];
|
|
/* 0276B7B8 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B7B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276B7BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276B7C0 */ return;
|
|
}
|
|
|
|
// fn_0276B7C4 @ 0x276b7c4
|
|
void Gambit_fn_0276B7C4(CPUState* 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_0276B7C4: ; // 0x276b7c4
|
|
/* 0276B7C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0276B7C8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0276B7C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B7C8 */ cpu->r[1] = _t0;
|
|
/* 0276B7CC */ cpu->r[11] = 0x10100000u;
|
|
/* 0276B7D0 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0276B7D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276B7D4 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276B7D8 */ cpu->r[11] = cpu->r[11] + 0x0000026Cu;
|
|
/* 0276B7DC */ cpu->r[12] = cpu->r[12] + 0x000004D0u;
|
|
/* 0276B7E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B7E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0276B7E4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B7E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0276B7E8 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276B7E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276B7EC */ cpu->r[0] = 0x10100000u;
|
|
/* 0276B7F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B7F4 */ cpu->r[0] = cpu->r[0] + 0x000004CCu;
|
|
/* 0276B7F8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B7F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0276B7FC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0276B800 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B800 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276B804 */ Gambit_fn_02982574(cpu);
|
|
/* 0276B808 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276B80C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276B810 */ _t7 = cpu->r[11] + 0xFFFF97D0u;
|
|
/* 0276B810 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276B814 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276B818 */ _t8 = cpu->r[10] + 0xFFFF97D8u;
|
|
/* 0276B818 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0276B81C */ _t9 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 0276B81C */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0276B820 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276B820 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0276B824 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276B828 */ _t11 = cpu->r[1] + 0x00000031u;
|
|
/* 0276B828 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0276B82C */ _t12 = cpu->r[12] + 0xFFFF97D4u;
|
|
/* 0276B82C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276B830 */ _t13 = cpu->r[1] + 0x00000030u;
|
|
/* 0276B830 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[10]);
|
|
/* 0276B834 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0276B838 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276B838 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0276B83C */ Gambit_fn_02984F3C(cpu);
|
|
/* 0276B840 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276B844 */ cpu->r[0] = 0x00000006u;
|
|
/* 0276B848 */ _t15 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276B848 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276B84C */ cpu->r[8] = cpu->r[1] + 0x00000034u;
|
|
/* 0276B850 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0276B854 */ _t16 = cpu->r[1] + 0x00000038u;
|
|
/* 0276B854 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276B858 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B85C */ _t17 = cpu->r[12] + 0x00000248u;
|
|
/* 0276B85C */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276B860 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B864 */ cpu->r[7] = cpu->r[1] + 0x00000018u;
|
|
/* 0276B868 */ cpu->r[9] = 0x00000003u;
|
|
/* 0276B86C */ Gambit_fn_020022D4(cpu);
|
|
/* 0276B870 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276B874 */ _t18 = cpu->r[31] + 0x000002C4u;
|
|
/* 0276B874 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 0276B878 */ _t19 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276B878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276B87C */ _t20 = cpu->r[1] + 0x00000044u;
|
|
/* 0276B87C */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0276B880 */ cpu->lr = cpu->r[0];
|
|
/* 0276B884 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0276B888 */ return;
|
|
}
|
|
|
|
// fn_0276B7C8 @ 0x276b7c8
|
|
void Gambit_fn_0276B7C8(CPUState* 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_0276B7C8: ; // 0x276b7c8
|
|
/* 0276B7C8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0276B7C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B7C8 */ cpu->r[1] = _t0;
|
|
/* 0276B7CC */ cpu->r[11] = 0x10100000u;
|
|
/* 0276B7D0 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0276B7D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276B7D4 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276B7D8 */ cpu->r[11] = cpu->r[11] + 0x0000026Cu;
|
|
/* 0276B7DC */ cpu->r[12] = cpu->r[12] + 0x000004D0u;
|
|
/* 0276B7E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B7E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0276B7E4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0276B7E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0276B7E8 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276B7E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276B7EC */ cpu->r[0] = 0x10100000u;
|
|
/* 0276B7F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B7F4 */ cpu->r[0] = cpu->r[0] + 0x000004CCu;
|
|
/* 0276B7F8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B7F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0276B7FC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0276B800 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0276B800 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276B804 */ Gambit_fn_02982574(cpu);
|
|
/* 0276B808 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276B80C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276B810 */ _t7 = cpu->r[11] + 0xFFFF97D0u;
|
|
/* 0276B810 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276B814 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276B818 */ _t8 = cpu->r[10] + 0xFFFF97D8u;
|
|
/* 0276B818 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0276B81C */ _t9 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 0276B81C */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0276B820 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276B820 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0276B824 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276B828 */ _t11 = cpu->r[1] + 0x00000031u;
|
|
/* 0276B828 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0276B82C */ _t12 = cpu->r[12] + 0xFFFF97D4u;
|
|
/* 0276B82C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276B830 */ _t13 = cpu->r[1] + 0x00000030u;
|
|
/* 0276B830 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[10]);
|
|
/* 0276B834 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0276B838 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276B838 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0276B83C */ Gambit_fn_02984F3C(cpu);
|
|
/* 0276B840 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276B844 */ cpu->r[0] = 0x00000006u;
|
|
/* 0276B848 */ _t15 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276B848 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276B84C */ cpu->r[8] = cpu->r[1] + 0x00000034u;
|
|
/* 0276B850 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0276B854 */ _t16 = cpu->r[1] + 0x00000038u;
|
|
/* 0276B854 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276B858 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276B85C */ _t17 = cpu->r[12] + 0x00000248u;
|
|
/* 0276B85C */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276B860 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B864 */ cpu->r[7] = cpu->r[1] + 0x00000018u;
|
|
/* 0276B868 */ cpu->r[9] = 0x00000003u;
|
|
/* 0276B86C */ Gambit_fn_020022D4(cpu);
|
|
/* 0276B870 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276B874 */ _t18 = cpu->r[31] + 0x000002C4u;
|
|
/* 0276B874 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 0276B878 */ _t19 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276B878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276B87C */ _t20 = cpu->r[1] + 0x00000044u;
|
|
/* 0276B87C */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0276B880 */ cpu->lr = cpu->r[0];
|
|
/* 0276B884 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0276B888 */ return;
|
|
}
|
|
|
|
// fn_0276B88C @ 0x276b88c
|
|
void Gambit_fn_0276B88C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0276B88C: ; // 0x276b88c
|
|
/* 0276B88C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276B890 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276B894 */ _t0 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276B894 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276B898 */ _t1 = cpu->r[11] + 0xFFFF8E80u;
|
|
/* 0276B898 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276B89C */ cpu->r[11] = cpu->r[12] + cpu->r[11];
|
|
/* 0276B8A0 */ _t2 = cpu->r[11] + 0x00000104u;
|
|
/* 0276B8A0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0276B8A4 */ _t3 = cpu->r[12] + 0x00000030u;
|
|
/* 0276B8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276B8A8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276B8AC */ _t4 = cpu->r[10] + cpu->r[0];
|
|
/* 0276B8AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276B8B0 */ _t5 = cpu->r[9] + 0x00000004u;
|
|
/* 0276B8B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276B8B4 */ _t6 = cpu->r[10] + 0x00000000u;
|
|
/* 0276B8B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276B8B8 */ _t7 = cpu->r[3] + 0x00000204u;
|
|
/* 0276B8B8 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0276B8BC */ _t8 = cpu->r[9] + 0x00000090u;
|
|
/* 0276B8BC */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0276B8C0 */ return;
|
|
}
|
|
|
|
// fn_0276B8C4 @ 0x276b8c4
|
|
void Gambit_fn_0276B8C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0276B8C4: ; // 0x276b8c4
|
|
/* 0276B8C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0276B8C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B8C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B8C8 */ cpu->r[1] = _t0;
|
|
/* 0276B8CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B8CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276B8D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B8D4 */ cpu->r[3] = 0x0000064Cu;
|
|
/* 0276B8D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B8D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276B8DC */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B8E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B8E4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B8E4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276B8E4 */ if (_t4) goto L_0276B8EC; else goto L_0276B8E8;
|
|
L_0276B8E8: ; // 0x276b8e8
|
|
/* 0276B8E8 */ Gambit_fn_0276B050(cpu);
|
|
L_0276B8EC: ; // 0x276b8ec
|
|
/* 0276B8EC */ _t5 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276B8EC */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0276B8F0 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276B8F4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B8F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276B8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0276B8FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B900 */ return;
|
|
}
|
|
|
|
// fn_0276B8C8 @ 0x276b8c8
|
|
void Gambit_fn_0276B8C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0276B8C8: ; // 0x276b8c8
|
|
/* 0276B8C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276B8C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B8C8 */ cpu->r[1] = _t0;
|
|
/* 0276B8CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B8CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276B8D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276B8D4 */ cpu->r[3] = 0x0000064Cu;
|
|
/* 0276B8D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B8D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276B8DC */ Gambit_fn_02801A78(cpu);
|
|
/* 0276B8E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B8E4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B8E4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276B8E4 */ if (_t4) goto L_0276B8EC; else goto L_0276B8E8;
|
|
L_0276B8E8: ; // 0x276b8e8
|
|
/* 0276B8E8 */ Gambit_fn_0276B050(cpu);
|
|
L_0276B8EC: ; // 0x276b8ec
|
|
/* 0276B8EC */ _t5 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276B8EC */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0276B8F0 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0276B8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276B8F4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276B8F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276B8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0276B8FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276B900 */ return;
|
|
}
|
|
|
|
// fn_0276B904 @ 0x276b904
|
|
void Gambit_fn_0276B904(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276B904: ; // 0x276b904
|
|
/* 0276B904 */ cpu->r[0] = 0x00000000u;
|
|
/* 0276B908 */ _t0 = cpu->r[3] + 0x000002E8u;
|
|
/* 0276B908 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 0276B90C */ return;
|
|
}
|
|
|
|
// fn_0276B910 @ 0x276b910
|
|
void Gambit_fn_0276B910(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276B910: ; // 0x276b910
|
|
/* 0276B910 */ cpu->r[0] = 0x00000000u;
|
|
/* 0276B914 */ _t0 = cpu->r[3] + 0x000002E8u;
|
|
/* 0276B914 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 0276B918 */ return;
|
|
}
|
|
|
|
// fn_0276B91C @ 0x276b91c
|
|
void Gambit_fn_0276B91C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276B91C: ; // 0x276b91c
|
|
/* 0276B91C */ cpu->r[0] = 0x00000000u;
|
|
/* 0276B920 */ _t0 = cpu->r[3] + 0x000002E8u;
|
|
/* 0276B920 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 0276B924 */ return;
|
|
}
|
|
|
|
// fn_0276B928 @ 0x276b928
|
|
void Gambit_fn_0276B928(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276B928: ; // 0x276b928
|
|
/* 0276B928 */ cpu->r[0] = 0x00000000u;
|
|
/* 0276B92C */ _t0 = cpu->r[3] + 0x000002E8u;
|
|
/* 0276B92C */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 0276B930 */ return;
|
|
}
|
|
|
|
// fn_0276B934 @ 0x276b934
|
|
void Gambit_fn_0276B934(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95;
|
|
|
|
L_0276B934: ; // 0x276b934
|
|
/* 0276B934 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0276B934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276B934 */ cpu->r[1] = _t0;
|
|
/* 0276B938 */ /* nop */
|
|
/* 0276B93C */ cpu->r[0] = cpu->lr;
|
|
/* 0276B940 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0276B940 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0276B944 */ /* nop */
|
|
/* 0276B948 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0276B948 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0276B94C */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 0276B94C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0276B950 */ /* nop */
|
|
/* 0276B954 */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 0276B954 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0276B958 */ _t5 = cpu->r[1] + 0x00000044u;
|
|
/* 0276B958 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0276B95C */ cpu->r[30] = cpu->r[3];
|
|
/* 0276B960 */ _t6 = cpu->r[30] + 0x000002E8u;
|
|
/* 0276B960 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0276B964 */ cpu->r[28] = 0x101D0000u;
|
|
/* 0276B968 */ cpu->r[31] = cpu->r[4];
|
|
/* 0276B96C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276B970 */ cpu->r[29] = 0x00000000u;
|
|
/* 0276B974 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B974 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276B974 */ if (_t8) goto L_0276B978; else goto L_0276BB00;
|
|
L_0276B978: ; // 0x276b978
|
|
/* 0276B978 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 0276B97C */ _t9 = cpu->r[30] + 0x00000008u;
|
|
/* 0276B97C */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276B980 */ cpu->r[6] = cpu->r[30] + 0x00000208u;
|
|
/* 0276B984 */ cpu->r[27] = cpu->r[6] + cpu->r[8];
|
|
/* 0276B988 */ _t10 = cpu->r[9] + 0x000000A4u;
|
|
/* 0276B988 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276B98C */ cpu->r[4] = cpu->r[27];
|
|
/* 0276B990 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276B994 */ /* nop */
|
|
/* 0276B998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276B99C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B99C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276B99C */ if (_t12) goto L_0276B9CC; else goto L_0276B9A0;
|
|
L_0276B9A0: ; // 0x276b9a0
|
|
/* 0276B9A0 */ /* nop */
|
|
/* 0276B9A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276B9A8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B9A8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0276B9A8 */ if (_t14) goto L_0276B9CC; else goto L_0276B9AC;
|
|
L_0276B9AC: ; // 0x276b9ac
|
|
/* 0276B9AC */ cpu->r[3] = cpu->r[30];
|
|
/* 0276B9B0 */ Gambit_fn_020026A4(cpu);
|
|
/* 0276B9B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276B9B8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B9B8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0276B9B8 */ if (_t16) goto L_0276BA28; else goto L_0276B9BC;
|
|
L_0276B9BC: ; // 0x276b9bc
|
|
/* 0276B9BC */ cpu->r[3] = cpu->r[30];
|
|
/* 0276B9C0 */ Gambit_fn_02002700(cpu);
|
|
/* 0276B9C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]);
|
|
/* 0276B9C8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B9C8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276B9C8 */ if (_t18) goto L_0276B9CC; else goto L_0276BA28;
|
|
L_0276B9CC: ; // 0x276b9cc
|
|
/* 0276B9CC */ _t19 = cpu->r[30] + 0x00000008u;
|
|
/* 0276B9CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276B9D0 */ _t20 = cpu->r[12] + 0x000000A4u;
|
|
/* 0276B9D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0276B9D4 */ cpu->r[4] = cpu->r[27] + 0x00000054u;
|
|
/* 0276B9D8 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276B9DC */ /* nop */
|
|
/* 0276B9E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276B9E4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B9E4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0276B9E4 */ if (_t22) goto L_0276BA14; else goto L_0276B9E8;
|
|
L_0276B9E8: ; // 0x276b9e8
|
|
/* 0276B9E8 */ /* nop */
|
|
/* 0276B9EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276B9F0 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276B9F0 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0276B9F0 */ if (_t24) goto L_0276BA14; else goto L_0276B9F4;
|
|
L_0276B9F4: ; // 0x276b9f4
|
|
/* 0276B9F4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0276B9F8 */ cpu->r[4] = cpu->r[31] + 0x00000007u;
|
|
/* 0276B9FC */ cpu->r[3] = cpu->r[30];
|
|
/* 0276BA00 */ Gambit_fn_0276EAD8(cpu);
|
|
/* 0276BA04 */ _t25 = cpu->r[30] + 0x000002E8u;
|
|
/* 0276BA04 */ cpu->r[0] = rbrew_read8(cpu->mem, _t25);
|
|
/* 0276BA08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276BA0C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BA0C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0276BA0C */ if (_t27) goto L_0276BA34; else goto L_0276BA10;
|
|
L_0276BA10: ; // 0x276ba10
|
|
/* 0276BA10 */ goto L_0276BB00;
|
|
L_0276BA14: ; // 0x276ba14
|
|
/* 0276BA14 */ _t28 = cpu->r[28] + 0xFFFF8FC4u;
|
|
/* 0276BA14 */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276BA18 */ _t29 = cpu->r[7] + 0x00000250u;
|
|
/* 0276BA18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0276BA1C */ Gambit_fn_0209CF00(cpu);
|
|
/* 0276BA20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276BA24 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BA24 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0276BA24 */ if (_t31) goto L_0276BA28; else goto L_0276BA70;
|
|
L_0276BA28: ; // 0x276ba28
|
|
/* 0276BA28 */ _t32 = cpu->r[30] + 0x000002E8u;
|
|
/* 0276BA28 */ cpu->r[0] = rbrew_read8(cpu->mem, _t32);
|
|
/* 0276BA2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276BA30 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BA30 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0276BA30 */ if (_t34) goto L_0276BA34; else goto L_0276BB00;
|
|
L_0276BA34: ; // 0x276ba34
|
|
/* 0276BA34 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276BA38 */ Gambit_fn_02002D68(cpu);
|
|
/* 0276BA3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276BA40 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BA40 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0276BA40 */ if (_t36) goto L_0276BAF4; else goto L_0276BA44;
|
|
L_0276BA44: ; // 0x276ba44
|
|
/* 0276BA44 */ _t37 = cpu->r[28] + 0xFFFF8FC4u;
|
|
/* 0276BA44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0276BA48 */ _t38 = cpu->r[9] + 0x00000250u;
|
|
/* 0276BA48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0276BA4C */ Gambit_fn_0209CF00(cpu);
|
|
/* 0276BA50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276BA54 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BA54 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0276BA54 */ if (_t40) goto L_0276BAF4; else goto L_0276BA58;
|
|
L_0276BA58: ; // 0x276ba58
|
|
/* 0276BA58 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276BA5C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276BA60 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 0276BA60 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 0276BA64 */ Gambit_fn_02778A04(cpu);
|
|
/* 0276BA68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276BA6C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BA6C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0276BA6C */ if (_t43) goto L_0276BA70; else goto L_0276BAF4;
|
|
L_0276BA70: ; // 0x276ba70
|
|
/* 0276BA70 */ _t44 = cpu->r[30] + 0x000002E9u;
|
|
/* 0276BA70 */ cpu->r[11] = rbrew_read8(cpu->mem, _t44);
|
|
/* 0276BA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0276BA78 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BA78 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0276BA78 */ if (_t46) goto L_0276BAC0; else goto L_0276BA7C;
|
|
L_0276BA7C: ; // 0x276ba7c
|
|
/* 0276BA7C */ _t47 = cpu->r[30] + 0x000002E9u;
|
|
/* 0276BA7C */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[29]);
|
|
/* 0276BA80 */ cpu->r[12] = 0x00000001u;
|
|
/* 0276BA84 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276BA88 */ cpu->r[4] = 0x00000006u;
|
|
/* 0276BA8C */ cpu->r[5] = 0x00000000u;
|
|
/* 0276BA90 */ _t48 = cpu->r[30] + 0x000002E8u;
|
|
/* 0276BA90 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[12]);
|
|
/* 0276BA94 */ Gambit_fn_0276EAD8(cpu);
|
|
/* 0276BA98 */ /* nop */
|
|
/* 0276BA9C */ _t49 = cpu->r[1] + 0x00000028u;
|
|
/* 0276BA9C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0276BAA0 */ _t50 = cpu->r[1] + 0x00000038u;
|
|
/* 0276BAA0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0276BAA4 */ _t51 = cpu->r[1] + 0x00000020u;
|
|
/* 0276BAA4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t51);
|
|
/* 0276BAA8 */ _t52 = cpu->r[1] + 0x00000030u;
|
|
/* 0276BAA8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t52);
|
|
/* 0276BAAC */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276BAAC */ _t54 = _t53 & 0x00000001u;
|
|
/* 0276BAAC */ if (_t54) goto L_0276BAB0; // else: addr-0 trap, fall-through
|
|
L_0276BAB0: ; // 0x276bab0
|
|
/* 0276BAB0 */ _t55 = cpu->r[1] + 0x00000044u;
|
|
/* 0276BAB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0276BAB4 */ cpu->lr = cpu->r[0];
|
|
/* 0276BAB8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0276BABC */ return;
|
|
L_0276BAC0: ; // 0x276bac0
|
|
/* 0276BAC0 */ cpu->r[3] = cpu->r[30] + 0x000001CCu;
|
|
/* 0276BAC4 */ cpu->r[4] = 0x00000001u;
|
|
/* 0276BAC8 */ Gambit_fn_0276C6F8(cpu);
|
|
/* 0276BACC */ /* nop */
|
|
/* 0276BAD0 */ _t56 = cpu->r[1] + 0x00000028u;
|
|
/* 0276BAD0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0276BAD4 */ _t57 = cpu->r[1] + 0x00000038u;
|
|
/* 0276BAD4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0276BAD8 */ _t58 = cpu->r[1] + 0x00000020u;
|
|
/* 0276BAD8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 0276BADC */ _t59 = cpu->r[1] + 0x00000030u;
|
|
/* 0276BADC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t59);
|
|
/* 0276BAE0 */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276BAE0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0276BAE0 */ if (_t61) goto L_0276BAE4; // else: addr-0 trap, fall-through
|
|
L_0276BAE4: ; // 0x276bae4
|
|
/* 0276BAE4 */ _t62 = cpu->r[1] + 0x00000044u;
|
|
/* 0276BAE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0276BAE8 */ cpu->lr = cpu->r[0];
|
|
/* 0276BAEC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0276BAF0 */ return;
|
|
L_0276BAF4: ; // 0x276baf4
|
|
/* 0276BAF4 */ _t63 = cpu->r[30] + 0x000002E8u;
|
|
/* 0276BAF4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t63);
|
|
/* 0276BAF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276BAFC */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BAFC */ _t65 = _t64 & 0x00000001u;
|
|
/* 0276BAFC */ if (_t65) goto L_0276BBA8; else goto L_0276BB00;
|
|
L_0276BB00: ; // 0x276bb00
|
|
/* 0276BB00 */ _t66 = cpu->r[28] + 0xFFFF8FC4u;
|
|
/* 0276BB00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0276BB04 */ _t67 = cpu->r[12] + 0x00000250u;
|
|
/* 0276BB04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0276BB08 */ Gambit_fn_0209CF00(cpu);
|
|
/* 0276BB0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276BB10 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BB10 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0276BB10 */ if (_t69) goto L_0276BB14; else goto L_0276BB48;
|
|
L_0276BB14: ; // 0x276bb14
|
|
/* 0276BB14 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276BB18 */ _t70 = cpu->r[30] + 0x000002E8u;
|
|
/* 0276BB18 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[29]);
|
|
/* 0276BB1C */ Gambit_fn_0276ECC4(cpu);
|
|
/* 0276BB20 */ /* nop */
|
|
/* 0276BB24 */ _t71 = cpu->r[1] + 0x00000028u;
|
|
/* 0276BB24 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0276BB28 */ _t72 = cpu->r[1] + 0x00000038u;
|
|
/* 0276BB28 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0276BB2C */ _t73 = cpu->r[1] + 0x00000020u;
|
|
/* 0276BB2C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t73);
|
|
/* 0276BB30 */ _t74 = cpu->r[1] + 0x00000030u;
|
|
/* 0276BB30 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 0276BB34 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276BB34 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0276BB34 */ if (_t76) goto L_0276BB38; // else: addr-0 trap, fall-through
|
|
L_0276BB38: ; // 0x276bb38
|
|
/* 0276BB38 */ _t77 = cpu->r[1] + 0x00000044u;
|
|
/* 0276BB38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0276BB3C */ cpu->lr = cpu->r[0];
|
|
/* 0276BB40 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0276BB44 */ return;
|
|
L_0276BB48: ; // 0x276bb48
|
|
/* 0276BB48 */ _t78 = cpu->r[30] + 0x000002E8u;
|
|
/* 0276BB48 */ cpu->r[7] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0276BB4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0276BB50 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BB50 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0276BB50 */ if (_t80) goto L_0276BBA8; else goto L_0276BB54;
|
|
L_0276BB54: ; // 0x276bb54
|
|
/* 0276BB54 */ _t81 = cpu->r[28] + 0xFFFF8FC4u;
|
|
/* 0276BB54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0276BB58 */ _t82 = cpu->r[10] + 0x00000250u;
|
|
/* 0276BB58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0276BB5C */ Gambit_fn_0209D388(cpu);
|
|
/* 0276BB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276BB64 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BB64 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0276BB64 */ if (_t84) goto L_0276BB68; else goto L_0276BBA8;
|
|
L_0276BB68: ; // 0x276bb68
|
|
/* 0276BB68 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276BB6C */ Gambit_fn_02002B74(cpu);
|
|
/* 0276BB70 */ cpu->f[31] = cpu->f[1];
|
|
/* 0276BB74 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276BB78 */ Gambit_fn_02002C1C(cpu);
|
|
/* 0276BB7C */ cpu->f[30] = cpu->f[1];
|
|
/* 0276BB80 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276BB84 */ Gambit_fn_02002C7C(cpu);
|
|
/* 0276BB88 */ cpu->f[0] = cpu->f[30] - cpu->f[1];
|
|
/* 0276BB8C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[0]);
|
|
/* 0276BB90 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276BB90 */ _t86 = _t85 & 0x00000001u;
|
|
/* 0276BB90 */ if (_t86) goto L_0276BBA8; else goto L_0276BB94;
|
|
L_0276BB94: ; // 0x276bb94
|
|
/* 0276BB94 */ _t87 = cpu->r[30] + 0x000002E9u;
|
|
/* 0276BB94 */ rbrew_write8(cpu->mem, _t87, (uint8_t)cpu->r[29]);
|
|
/* 0276BB98 */ cpu->r[3] = cpu->r[30] + 0x000001CCu;
|
|
/* 0276BB9C */ cpu->r[4] = 0x00000001u;
|
|
/* 0276BBA0 */ _t88 = cpu->r[30] + 0x000002E8u;
|
|
/* 0276BBA0 */ rbrew_write8(cpu->mem, _t88, (uint8_t)cpu->r[29]);
|
|
/* 0276BBA4 */ Gambit_fn_0276C6F8(cpu);
|
|
L_0276BBA8: ; // 0x276bba8
|
|
/* 0276BBA8 */ /* nop */
|
|
/* 0276BBAC */ _t89 = cpu->r[1] + 0x00000028u;
|
|
/* 0276BBAC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 0276BBB0 */ _t90 = cpu->r[1] + 0x00000038u;
|
|
/* 0276BBB0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0276BBB4 */ _t91 = cpu->r[1] + 0x00000020u;
|
|
/* 0276BBB4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 0276BBB8 */ _t92 = cpu->r[1] + 0x00000030u;
|
|
/* 0276BBB8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t92);
|
|
/* 0276BBBC */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276BBBC */ _t94 = _t93 & 0x00000001u;
|
|
/* 0276BBBC */ if (_t94) goto L_0276BBC0; // else: addr-0 trap, fall-through
|
|
L_0276BBC0: ; // 0x276bbc0
|
|
/* 0276BBC0 */ _t95 = cpu->r[1] + 0x00000044u;
|
|
/* 0276BBC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0276BBC4 */ cpu->lr = cpu->r[0];
|
|
/* 0276BBC8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0276BBCC */ return;
|
|
}
|
|
|
|
// fn_0276BBD0 @ 0x276bbd0
|
|
void Gambit_fn_0276BBD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_0276BBD0: ; // 0x276bbd0
|
|
/* 0276BBD0 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276BBD4 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0276BBD8 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BBDC */ cpu->r[11] = cpu->r[11] + 0x0000026Cu;
|
|
/* 0276BBE0 */ cpu->r[12] = cpu->r[12] + 0x00001AA4u;
|
|
/* 0276BBE4 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0276BBE8 */ cpu->r[0] = cpu->r[0] + 0x00000518u;
|
|
/* 0276BBEC */ _t0 = cpu->r[12] + 0x00000004u;
|
|
/* 0276BBEC */ rbrew_write32(cpu->mem, _t0, cpu->r[11]);
|
|
/* 0276BBF0 */ cpu->r[9] = cpu->r[9] + 0x00001A9Cu;
|
|
/* 0276BBF4 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BBF8 */ _t1 = cpu->r[12] + 0x00000000u;
|
|
/* 0276BBF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0276BBFC */ cpu->r[10] = cpu->r[10] + 0x000005D0u;
|
|
/* 0276BC00 */ _t2 = cpu->r[9] + 0x00000004u;
|
|
/* 0276BC00 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0276BC04 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BC08 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0276BC08 */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 0276BC0C */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BC10 */ _t4 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0276BC10 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 0276BC14 */ cpu->r[10] = cpu->r[10] + 0x00000520u;
|
|
/* 0276BC18 */ cpu->r[0] = cpu->r[0] + 0x000004E0u;
|
|
/* 0276BC1C */ _t5 = cpu->r[12] + 0x00000008u;
|
|
/* 0276BC1C */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0276BC20 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BC24 */ _t6 = cpu->r[12] + 0x00000014u;
|
|
/* 0276BC24 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0276BC28 */ _t7 = cpu->r[12] + 0x00000010u;
|
|
/* 0276BC28 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0276BC2C */ cpu->r[10] = cpu->r[10] + 0x00000528u;
|
|
/* 0276BC30 */ _t8 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0276BC30 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0276BC34 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BC38 */ _t9 = cpu->r[12] + 0x00000018u;
|
|
/* 0276BC38 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0276BC3C */ cpu->r[0] = cpu->r[0] + 0x00000530u;
|
|
/* 0276BC40 */ _t10 = cpu->r[12] + 0x00000024u;
|
|
/* 0276BC40 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0276BC44 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BC48 */ _t11 = cpu->r[12] + 0x00000020u;
|
|
/* 0276BC48 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0276BC4C */ cpu->r[10] = cpu->r[10] + 0x000004E8u;
|
|
/* 0276BC50 */ _t12 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276BC50 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0276BC54 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BC58 */ _t13 = cpu->r[12] + 0x00000028u;
|
|
/* 0276BC58 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 0276BC5C */ cpu->r[0] = cpu->r[0] + 0x00000538u;
|
|
/* 0276BC60 */ _t14 = cpu->r[12] + 0x00000034u;
|
|
/* 0276BC60 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 0276BC64 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BC68 */ _t15 = cpu->r[12] + 0x00000030u;
|
|
/* 0276BC68 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0276BC6C */ cpu->r[10] = cpu->r[10] + 0x00000540u;
|
|
/* 0276BC70 */ _t16 = cpu->r[12] + 0x0000003Cu;
|
|
/* 0276BC70 */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 0276BC74 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BC78 */ _t17 = cpu->r[12] + 0x00000038u;
|
|
/* 0276BC78 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0276BC7C */ cpu->r[0] = cpu->r[0] + 0x000004F0u;
|
|
/* 0276BC80 */ _t18 = cpu->r[12] + 0x00000044u;
|
|
/* 0276BC80 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 0276BC84 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BC88 */ _t19 = cpu->r[12] + 0x00000040u;
|
|
/* 0276BC88 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0276BC8C */ cpu->r[10] = cpu->r[10] + 0x00000548u;
|
|
/* 0276BC90 */ _t20 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0276BC90 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 0276BC94 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BC98 */ _t21 = cpu->r[12] + 0x00000048u;
|
|
/* 0276BC98 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]);
|
|
/* 0276BC9C */ cpu->r[0] = cpu->r[0] + 0x00000550u;
|
|
/* 0276BCA0 */ _t22 = cpu->r[12] + 0x00000054u;
|
|
/* 0276BCA0 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 0276BCA4 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BCA8 */ _t23 = cpu->r[12] + 0x00000050u;
|
|
/* 0276BCA8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0276BCAC */ cpu->r[10] = cpu->r[10] + 0x000004F8u;
|
|
/* 0276BCB0 */ _t24 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0276BCB0 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0276BCB4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BCB8 */ _t25 = cpu->r[12] + 0x00000058u;
|
|
/* 0276BCB8 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 0276BCBC */ cpu->r[0] = cpu->r[0] + 0x00000558u;
|
|
/* 0276BCC0 */ _t26 = cpu->r[12] + 0x00000064u;
|
|
/* 0276BCC0 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 0276BCC4 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BCC8 */ _t27 = cpu->r[12] + 0x00000060u;
|
|
/* 0276BCC8 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0276BCCC */ cpu->r[10] = cpu->r[10] + 0x00000560u;
|
|
/* 0276BCD0 */ _t28 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0276BCD0 */ rbrew_write32(cpu->mem, _t28, cpu->r[11]);
|
|
/* 0276BCD4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BCD8 */ _t29 = cpu->r[12] + 0x00000068u;
|
|
/* 0276BCD8 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 0276BCDC */ cpu->r[0] = cpu->r[0] + 0x00000500u;
|
|
/* 0276BCE0 */ _t30 = cpu->r[12] + 0x00000074u;
|
|
/* 0276BCE0 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 0276BCE4 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BCE8 */ _t31 = cpu->r[12] + 0x00000070u;
|
|
/* 0276BCE8 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0276BCEC */ cpu->r[10] = cpu->r[10] + 0x00000568u;
|
|
/* 0276BCF0 */ _t32 = cpu->r[12] + 0x0000007Cu;
|
|
/* 0276BCF0 */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 0276BCF4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BCF8 */ _t33 = cpu->r[12] + 0x00000078u;
|
|
/* 0276BCF8 */ rbrew_write32(cpu->mem, _t33, cpu->r[10]);
|
|
/* 0276BCFC */ cpu->r[0] = cpu->r[0] + 0x00000570u;
|
|
/* 0276BD00 */ _t34 = cpu->r[12] + 0x00000084u;
|
|
/* 0276BD00 */ rbrew_write32(cpu->mem, _t34, cpu->r[11]);
|
|
/* 0276BD04 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BD08 */ _t35 = cpu->r[12] + 0x00000080u;
|
|
/* 0276BD08 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 0276BD0C */ cpu->r[10] = cpu->r[10] + 0x00000508u;
|
|
/* 0276BD10 */ _t36 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0276BD10 */ rbrew_write32(cpu->mem, _t36, cpu->r[11]);
|
|
/* 0276BD14 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BD18 */ _t37 = cpu->r[12] + 0x00000088u;
|
|
/* 0276BD18 */ rbrew_write32(cpu->mem, _t37, cpu->r[10]);
|
|
/* 0276BD1C */ cpu->r[0] = cpu->r[0] + 0x00000578u;
|
|
/* 0276BD20 */ _t38 = cpu->r[12] + 0x00000094u;
|
|
/* 0276BD20 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 0276BD24 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BD28 */ _t39 = cpu->r[12] + 0x00000090u;
|
|
/* 0276BD28 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 0276BD2C */ cpu->r[10] = cpu->r[10] + 0x00000580u;
|
|
/* 0276BD30 */ _t40 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0276BD30 */ rbrew_write32(cpu->mem, _t40, cpu->r[11]);
|
|
/* 0276BD34 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BD38 */ _t41 = cpu->r[12] + 0x00000098u;
|
|
/* 0276BD38 */ rbrew_write32(cpu->mem, _t41, cpu->r[10]);
|
|
/* 0276BD3C */ cpu->r[0] = cpu->r[0] + 0x00000510u;
|
|
/* 0276BD40 */ _t42 = cpu->r[12] + 0x000000A4u;
|
|
/* 0276BD40 */ rbrew_write32(cpu->mem, _t42, cpu->r[11]);
|
|
/* 0276BD44 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BD48 */ _t43 = cpu->r[12] + 0x000000A0u;
|
|
/* 0276BD48 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 0276BD4C */ cpu->r[10] = cpu->r[10] + 0x00000588u;
|
|
/* 0276BD50 */ _t44 = cpu->r[12] + 0x000000ACu;
|
|
/* 0276BD50 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 0276BD54 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BD58 */ _t45 = cpu->r[12] + 0x000000A8u;
|
|
/* 0276BD58 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 0276BD5C */ cpu->r[0] = cpu->r[0] + 0x00000594u;
|
|
/* 0276BD60 */ _t46 = cpu->r[12] + 0x000000B4u;
|
|
/* 0276BD60 */ rbrew_write32(cpu->mem, _t46, cpu->r[11]);
|
|
/* 0276BD64 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BD68 */ _t47 = cpu->r[12] + 0x000000B0u;
|
|
/* 0276BD68 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0276BD6C */ cpu->r[10] = cpu->r[10] + 0x000005DCu;
|
|
/* 0276BD70 */ _t48 = cpu->r[12] + 0x000000BCu;
|
|
/* 0276BD70 */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 0276BD74 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BD78 */ _t49 = cpu->r[12] + 0x000000B8u;
|
|
/* 0276BD78 */ rbrew_write32(cpu->mem, _t49, cpu->r[10]);
|
|
/* 0276BD7C */ cpu->r[0] = cpu->r[0] + 0x000005ECu;
|
|
/* 0276BD80 */ _t50 = cpu->r[12] + 0x000000C4u;
|
|
/* 0276BD80 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0276BD84 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BD88 */ _t51 = cpu->r[12] + 0x000000C0u;
|
|
/* 0276BD88 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 0276BD8C */ cpu->r[10] = cpu->r[10] + 0x000005FCu;
|
|
/* 0276BD90 */ _t52 = cpu->r[12] + 0x000000CCu;
|
|
/* 0276BD90 */ rbrew_write32(cpu->mem, _t52, cpu->r[11]);
|
|
/* 0276BD94 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BD98 */ _t53 = cpu->r[12] + 0x000000C8u;
|
|
/* 0276BD98 */ rbrew_write32(cpu->mem, _t53, cpu->r[10]);
|
|
/* 0276BD9C */ cpu->r[0] = cpu->r[0] + 0x000005A0u;
|
|
/* 0276BDA0 */ _t54 = cpu->r[12] + 0x000000D4u;
|
|
/* 0276BDA0 */ rbrew_write32(cpu->mem, _t54, cpu->r[11]);
|
|
/* 0276BDA4 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BDA8 */ _t55 = cpu->r[12] + 0x000000D0u;
|
|
/* 0276BDA8 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 0276BDAC */ cpu->r[10] = cpu->r[10] + 0x0000060Cu;
|
|
/* 0276BDB0 */ _t56 = cpu->r[12] + 0x000000DCu;
|
|
/* 0276BDB0 */ rbrew_write32(cpu->mem, _t56, cpu->r[11]);
|
|
/* 0276BDB4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BDB8 */ _t57 = cpu->r[12] + 0x000000D8u;
|
|
/* 0276BDB8 */ rbrew_write32(cpu->mem, _t57, cpu->r[10]);
|
|
/* 0276BDBC */ cpu->r[0] = cpu->r[0] + 0x0000061Cu;
|
|
/* 0276BDC0 */ _t58 = cpu->r[12] + 0x000000E4u;
|
|
/* 0276BDC0 */ rbrew_write32(cpu->mem, _t58, cpu->r[11]);
|
|
/* 0276BDC4 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BDC8 */ _t59 = cpu->r[12] + 0x000000E0u;
|
|
/* 0276BDC8 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 0276BDCC */ cpu->r[10] = cpu->r[10] + 0x000005B0u;
|
|
/* 0276BDD0 */ _t60 = cpu->r[12] + 0x000000ECu;
|
|
/* 0276BDD0 */ rbrew_write32(cpu->mem, _t60, cpu->r[11]);
|
|
/* 0276BDD4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BDD8 */ _t61 = cpu->r[12] + 0x000000E8u;
|
|
/* 0276BDD8 */ rbrew_write32(cpu->mem, _t61, cpu->r[10]);
|
|
/* 0276BDDC */ cpu->r[0] = cpu->r[0] + 0x0000062Cu;
|
|
/* 0276BDE0 */ _t62 = cpu->r[12] + 0x000000F4u;
|
|
/* 0276BDE0 */ rbrew_write32(cpu->mem, _t62, cpu->r[11]);
|
|
/* 0276BDE4 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276BDE8 */ _t63 = cpu->r[12] + 0x000000F0u;
|
|
/* 0276BDE8 */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 0276BDEC */ cpu->r[10] = cpu->r[10] + 0x0000063Cu;
|
|
/* 0276BDF0 */ _t64 = cpu->r[12] + 0x000000FCu;
|
|
/* 0276BDF0 */ rbrew_write32(cpu->mem, _t64, cpu->r[11]);
|
|
/* 0276BDF4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276BDF8 */ _t65 = cpu->r[12] + 0x000000F8u;
|
|
/* 0276BDF8 */ rbrew_write32(cpu->mem, _t65, cpu->r[10]);
|
|
/* 0276BDFC */ cpu->r[0] = cpu->r[0] + 0x000005C0u;
|
|
/* 0276BE00 */ _t66 = cpu->r[12] + 0x00000104u;
|
|
/* 0276BE00 */ rbrew_write32(cpu->mem, _t66, cpu->r[11]);
|
|
/* 0276BE04 */ _t67 = cpu->r[12] + 0x00000100u;
|
|
/* 0276BE04 */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 0276BE08 */ return;
|
|
}
|
|
|
|
// fn_0276BE0C @ 0x276be0c
|
|
void Gambit_fn_0276BE0C(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_0276BE0C: ; // 0x276be0c
|
|
/* 0276BE0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276BE10 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BE10 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0276BE10 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276BE10 */ goto L_0276BE14;
|
|
L_0276BE14: ; // 0x276be14
|
|
/* 0276BE14 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276BE14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276BE18 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BE18 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0276BE18 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276BE18 */ goto L_0276BE1C;
|
|
L_0276BE1C: ; // 0x276be1c
|
|
/* 0276BE1C */ 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_0276BE20 @ 0x276be20
|
|
void Gambit_fn_0276BE20(CPUState* cpu) {
|
|
L_0276BE20: ; // 0x276be20
|
|
/* 0276BE20 */ return;
|
|
}
|
|
|
|
// fn_0276BE24 @ 0x276be24
|
|
void Gambit_fn_0276BE24(CPUState* cpu) {
|
|
L_0276BE24: ; // 0x276be24
|
|
/* 0276BE24 */ return;
|
|
}
|
|
|
|
// fn_0276BE28 @ 0x276be28
|
|
void Gambit_fn_0276BE28(CPUState* cpu) {
|
|
L_0276BE28: ; // 0x276be28
|
|
/* 0276BE28 */ return;
|
|
}
|
|
|
|
// fn_0276BE2C @ 0x276be2c
|
|
void Gambit_fn_0276BE2C(CPUState* cpu) {
|
|
L_0276BE2C: ; // 0x276be2c
|
|
/* 0276BE2C */ return;
|
|
}
|
|
|
|
// fn_0276BE30 @ 0x276be30
|
|
void Gambit_fn_0276BE30(CPUState* cpu) {
|
|
L_0276BE30: ; // 0x276be30
|
|
/* 0276BE30 */ return;
|
|
}
|
|
|
|
// fn_0276BE34 @ 0x276be34
|
|
void Gambit_fn_0276BE34(CPUState* cpu) {
|
|
L_0276BE34: ; // 0x276be34
|
|
/* 0276BE34 */ return;
|
|
}
|
|
|
|
// fn_0276BE38 @ 0x276be38
|
|
void Gambit_fn_0276BE38(CPUState* cpu) {
|
|
L_0276BE38: ; // 0x276be38
|
|
/* 0276BE38 */ return;
|
|
}
|
|
|
|
// fn_0276BE3C @ 0x276be3c
|
|
void Gambit_fn_0276BE3C(CPUState* cpu) {
|
|
L_0276BE3C: ; // 0x276be3c
|
|
/* 0276BE3C */ return;
|
|
}
|
|
|
|
// fn_0276BE40 @ 0x276be40
|
|
void Gambit_fn_0276BE40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0276BE40: ; // 0x276be40
|
|
/* 0276BE40 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0276BE40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BE44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276BE48 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BE48 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276BE48 */ if (_t2) goto L_0276BE54; else goto L_0276BE4C;
|
|
L_0276BE4C: ; // 0x276be4c
|
|
/* 0276BE4C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0276BE50 */ return;
|
|
L_0276BE54: ; // 0x276be54
|
|
/* 0276BE54 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276BE58 */ return;
|
|
}
|
|
|
|
// fn_0276BE5C @ 0x276be5c
|
|
void Gambit_fn_0276BE5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0276BE5C: ; // 0x276be5c
|
|
/* 0276BE5C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0276BE5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BE60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276BE64 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BE64 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276BE64 */ if (_t2) goto L_0276BE70; else goto L_0276BE68;
|
|
L_0276BE68: ; // 0x276be68
|
|
/* 0276BE68 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0276BE6C */ return;
|
|
L_0276BE70: ; // 0x276be70
|
|
/* 0276BE70 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276BE74 */ return;
|
|
}
|
|
|
|
// fn_0276BE78 @ 0x276be78
|
|
void Gambit_fn_0276BE78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276BE78: ; // 0x276be78
|
|
/* 0276BE78 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276BE78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BE7C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276BE7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276BE80 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BE80 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276BE80 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276BE80 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276BE80 */ goto L_0276BE84;
|
|
L_0276BE84: ; // 0x276be84
|
|
/* 0276BE84 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276BE84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276BE88 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0276BE88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276BE8C */ cpu->ctr = cpu->r[0];
|
|
/* 0276BE90 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276BE94 @ 0x276be94
|
|
void Gambit_fn_0276BE94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276BE94: ; // 0x276be94
|
|
/* 0276BE94 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276BE94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BE98 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276BE98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276BE9C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BE9C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276BE9C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276BE9C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276BE9C */ goto L_0276BEA0;
|
|
L_0276BEA0: ; // 0x276bea0
|
|
/* 0276BEA0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276BEA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276BEA4 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0276BEA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276BEA8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276BEAC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276BEB0 @ 0x276beb0
|
|
void Gambit_fn_0276BEB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276BEB0: ; // 0x276beb0
|
|
/* 0276BEB0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276BEB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BEB4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276BEB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276BEB8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BEB8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276BEB8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276BEB8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276BEB8 */ goto L_0276BEBC;
|
|
L_0276BEBC: ; // 0x276bebc
|
|
/* 0276BEBC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276BEBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276BEC0 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0276BEC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276BEC4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276BEC8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276BECC @ 0x276becc
|
|
void Gambit_fn_0276BECC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276BECC: ; // 0x276becc
|
|
/* 0276BECC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276BECC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BED0 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276BED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276BED4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276BED8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276BEDC @ 0x276bedc
|
|
void Gambit_fn_0276BEDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0276BEDC: ; // 0x276bedc
|
|
/* 0276BEDC */ cpu->r[0] = cpu->lr;
|
|
/* 0276BEE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276BEE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276BEE0 */ cpu->r[1] = _t0;
|
|
/* 0276BEE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276BEE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276BEE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276BEEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276BEEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276BEF0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276BEF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276BEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0276BEF8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BEF8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276BEF8 */ if (_t5) goto L_0276BEFC; else goto L_0276BF18;
|
|
L_0276BEFC: ; // 0x276befc
|
|
/* 0276BEFC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0276BEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276BF00 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0276BF00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276BF04 */ cpu->ctr = cpu->r[0];
|
|
/* 0276BF08 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276BF0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276BF10 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276BF14 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276BF14 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0276BF18: ; // 0x276bf18
|
|
/* 0276BF18 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276BF18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276BF1C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276BF1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276BF20 */ cpu->lr = cpu->r[0];
|
|
/* 0276BF24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276BF28 */ return;
|
|
}
|
|
|
|
// fn_0276BEE0 @ 0x276bee0
|
|
void Gambit_fn_0276BEE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0276BEE0: ; // 0x276bee0
|
|
/* 0276BEE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276BEE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276BEE0 */ cpu->r[1] = _t0;
|
|
/* 0276BEE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276BEE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276BEE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276BEEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276BEEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276BEF0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276BEF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276BEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0276BEF8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BEF8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276BEF8 */ if (_t5) goto L_0276BEFC; else goto L_0276BF18;
|
|
L_0276BEFC: ; // 0x276befc
|
|
/* 0276BEFC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0276BEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276BF00 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0276BF00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276BF04 */ cpu->ctr = cpu->r[0];
|
|
/* 0276BF08 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276BF0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276BF10 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276BF14 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276BF14 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0276BF18: ; // 0x276bf18
|
|
/* 0276BF18 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276BF18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276BF1C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276BF1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276BF20 */ cpu->lr = cpu->r[0];
|
|
/* 0276BF24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276BF28 */ return;
|
|
}
|
|
|
|
// fn_0276BF2C @ 0x276bf2c
|
|
void Gambit_fn_0276BF2C(CPUState* cpu) {
|
|
L_0276BF2C: ; // 0x276bf2c
|
|
/* 0276BF2C */ return;
|
|
}
|
|
|
|
// fn_0276BF30 @ 0x276bf30
|
|
void Gambit_fn_0276BF30(CPUState* cpu) {
|
|
L_0276BF30: ; // 0x276bf30
|
|
/* 0276BF30 */ return;
|
|
}
|
|
|
|
// fn_0276BF34 @ 0x276bf34
|
|
void Gambit_fn_0276BF34(CPUState* cpu) {
|
|
L_0276BF34: ; // 0x276bf34
|
|
/* 0276BF34 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276BF38 */ return;
|
|
}
|
|
|
|
// fn_0276BF3C @ 0x276bf3c
|
|
void Gambit_fn_0276BF3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0276BF3C: ; // 0x276bf3c
|
|
/* 0276BF3C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276BF40 */ _t0 = cpu->r[11] + 0xFFFFDA34u;
|
|
/* 0276BF40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BF40 */ cpu->r[11] = _t0;
|
|
/* 0276BF44 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276BF48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276BF4C */ cpu->r[12] = cpu->r[12] + 0xFFFFDDE4u;
|
|
/* 0276BF50 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BF50 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276BF50 */ if (_t2) goto L_0276BF54; else goto L_0276BF68;
|
|
L_0276BF54: ; // 0x276bf54
|
|
/* 0276BF54 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276BF58 */ cpu->r[8] = 0x00000001u;
|
|
/* 0276BF5C */ cpu->r[9] = cpu->r[9] + 0x0000025Cu;
|
|
/* 0276BF60 */ _t3 = cpu->r[11] + 0x00000000u;
|
|
/* 0276BF60 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0276BF64 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0276BF64 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_0276BF68: ; // 0x276bf68
|
|
/* 0276BF68 */ cpu->r[10] = cpu->r[4] ^ cpu->r[12];
|
|
/* 0276BF6C */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 0276BF70 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0276BF74 */ return;
|
|
}
|
|
|
|
// fn_0276BF78 @ 0x276bf78
|
|
void Gambit_fn_0276BF78(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276BF78: ; // 0x276bf78
|
|
/* 0276BF78 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276BF78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BF7C */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0276BF7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276BF80 */ cpu->ctr = cpu->r[0];
|
|
/* 0276BF84 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276BF88 @ 0x276bf88
|
|
void Gambit_fn_0276BF88(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276BF88: ; // 0x276bf88
|
|
/* 0276BF88 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276BF88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BF8C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0276BF8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276BF90 */ cpu->ctr = cpu->r[0];
|
|
/* 0276BF94 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276BF98 @ 0x276bf98
|
|
void Gambit_fn_0276BF98(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276BF98: ; // 0x276bf98
|
|
/* 0276BF98 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276BF98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276BF9C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0276BF9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276BFA0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276BFA4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276BFA8 @ 0x276bfa8
|
|
void Gambit_fn_0276BFA8(CPUState* cpu) {
|
|
L_0276BFA8: ; // 0x276bfa8
|
|
/* 0276BFA8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276BFAC */ return;
|
|
}
|
|
|
|
// fn_0276BFB0 @ 0x276bfb0
|
|
void Gambit_fn_0276BFB0(CPUState* cpu) {
|
|
L_0276BFB0: ; // 0x276bfb0
|
|
/* 0276BFB0 */ return;
|
|
}
|
|
|
|
// fn_0276BFB4 @ 0x276bfb4
|
|
void Gambit_fn_0276BFB4(CPUState* cpu) {
|
|
L_0276BFB4: ; // 0x276bfb4
|
|
/* 0276BFB4 */ return;
|
|
}
|
|
|
|
// fn_0276BFB8 @ 0x276bfb8
|
|
void Gambit_fn_0276BFB8(CPUState* cpu) {
|
|
L_0276BFB8: ; // 0x276bfb8
|
|
/* 0276BFB8 */ return;
|
|
}
|
|
|
|
// fn_0276BFBC @ 0x276bfbc
|
|
void Gambit_fn_0276BFBC(CPUState* cpu) {
|
|
L_0276BFBC: ; // 0x276bfbc
|
|
/* 0276BFBC */ return;
|
|
}
|
|
|
|
// fn_0276BFC0 @ 0x276bfc0
|
|
void Gambit_fn_0276BFC0(CPUState* cpu) {
|
|
L_0276BFC0: ; // 0x276bfc0
|
|
/* 0276BFC0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276BFC4 */ return;
|
|
}
|
|
|
|
// fn_0276BFC8 @ 0x276bfc8
|
|
void Gambit_fn_0276BFC8(CPUState* cpu) {
|
|
L_0276BFC8: ; // 0x276bfc8
|
|
/* 0276BFC8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276BFCC */ return;
|
|
}
|
|
|
|
// fn_0276BFD0 @ 0x276bfd0
|
|
void Gambit_fn_0276BFD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0276BFD0: ; // 0x276bfd0
|
|
/* 0276BFD0 */ cpu->r[0] = cpu->lr;
|
|
/* 0276BFD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276BFD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276BFD4 */ cpu->r[1] = _t0;
|
|
/* 0276BFD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276BFD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276BFDC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276BFDC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276BFE0 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0276BFE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276BFE4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276BFE8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276BFEC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276BFF0 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276BFF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276BFF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276BFF8 */ cpu->r[11] = 0x00000000u;
|
|
/* 0276BFFC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BFFC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276BFFC */ if (_t6) goto L_0276C008; else goto L_0276C000;
|
|
L_0276C000: ; // 0x276c000
|
|
/* 0276C000 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 0276C000 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C004 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0276C004 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_0276C008: ; // 0x276c008
|
|
/* 0276C008 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 0276C008 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C00C */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 0276C00C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C010 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276C010 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C014 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C018 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276C01C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276C020 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C020 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C024 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C028 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C02C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276C030 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276C034 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276C034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276C038 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C038 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276C03C */ cpu->lr = cpu->r[0];
|
|
/* 0276C040 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C040 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276C044 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276C048 */ return;
|
|
}
|
|
|
|
// fn_0276BFD4 @ 0x276bfd4
|
|
void Gambit_fn_0276BFD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0276BFD4: ; // 0x276bfd4
|
|
/* 0276BFD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276BFD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276BFD4 */ cpu->r[1] = _t0;
|
|
/* 0276BFD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276BFD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276BFDC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276BFDC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276BFE0 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0276BFE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276BFE4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276BFE8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276BFEC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276BFF0 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276BFF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276BFF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276BFF8 */ cpu->r[11] = 0x00000000u;
|
|
/* 0276BFFC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276BFFC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276BFFC */ if (_t6) goto L_0276C008; else goto L_0276C000;
|
|
L_0276C000: ; // 0x276c000
|
|
/* 0276C000 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 0276C000 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C004 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0276C004 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_0276C008: ; // 0x276c008
|
|
/* 0276C008 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 0276C008 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C00C */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 0276C00C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C010 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276C010 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C014 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C018 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276C01C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276C020 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C020 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C024 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C028 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C02C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276C030 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276C034 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276C034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276C038 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C038 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276C03C */ cpu->lr = cpu->r[0];
|
|
/* 0276C040 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C040 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276C044 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276C048 */ return;
|
|
}
|
|
|
|
// fn_0276C04C @ 0x276c04c
|
|
void Gambit_fn_0276C04C(CPUState* cpu) {
|
|
L_0276C04C: ; // 0x276c04c
|
|
/* 0276C04C */ return;
|
|
}
|
|
|
|
// fn_0276C050 @ 0x276c050
|
|
void Gambit_fn_0276C050(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276C050: ; // 0x276c050
|
|
/* 0276C050 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C054 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C054 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C054 */ cpu->r[1] = _t0;
|
|
/* 0276C058 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C058 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C05C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C05C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C060 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0276C060 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C064 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C068 */ /* nop */
|
|
/* 0276C06C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C070 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C074 */ Gambit_fn_0276C270(cpu);
|
|
/* 0276C078 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C07C */ cpu->lr = cpu->r[0];
|
|
/* 0276C080 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C080 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C084 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C088 */ return;
|
|
}
|
|
|
|
// fn_0276C054 @ 0x276c054
|
|
void Gambit_fn_0276C054(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276C054: ; // 0x276c054
|
|
/* 0276C054 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C054 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C054 */ cpu->r[1] = _t0;
|
|
/* 0276C058 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C058 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C05C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C05C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C060 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0276C060 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C064 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C068 */ /* nop */
|
|
/* 0276C06C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C070 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C074 */ Gambit_fn_0276C270(cpu);
|
|
/* 0276C078 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C07C */ cpu->lr = cpu->r[0];
|
|
/* 0276C080 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C080 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C084 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C088 */ return;
|
|
}
|
|
|
|
// fn_0276C08C @ 0x276c08c
|
|
void Gambit_fn_0276C08C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276C08C: ; // 0x276c08c
|
|
/* 0276C08C */ cpu->r[3] = cpu->r[3] + 0x000001CCu;
|
|
/* 0276C090 */ goto L_0276C578;
|
|
L_0276C578: ; // 0x276c578
|
|
/* 0276C578 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C57C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C57C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C57C */ cpu->r[1] = _t0;
|
|
/* 0276C580 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C580 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C584 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C588 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C588 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C58C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0276C58C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C590 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276C594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C598 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0276C598 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0276C59C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C59C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C59C */ if (_t6) goto L_0276C5C4; else goto L_0276C5A0;
|
|
L_0276C5A0: ; // 0x276c5a0
|
|
/* 0276C5A0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0276C5A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276C5A4 */ /* nop */
|
|
/* 0276C5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276C5AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C5AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C5AC */ if (_t9) goto L_0276C5B0; else goto L_0276C5C4;
|
|
L_0276C5B0: ; // 0x276c5b0
|
|
/* 0276C5B0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C5B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C5B4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C5B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C5BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C5C4: ; // 0x276c5c4
|
|
/* 0276C5C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C8 */ Gambit_fn_0276C4F0(cpu);
|
|
/* 0276C5CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5D0 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0276C5D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C5D8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C5D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C5DC */ cpu->lr = cpu->r[0];
|
|
/* 0276C5E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C5E4 */ return;
|
|
}
|
|
|
|
// fn_0276C094 @ 0x276c094
|
|
void Gambit_fn_0276C094(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276C094: ; // 0x276c094
|
|
/* 0276C094 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C098 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C098 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C098 */ cpu->r[1] = _t0;
|
|
/* 0276C09C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C09C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C0A0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C0A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C0A4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0276C0A4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C0A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C0AC */ /* nop */
|
|
/* 0276C0B0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C0B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C0B8 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276C0BC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C0BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C0C0 */ cpu->lr = cpu->r[0];
|
|
/* 0276C0C4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C0C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C0C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C0CC */ return;
|
|
}
|
|
|
|
// fn_0276C098 @ 0x276c098
|
|
void Gambit_fn_0276C098(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276C098: ; // 0x276c098
|
|
/* 0276C098 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C098 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C098 */ cpu->r[1] = _t0;
|
|
/* 0276C09C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C09C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C0A0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C0A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C0A4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0276C0A4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C0A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C0AC */ /* nop */
|
|
/* 0276C0B0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C0B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C0B8 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276C0BC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C0BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C0C0 */ cpu->lr = cpu->r[0];
|
|
/* 0276C0C4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C0C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C0C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C0CC */ return;
|
|
}
|
|
|
|
// fn_0276C0D0 @ 0x276c0d0
|
|
void Gambit_fn_0276C0D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276C0D0: ; // 0x276c0d0
|
|
/* 0276C0D0 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C0D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C0D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C0D4 */ cpu->r[1] = _t0;
|
|
/* 0276C0D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C0D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C0DC */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C0E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C0E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C0E4 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 0276C0E4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C0E8 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276C0EC */ /* nop */
|
|
/* 0276C0F0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C0F4 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276C0F8 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276C0FC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C0FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C100 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C100 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C104 */ cpu->lr = cpu->r[0];
|
|
/* 0276C108 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C10C */ return;
|
|
}
|
|
|
|
// fn_0276C0D4 @ 0x276c0d4
|
|
void Gambit_fn_0276C0D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276C0D4: ; // 0x276c0d4
|
|
/* 0276C0D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C0D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C0D4 */ cpu->r[1] = _t0;
|
|
/* 0276C0D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C0D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C0DC */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C0E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C0E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C0E4 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 0276C0E4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C0E8 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276C0EC */ /* nop */
|
|
/* 0276C0F0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C0F4 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276C0F8 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276C0FC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C0FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C100 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C100 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C104 */ cpu->lr = cpu->r[0];
|
|
/* 0276C108 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C10C */ return;
|
|
}
|
|
|
|
// fn_0276C110 @ 0x276c110
|
|
void Gambit_fn_0276C110(CPUState* cpu) {
|
|
L_0276C110: ; // 0x276c110
|
|
/* 0276C110 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276C114 */ return;
|
|
}
|
|
|
|
// fn_0276C118 @ 0x276c118
|
|
void Gambit_fn_0276C118(CPUState* cpu) {
|
|
L_0276C118: ; // 0x276c118
|
|
/* 0276C118 */ cpu->r[3] = 0x10100000u;
|
|
/* 0276C11C */ cpu->r[3] = cpu->r[3] + 0x000002C4u;
|
|
/* 0276C120 */ return;
|
|
}
|
|
|
|
// fn_0276C124 @ 0x276c124
|
|
void Gambit_fn_0276C124(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _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_0276C124: ; // 0x276c124
|
|
/* 0276C124 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276C128 */ _t0 = cpu->r[10] + 0x000012D4u;
|
|
/* 0276C128 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C12C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276C130 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276C134 */ cpu->r[10] = cpu->r[10] + 0x000012D8u;
|
|
/* 0276C138 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C138 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276C138 */ if (_t2) goto L_0276C13C; else goto L_0276C154;
|
|
L_0276C13C: ; // 0x276c13c
|
|
/* 0276C13C */ cpu->r[0] = 0x10100000u;
|
|
/* 0276C140 */ cpu->r[9] = 0x00000001u;
|
|
/* 0276C144 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276C148 */ cpu->r[0] = cpu->r[0] + 0x000002B4u;
|
|
/* 0276C14C */ _t3 = cpu->r[11] + 0x000012D4u;
|
|
/* 0276C14C */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0276C150 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0276C150 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0276C154: ; // 0x276c154
|
|
/* 0276C154 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0276C158 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C158 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C158 */ if (_t6) goto L_0276C15C; else goto L_0276C164;
|
|
L_0276C15C: ; // 0x276c15c
|
|
/* 0276C15C */ cpu->r[3] = 0x00000001u;
|
|
/* 0276C160 */ return;
|
|
L_0276C164: ; // 0x276c164
|
|
/* 0276C164 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276C168 */ _t7 = cpu->r[9] + 0x000012CCu;
|
|
/* 0276C168 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C16C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276C170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276C174 */ cpu->r[11] = cpu->r[11] + 0x000012D0u;
|
|
/* 0276C178 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C178 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C178 */ if (_t9) goto L_0276C17C; else goto L_0276C194;
|
|
L_0276C17C: ; // 0x276c17c
|
|
/* 0276C17C */ cpu->r[9] = 0x10100000u;
|
|
/* 0276C180 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276C184 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276C188 */ cpu->r[9] = cpu->r[9] + 0x000002A4u;
|
|
/* 0276C18C */ _t10 = cpu->r[10] + 0x000012CCu;
|
|
/* 0276C18C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0276C190 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0276C190 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0276C194: ; // 0x276c194
|
|
/* 0276C194 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 0276C198 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C198 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276C198 */ if (_t13) goto L_0276C19C; else goto L_0276C1A4;
|
|
L_0276C19C: ; // 0x276c19c
|
|
/* 0276C19C */ cpu->r[0] = 0x00000001u;
|
|
/* 0276C1A0 */ goto L_0276C25C;
|
|
L_0276C1A4: ; // 0x276c1a4
|
|
/* 0276C1A4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276C1A8 */ _t14 = cpu->r[11] + 0xFFFFDB24u;
|
|
/* 0276C1A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276C1AC */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276C1B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0276C1B4 */ cpu->r[9] = cpu->r[9] + 0xFFFFDB28u;
|
|
/* 0276C1B8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C1B8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0276C1B8 */ if (_t16) goto L_0276C1BC; else goto L_0276C1D4;
|
|
L_0276C1BC: ; // 0x276c1bc
|
|
/* 0276C1BC */ cpu->r[11] = 0x10100000u;
|
|
/* 0276C1C0 */ cpu->r[10] = 0x00000001u;
|
|
/* 0276C1C4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276C1C8 */ cpu->r[11] = cpu->r[11] + 0x00000294u;
|
|
/* 0276C1CC */ _t17 = cpu->r[12] + 0xFFFFDB24u;
|
|
/* 0276C1CC */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0276C1D0 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0276C1D0 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0276C1D4: ; // 0x276c1d4
|
|
/* 0276C1D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0276C1D8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C1D8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276C1D8 */ if (_t20) goto L_0276C1DC; else goto L_0276C1E4;
|
|
L_0276C1DC: ; // 0x276c1dc
|
|
/* 0276C1DC */ cpu->r[0] = 0x00000001u;
|
|
/* 0276C1E0 */ goto L_0276C258;
|
|
L_0276C1E4: ; // 0x276c1e4
|
|
/* 0276C1E4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276C1E8 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 0276C1E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276C1E8 */ cpu->r[9] = _t21;
|
|
/* 0276C1EC */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276C1F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C1F4 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 0276C1F8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C1F8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0276C1F8 */ if (_t23) goto L_0276C1FC; else goto L_0276C210;
|
|
L_0276C1FC: ; // 0x276c1fc
|
|
/* 0276C1FC */ cpu->r[0] = 0x10100000u;
|
|
/* 0276C200 */ cpu->r[11] = 0x00000001u;
|
|
/* 0276C204 */ cpu->r[0] = cpu->r[0] + 0x00000284u;
|
|
/* 0276C208 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0276C208 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0276C20C */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 0276C20C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0276C210: ; // 0x276c210
|
|
/* 0276C210 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0276C214 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C214 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0276C214 */ if (_t27) goto L_0276C218; else goto L_0276C220;
|
|
L_0276C218: ; // 0x276c218
|
|
/* 0276C218 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276C21C */ goto L_0276C258;
|
|
L_0276C220: ; // 0x276c220
|
|
/* 0276C220 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276C224 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 0276C224 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276C224 */ cpu->r[10] = _t28;
|
|
/* 0276C228 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276C22C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276C230 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0276C234 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C234 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0276C234 */ if (_t30) goto L_0276C238; else goto L_0276C24C;
|
|
L_0276C238: ; // 0x276c238
|
|
/* 0276C238 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276C23C */ cpu->r[0] = 0x00000001u;
|
|
/* 0276C240 */ cpu->r[9] = cpu->r[9] + 0x0000025Cu;
|
|
/* 0276C244 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0276C244 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0276C248 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 0276C248 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0276C24C: ; // 0x276c24c
|
|
/* 0276C24C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0276C250 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0276C254 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0276C258: ; // 0x276c258
|
|
/* 0276C258 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0276C25C: ; // 0x276c25c
|
|
/* 0276C25C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0276C260 */ return;
|
|
}
|
|
|
|
// fn_0276C264 @ 0x276c264
|
|
void Gambit_fn_0276C264(CPUState* cpu) {
|
|
L_0276C264: ; // 0x276c264
|
|
/* 0276C264 */ cpu->r[3] = 0x10100000u;
|
|
/* 0276C268 */ cpu->r[3] = cpu->r[3] + 0x000002D8u;
|
|
/* 0276C26C */ return;
|
|
}
|
|
|
|
// fn_0276C270 @ 0x276c270
|
|
void Gambit_fn_0276C270(CPUState* 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_0276C270: ; // 0x276c270
|
|
/* 0276C270 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276C270 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0276C274 */ /* nop */
|
|
/* 0276C278 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0276C278 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276C27C */ cpu->r[8] = cpu->r[0];
|
|
/* 0276C280 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0276C284 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0276C284 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0276C288 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C288 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276C288 */ if (_t4) goto L_0276C28C; else goto L_0276C2A4;
|
|
L_0276C28C: ; // 0x276c28c
|
|
/* 0276C28C */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C290 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0276C294 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0276C294 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0276C298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276C29C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C29C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276C29C */ if (_t7) goto L_0276C2A0; else goto L_0276C2B0;
|
|
L_0276C2A0: ; // 0x276c2a0
|
|
/* 0276C2A0 */ return;
|
|
L_0276C2A4: ; // 0x276c2a4
|
|
/* 0276C2A4 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C2A4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0276C2A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276C2AC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C2AC */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276C2AC */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C2AC */ goto L_0276C2B0;
|
|
L_0276C2B0: ; // 0x276c2b0
|
|
/* 0276C2B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0276C2B4 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0276C2B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C2B8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C2B8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276C2B8 */ if (_t13) goto L_0276C2BC; else goto L_0276C2C4;
|
|
L_0276C2BC: ; // 0x276c2bc
|
|
/* 0276C2BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C2C0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0276C2C4: ; // 0x276c2c4
|
|
/* 0276C2C4 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C2C4 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0276C2C8 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0276C2C8 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0276C2CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C2D0 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C2D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276C2D4 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0276C2D8 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C2D8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276C2D8 */ if (_t18) goto L_0276C2F0; else goto L_0276C2DC;
|
|
L_0276C2DC: ; // 0x276c2dc
|
|
/* 0276C2DC */ /* nop */
|
|
/* 0276C2E0 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0276C2E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276C2E4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C2E8 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0276C2EC */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C2EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0276C2F0: ; // 0x276c2f0
|
|
/* 0276C2F0 */ cpu->ctr = cpu->r[11];
|
|
/* 0276C2F4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C2F8 @ 0x276c2f8
|
|
void Gambit_fn_0276C2F8(CPUState* 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_0276C2F8: ; // 0x276c2f8
|
|
/* 0276C2F8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276C2F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0276C2FC */ /* nop */
|
|
/* 0276C300 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0276C300 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276C304 */ cpu->r[8] = cpu->r[0];
|
|
/* 0276C308 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0276C30C */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0276C30C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0276C310 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C310 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276C310 */ if (_t4) goto L_0276C314; else goto L_0276C32C;
|
|
L_0276C314: ; // 0x276c314
|
|
/* 0276C314 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C318 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0276C31C */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0276C31C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0276C320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276C324 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C324 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276C324 */ if (_t7) goto L_0276C328; else goto L_0276C338;
|
|
L_0276C328: ; // 0x276c328
|
|
/* 0276C328 */ return;
|
|
L_0276C32C: ; // 0x276c32c
|
|
/* 0276C32C */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C32C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0276C330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276C334 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C334 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276C334 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C334 */ goto L_0276C338;
|
|
L_0276C338: ; // 0x276c338
|
|
/* 0276C338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0276C33C */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0276C33C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C340 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C340 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276C340 */ if (_t13) goto L_0276C344; else goto L_0276C34C;
|
|
L_0276C344: ; // 0x276c344
|
|
/* 0276C344 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C348 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0276C34C: ; // 0x276c34c
|
|
/* 0276C34C */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C34C */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0276C350 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0276C350 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0276C354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C358 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C358 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276C35C */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0276C360 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C360 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276C360 */ if (_t18) goto L_0276C378; else goto L_0276C364;
|
|
L_0276C364: ; // 0x276c364
|
|
/* 0276C364 */ /* nop */
|
|
/* 0276C368 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0276C368 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276C36C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C370 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0276C374 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C374 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0276C378: ; // 0x276c378
|
|
/* 0276C378 */ cpu->ctr = cpu->r[11];
|
|
/* 0276C37C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C380 @ 0x276c380
|
|
void Gambit_fn_0276C380(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276C380: ; // 0x276c380
|
|
/* 0276C380 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C384 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C384 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C384 */ cpu->r[1] = _t0;
|
|
/* 0276C388 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C388 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C38C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C390 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C390 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C394 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0276C394 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C398 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276C39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C3A0 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0276C3A0 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0276C3A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C3A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C3A4 */ if (_t6) goto L_0276C3CC; else goto L_0276C3A8;
|
|
L_0276C3A8: ; // 0x276c3a8
|
|
/* 0276C3A8 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0276C3A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276C3AC */ /* nop */
|
|
/* 0276C3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276C3B4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C3B4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C3B4 */ if (_t9) goto L_0276C3B8; else goto L_0276C3CC;
|
|
L_0276C3B8: ; // 0x276c3b8
|
|
/* 0276C3B8 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C3B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C3BC */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C3BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C3C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C3C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C3C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C3CC: ; // 0x276c3cc
|
|
/* 0276C3CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C3D0 */ Gambit_fn_0276C2F8(cpu);
|
|
/* 0276C3D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C3D8 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0276C3DC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C3DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C3E0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C3E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C3E4 */ cpu->lr = cpu->r[0];
|
|
/* 0276C3E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C3EC */ return;
|
|
}
|
|
|
|
// fn_0276C384 @ 0x276c384
|
|
void Gambit_fn_0276C384(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276C384: ; // 0x276c384
|
|
/* 0276C384 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C384 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C384 */ cpu->r[1] = _t0;
|
|
/* 0276C388 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C388 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C38C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C390 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C390 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C394 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0276C394 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C398 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276C39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C3A0 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0276C3A0 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0276C3A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C3A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C3A4 */ if (_t6) goto L_0276C3CC; else goto L_0276C3A8;
|
|
L_0276C3A8: ; // 0x276c3a8
|
|
/* 0276C3A8 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0276C3A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276C3AC */ /* nop */
|
|
/* 0276C3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276C3B4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C3B4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C3B4 */ if (_t9) goto L_0276C3B8; else goto L_0276C3CC;
|
|
L_0276C3B8: ; // 0x276c3b8
|
|
/* 0276C3B8 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C3B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C3BC */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C3BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C3C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C3C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C3C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C3CC: ; // 0x276c3cc
|
|
/* 0276C3CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C3D0 */ Gambit_fn_0276C2F8(cpu);
|
|
/* 0276C3D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C3D8 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0276C3DC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C3DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C3E0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C3E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C3E4 */ cpu->lr = cpu->r[0];
|
|
/* 0276C3E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C3EC */ return;
|
|
}
|
|
|
|
// fn_0276C3F0 @ 0x276c3f0
|
|
void Gambit_fn_0276C3F0(CPUState* 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_0276C3F0: ; // 0x276c3f0
|
|
/* 0276C3F0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276C3F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0276C3F4 */ /* nop */
|
|
/* 0276C3F8 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0276C3F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276C3FC */ cpu->r[7] = cpu->r[0];
|
|
/* 0276C400 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0276C404 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0276C404 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0276C408 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C408 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276C408 */ if (_t4) goto L_0276C40C; else goto L_0276C424;
|
|
L_0276C40C: ; // 0x276c40c
|
|
/* 0276C40C */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C410 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0276C414 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0276C414 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0276C418 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0276C41C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C41C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276C41C */ if (_t7) goto L_0276C420; else goto L_0276C430;
|
|
L_0276C420: ; // 0x276c420
|
|
/* 0276C420 */ return;
|
|
L_0276C424: ; // 0x276c424
|
|
/* 0276C424 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C424 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0276C428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0276C42C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C42C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276C42C */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C42C */ goto L_0276C430;
|
|
L_0276C430: ; // 0x276c430
|
|
/* 0276C430 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0276C434 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0276C434 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C438 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C438 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276C438 */ if (_t13) goto L_0276C43C; else goto L_0276C444;
|
|
L_0276C43C: ; // 0x276c43c
|
|
/* 0276C43C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C440 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0276C444: ; // 0x276c444
|
|
/* 0276C444 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C444 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0276C448 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0276C448 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0276C44C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0276C450 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C450 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276C454 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0276C458 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C458 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276C458 */ if (_t18) goto L_0276C470; else goto L_0276C45C;
|
|
L_0276C45C: ; // 0x276c45c
|
|
/* 0276C45C */ /* nop */
|
|
/* 0276C460 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0276C460 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276C464 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C468 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0276C46C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C46C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0276C470: ; // 0x276c470
|
|
/* 0276C470 */ cpu->ctr = cpu->r[11];
|
|
/* 0276C474 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C478 @ 0x276c478
|
|
void Gambit_fn_0276C478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276C478: ; // 0x276c478
|
|
/* 0276C478 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C47C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C47C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C47C */ cpu->r[1] = _t0;
|
|
/* 0276C480 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C480 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276C484 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C484 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276C488 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276C48C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C48C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276C490 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0276C490 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0276C494 */ /* nop */
|
|
/* 0276C498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0276C49C */ cpu->r[31] = cpu->r[4];
|
|
/* 0276C4A0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C4A0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C4A0 */ if (_t6) goto L_0276C4A4; else goto L_0276C4B8;
|
|
L_0276C4A4: ; // 0x276c4a4
|
|
/* 0276C4A4 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0276C4A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C4A8 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0276C4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276C4AC */ cpu->ctr = cpu->r[0];
|
|
/* 0276C4B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C4B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C4B8: ; // 0x276c4b8
|
|
/* 0276C4B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C4BC */ cpu->r[4] = cpu->r[31];
|
|
/* 0276C4C0 */ Gambit_fn_0276C3F0(cpu);
|
|
/* 0276C4C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C4C8 */ /* nop */
|
|
/* 0276C4CC */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C4D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C4D4 */ Gambit_fn_0276C270(cpu);
|
|
/* 0276C4D8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C4D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C4DC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C4DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C4E0 */ cpu->lr = cpu->r[0];
|
|
/* 0276C4E4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C4E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C4E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C4EC */ return;
|
|
}
|
|
|
|
// fn_0276C47C @ 0x276c47c
|
|
void Gambit_fn_0276C47C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276C47C: ; // 0x276c47c
|
|
/* 0276C47C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C47C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C47C */ cpu->r[1] = _t0;
|
|
/* 0276C480 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C480 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276C484 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C484 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276C488 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276C48C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C48C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276C490 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0276C490 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0276C494 */ /* nop */
|
|
/* 0276C498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0276C49C */ cpu->r[31] = cpu->r[4];
|
|
/* 0276C4A0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C4A0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C4A0 */ if (_t6) goto L_0276C4A4; else goto L_0276C4B8;
|
|
L_0276C4A4: ; // 0x276c4a4
|
|
/* 0276C4A4 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0276C4A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C4A8 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0276C4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276C4AC */ cpu->ctr = cpu->r[0];
|
|
/* 0276C4B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C4B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C4B8: ; // 0x276c4b8
|
|
/* 0276C4B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C4BC */ cpu->r[4] = cpu->r[31];
|
|
/* 0276C4C0 */ Gambit_fn_0276C3F0(cpu);
|
|
/* 0276C4C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C4C8 */ /* nop */
|
|
/* 0276C4CC */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C4D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C4D4 */ Gambit_fn_0276C270(cpu);
|
|
/* 0276C4D8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C4D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C4DC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C4DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C4E0 */ cpu->lr = cpu->r[0];
|
|
/* 0276C4E4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C4E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C4E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C4EC */ return;
|
|
}
|
|
|
|
// fn_0276C4F0 @ 0x276c4f0
|
|
void Gambit_fn_0276C4F0(CPUState* 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_0276C4F0: ; // 0x276c4f0
|
|
/* 0276C4F0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276C4F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0276C4F4 */ /* nop */
|
|
/* 0276C4F8 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0276C4F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276C4FC */ cpu->r[8] = cpu->r[0];
|
|
/* 0276C500 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0276C504 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0276C504 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0276C508 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C508 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276C508 */ if (_t4) goto L_0276C50C; else goto L_0276C524;
|
|
L_0276C50C: ; // 0x276c50c
|
|
/* 0276C50C */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C510 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0276C514 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0276C514 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0276C518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276C51C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C51C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276C51C */ if (_t7) goto L_0276C520; else goto L_0276C530;
|
|
L_0276C520: ; // 0x276c520
|
|
/* 0276C520 */ return;
|
|
L_0276C524: ; // 0x276c524
|
|
/* 0276C524 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C524 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0276C528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276C52C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C52C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276C52C */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C52C */ goto L_0276C530;
|
|
L_0276C530: ; // 0x276c530
|
|
/* 0276C530 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0276C534 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0276C534 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C538 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C538 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276C538 */ if (_t13) goto L_0276C53C; else goto L_0276C544;
|
|
L_0276C53C: ; // 0x276c53c
|
|
/* 0276C53C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C540 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0276C544: ; // 0x276c544
|
|
/* 0276C544 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C544 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0276C548 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0276C548 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0276C54C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C550 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C550 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276C554 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0276C558 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C558 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276C558 */ if (_t18) goto L_0276C570; else goto L_0276C55C;
|
|
L_0276C55C: ; // 0x276c55c
|
|
/* 0276C55C */ /* nop */
|
|
/* 0276C560 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0276C560 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276C564 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C568 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0276C56C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C56C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0276C570: ; // 0x276c570
|
|
/* 0276C570 */ cpu->ctr = cpu->r[11];
|
|
/* 0276C574 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C578 @ 0x276c578
|
|
void Gambit_fn_0276C578(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276C578: ; // 0x276c578
|
|
/* 0276C578 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C57C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C57C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C57C */ cpu->r[1] = _t0;
|
|
/* 0276C580 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C580 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C584 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C588 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C588 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C58C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0276C58C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C590 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276C594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C598 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0276C598 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0276C59C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C59C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C59C */ if (_t6) goto L_0276C5C4; else goto L_0276C5A0;
|
|
L_0276C5A0: ; // 0x276c5a0
|
|
/* 0276C5A0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0276C5A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276C5A4 */ /* nop */
|
|
/* 0276C5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276C5AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C5AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C5AC */ if (_t9) goto L_0276C5B0; else goto L_0276C5C4;
|
|
L_0276C5B0: ; // 0x276c5b0
|
|
/* 0276C5B0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C5B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C5B4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C5B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C5BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C5C4: ; // 0x276c5c4
|
|
/* 0276C5C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C8 */ Gambit_fn_0276C4F0(cpu);
|
|
/* 0276C5CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5D0 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0276C5D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C5D8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C5D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C5DC */ cpu->lr = cpu->r[0];
|
|
/* 0276C5E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C5E4 */ return;
|
|
}
|
|
|
|
// fn_0276C57C @ 0x276c57c
|
|
void Gambit_fn_0276C57C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276C57C: ; // 0x276c57c
|
|
/* 0276C57C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C57C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C57C */ cpu->r[1] = _t0;
|
|
/* 0276C580 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C580 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C584 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C588 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C588 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C58C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0276C58C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C590 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276C594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C598 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0276C598 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0276C59C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C59C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C59C */ if (_t6) goto L_0276C5C4; else goto L_0276C5A0;
|
|
L_0276C5A0: ; // 0x276c5a0
|
|
/* 0276C5A0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0276C5A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276C5A4 */ /* nop */
|
|
/* 0276C5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276C5AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C5AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C5AC */ if (_t9) goto L_0276C5B0; else goto L_0276C5C4;
|
|
L_0276C5B0: ; // 0x276c5b0
|
|
/* 0276C5B0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C5B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C5B4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C5B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C5BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C5C4: ; // 0x276c5c4
|
|
/* 0276C5C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C8 */ Gambit_fn_0276C4F0(cpu);
|
|
/* 0276C5CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5D0 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0276C5D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C5D8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C5D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C5DC */ cpu->lr = cpu->r[0];
|
|
/* 0276C5E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C5E4 */ return;
|
|
}
|
|
|
|
// fn_0276C5E8 @ 0x276c5e8
|
|
void Gambit_fn_0276C5E8(CPUState* 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_0276C5E8: ; // 0x276c5e8
|
|
/* 0276C5E8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276C5E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0276C5EC */ /* nop */
|
|
/* 0276C5F0 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0276C5F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276C5F4 */ cpu->r[8] = cpu->r[0];
|
|
/* 0276C5F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0276C5FC */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0276C5FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0276C600 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C600 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276C600 */ if (_t4) goto L_0276C604; else goto L_0276C61C;
|
|
L_0276C604: ; // 0x276c604
|
|
/* 0276C604 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C608 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0276C60C */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0276C60C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0276C610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276C614 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C614 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276C614 */ if (_t7) goto L_0276C618; else goto L_0276C628;
|
|
L_0276C618: ; // 0x276c618
|
|
/* 0276C618 */ return;
|
|
L_0276C61C: ; // 0x276c61c
|
|
/* 0276C61C */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C61C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0276C620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276C624 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C624 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276C624 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C624 */ goto L_0276C628;
|
|
L_0276C628: ; // 0x276c628
|
|
/* 0276C628 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0276C62C */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0276C62C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C630 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C630 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276C630 */ if (_t13) goto L_0276C634; else goto L_0276C63C;
|
|
L_0276C634: ; // 0x276c634
|
|
/* 0276C634 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C638 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0276C63C: ; // 0x276c63c
|
|
/* 0276C63C */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C63C */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0276C640 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0276C640 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0276C644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C648 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C648 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276C64C */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0276C650 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C650 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276C650 */ if (_t18) goto L_0276C668; else goto L_0276C654;
|
|
L_0276C654: ; // 0x276c654
|
|
/* 0276C654 */ /* nop */
|
|
/* 0276C658 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0276C658 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276C65C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C660 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0276C664 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C664 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0276C668: ; // 0x276c668
|
|
/* 0276C668 */ cpu->ctr = cpu->r[11];
|
|
/* 0276C66C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C670 @ 0x276c670
|
|
void Gambit_fn_0276C670(CPUState* 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_0276C670: ; // 0x276c670
|
|
/* 0276C670 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276C670 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0276C674 */ /* nop */
|
|
/* 0276C678 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0276C678 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276C67C */ cpu->r[7] = cpu->r[0];
|
|
/* 0276C680 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0276C684 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0276C684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0276C688 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C688 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276C688 */ if (_t4) goto L_0276C68C; else goto L_0276C6A4;
|
|
L_0276C68C: ; // 0x276c68c
|
|
/* 0276C68C */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C690 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0276C694 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0276C694 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0276C698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0276C69C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C69C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276C69C */ if (_t7) goto L_0276C6A0; else goto L_0276C6B0;
|
|
L_0276C6A0: ; // 0x276c6a0
|
|
/* 0276C6A0 */ return;
|
|
L_0276C6A4: ; // 0x276c6a4
|
|
/* 0276C6A4 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C6A4 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0276C6A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0276C6AC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C6AC */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276C6AC */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C6AC */ goto L_0276C6B0;
|
|
L_0276C6B0: ; // 0x276c6b0
|
|
/* 0276C6B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0276C6B4 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0276C6B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C6B8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C6B8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276C6B8 */ if (_t13) goto L_0276C6BC; else goto L_0276C6C4;
|
|
L_0276C6BC: ; // 0x276c6bc
|
|
/* 0276C6BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C6C0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0276C6C4: ; // 0x276c6c4
|
|
/* 0276C6C4 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0276C6C4 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0276C6C8 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0276C6C8 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0276C6CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0276C6D0 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C6D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276C6D4 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0276C6D8 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276C6D8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276C6D8 */ if (_t18) goto L_0276C6F0; else goto L_0276C6DC;
|
|
L_0276C6DC: ; // 0x276c6dc
|
|
/* 0276C6DC */ /* nop */
|
|
/* 0276C6E0 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0276C6E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276C6E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276C6E8 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0276C6EC */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0276C6EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0276C6F0: ; // 0x276c6f0
|
|
/* 0276C6F0 */ cpu->ctr = cpu->r[11];
|
|
/* 0276C6F4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C6F8 @ 0x276c6f8
|
|
void Gambit_fn_0276C6F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276C6F8: ; // 0x276c6f8
|
|
/* 0276C6F8 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C6FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C6FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C6FC */ cpu->r[1] = _t0;
|
|
/* 0276C700 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C700 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276C704 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C704 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276C708 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276C70C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C70C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276C710 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0276C710 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0276C714 */ /* nop */
|
|
/* 0276C718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0276C71C */ cpu->r[31] = cpu->r[4];
|
|
/* 0276C720 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C720 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C720 */ if (_t6) goto L_0276C724; else goto L_0276C738;
|
|
L_0276C724: ; // 0x276c724
|
|
/* 0276C724 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0276C724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C728 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0276C728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276C72C */ cpu->ctr = cpu->r[0];
|
|
/* 0276C730 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C738: ; // 0x276c738
|
|
/* 0276C738 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C73C */ cpu->r[4] = cpu->r[31];
|
|
/* 0276C740 */ Gambit_fn_0276C670(cpu);
|
|
/* 0276C744 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C748 */ /* nop */
|
|
/* 0276C74C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C750 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C754 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276C758 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C75C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C75C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C760 */ cpu->lr = cpu->r[0];
|
|
/* 0276C764 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C768 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C76C */ return;
|
|
}
|
|
|
|
// fn_0276C6FC @ 0x276c6fc
|
|
void Gambit_fn_0276C6FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276C6FC: ; // 0x276c6fc
|
|
/* 0276C6FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C6FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C6FC */ cpu->r[1] = _t0;
|
|
/* 0276C700 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C700 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276C704 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C704 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276C708 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276C70C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C70C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276C710 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0276C710 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0276C714 */ /* nop */
|
|
/* 0276C718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0276C71C */ cpu->r[31] = cpu->r[4];
|
|
/* 0276C720 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C720 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C720 */ if (_t6) goto L_0276C724; else goto L_0276C738;
|
|
L_0276C724: ; // 0x276c724
|
|
/* 0276C724 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0276C724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C728 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0276C728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276C72C */ cpu->ctr = cpu->r[0];
|
|
/* 0276C730 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C738: ; // 0x276c738
|
|
/* 0276C738 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C73C */ cpu->r[4] = cpu->r[31];
|
|
/* 0276C740 */ Gambit_fn_0276C670(cpu);
|
|
/* 0276C744 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C748 */ /* nop */
|
|
/* 0276C74C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C750 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C754 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276C758 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C75C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C75C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C760 */ cpu->lr = cpu->r[0];
|
|
/* 0276C764 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C768 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C76C */ return;
|
|
}
|
|
|
|
// fn_0276C774 @ 0x276c774
|
|
void Gambit_fn_0276C774(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0276C774: ; // 0x276c774
|
|
/* 0276C774 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C774 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C774 */ cpu->r[1] = _t0;
|
|
/* 0276C778 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C778 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C77C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C77C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276C780 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C780 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C784 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C784 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276C784 */ if (_t4) goto L_0276C788; else goto L_0276C798;
|
|
L_0276C788: ; // 0x276c788
|
|
/* 0276C788 */ cpu->r[3] = 0x000002E0u;
|
|
/* 0276C78C */ Gambit_fn_02801A78(cpu);
|
|
/* 0276C790 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276C794 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C794 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C794 */ if (_t6) goto L_0276C7AC; else goto L_0276C798;
|
|
L_0276C798: ; // 0x276c798
|
|
/* 0276C798 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C79C */ Gambit_fn_0276D9B8(cpu);
|
|
/* 0276C7A0 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276C7A4 */ cpu->r[0] = cpu->r[0] + 0x000009A8u;
|
|
/* 0276C7A8 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C7A8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_0276C7AC: ; // 0x276c7ac
|
|
/* 0276C7AC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C7AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276C7B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C7B4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C7B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C7B8 */ cpu->lr = cpu->r[0];
|
|
/* 0276C7BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C7C0 */ return;
|
|
}
|
|
|
|
// fn_0276C7C4 @ 0x276c7c4
|
|
void Gambit_fn_0276C7C4(CPUState* 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_0276C7C4: ; // 0x276c7c4
|
|
/* 0276C7C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C7C8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0276C7C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C7C8 */ cpu->r[1] = _t0;
|
|
/* 0276C7CC */ cpu->r[11] = 0x10100000u;
|
|
/* 0276C7D0 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0276C7D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C7D4 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276C7D8 */ cpu->r[11] = cpu->r[11] + 0x00000914u;
|
|
/* 0276C7DC */ cpu->r[12] = cpu->r[12] + 0x00000998u;
|
|
/* 0276C7E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C7E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0276C7E4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C7E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0276C7E8 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276C7E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276C7EC */ cpu->r[0] = 0x10100000u;
|
|
/* 0276C7F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C7F4 */ cpu->r[0] = cpu->r[0] + 0x00000994u;
|
|
/* 0276C7F8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C7F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0276C7FC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0276C800 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0276C800 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276C804 */ Gambit_fn_02982574(cpu);
|
|
/* 0276C808 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276C80C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276C810 */ _t7 = cpu->r[11] + 0xFFFF97D0u;
|
|
/* 0276C810 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C814 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276C818 */ _t8 = cpu->r[10] + 0xFFFF97D8u;
|
|
/* 0276C818 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0276C81C */ _t9 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 0276C81C */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0276C820 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276C820 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0276C824 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276C828 */ _t11 = cpu->r[1] + 0x00000031u;
|
|
/* 0276C828 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0276C82C */ _t12 = cpu->r[12] + 0xFFFF97D4u;
|
|
/* 0276C82C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C830 */ _t13 = cpu->r[1] + 0x00000030u;
|
|
/* 0276C830 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[10]);
|
|
/* 0276C834 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0276C838 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276C838 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0276C83C */ Gambit_fn_02984F3C(cpu);
|
|
/* 0276C840 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276C844 */ cpu->r[0] = 0x00000006u;
|
|
/* 0276C848 */ _t15 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276C848 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276C84C */ cpu->r[8] = cpu->r[1] + 0x00000034u;
|
|
/* 0276C850 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0276C854 */ _t16 = cpu->r[1] + 0x00000038u;
|
|
/* 0276C854 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276C858 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C85C */ _t17 = cpu->r[12] + 0x00000248u;
|
|
/* 0276C85C */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276C860 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C864 */ cpu->r[7] = cpu->r[1] + 0x00000018u;
|
|
/* 0276C868 */ cpu->r[9] = 0x00000003u;
|
|
/* 0276C86C */ Gambit_fn_020022D4(cpu);
|
|
/* 0276C870 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276C874 */ _t18 = cpu->r[31] + 0x000002C4u;
|
|
/* 0276C874 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 0276C878 */ _t19 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276C878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276C87C */ _t20 = cpu->r[1] + 0x00000044u;
|
|
/* 0276C87C */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0276C880 */ cpu->lr = cpu->r[0];
|
|
/* 0276C884 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0276C888 */ return;
|
|
}
|
|
|
|
// fn_0276C7C8 @ 0x276c7c8
|
|
void Gambit_fn_0276C7C8(CPUState* 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_0276C7C8: ; // 0x276c7c8
|
|
/* 0276C7C8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0276C7C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C7C8 */ cpu->r[1] = _t0;
|
|
/* 0276C7CC */ cpu->r[11] = 0x10100000u;
|
|
/* 0276C7D0 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0276C7D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C7D4 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276C7D8 */ cpu->r[11] = cpu->r[11] + 0x00000914u;
|
|
/* 0276C7DC */ cpu->r[12] = cpu->r[12] + 0x00000998u;
|
|
/* 0276C7E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C7E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0276C7E4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C7E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0276C7E8 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276C7E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276C7EC */ cpu->r[0] = 0x10100000u;
|
|
/* 0276C7F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C7F4 */ cpu->r[0] = cpu->r[0] + 0x00000994u;
|
|
/* 0276C7F8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C7F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0276C7FC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0276C800 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0276C800 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276C804 */ Gambit_fn_02982574(cpu);
|
|
/* 0276C808 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276C80C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276C810 */ _t7 = cpu->r[11] + 0xFFFF97D0u;
|
|
/* 0276C810 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C814 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276C818 */ _t8 = cpu->r[10] + 0xFFFF97D8u;
|
|
/* 0276C818 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0276C81C */ _t9 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 0276C81C */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0276C820 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276C820 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0276C824 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276C828 */ _t11 = cpu->r[1] + 0x00000031u;
|
|
/* 0276C828 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0276C82C */ _t12 = cpu->r[12] + 0xFFFF97D4u;
|
|
/* 0276C82C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C830 */ _t13 = cpu->r[1] + 0x00000030u;
|
|
/* 0276C830 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[10]);
|
|
/* 0276C834 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0276C838 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276C838 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0276C83C */ Gambit_fn_02984F3C(cpu);
|
|
/* 0276C840 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276C844 */ cpu->r[0] = 0x00000006u;
|
|
/* 0276C848 */ _t15 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276C848 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276C84C */ cpu->r[8] = cpu->r[1] + 0x00000034u;
|
|
/* 0276C850 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0276C854 */ _t16 = cpu->r[1] + 0x00000038u;
|
|
/* 0276C854 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276C858 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C85C */ _t17 = cpu->r[12] + 0x00000248u;
|
|
/* 0276C85C */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276C860 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C864 */ cpu->r[7] = cpu->r[1] + 0x00000018u;
|
|
/* 0276C868 */ cpu->r[9] = 0x00000003u;
|
|
/* 0276C86C */ Gambit_fn_020022D4(cpu);
|
|
/* 0276C870 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276C874 */ _t18 = cpu->r[31] + 0x000002C4u;
|
|
/* 0276C874 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 0276C878 */ _t19 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276C878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276C87C */ _t20 = cpu->r[1] + 0x00000044u;
|
|
/* 0276C87C */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0276C880 */ cpu->lr = cpu->r[0];
|
|
/* 0276C884 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0276C888 */ return;
|
|
}
|
|
|
|
// fn_0276C88C @ 0x276c88c
|
|
void Gambit_fn_0276C88C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0276C88C: ; // 0x276c88c
|
|
/* 0276C88C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276C890 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276C894 */ _t0 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276C894 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C898 */ _t1 = cpu->r[11] + 0xFFFF8E88u;
|
|
/* 0276C898 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276C89C */ cpu->r[11] = cpu->r[12] + cpu->r[11];
|
|
/* 0276C8A0 */ _t2 = cpu->r[11] + 0x00000104u;
|
|
/* 0276C8A0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0276C8A4 */ _t3 = cpu->r[12] + 0x00000030u;
|
|
/* 0276C8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276C8A8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276C8AC */ _t4 = cpu->r[10] + cpu->r[0];
|
|
/* 0276C8AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C8B0 */ _t5 = cpu->r[9] + 0x00000004u;
|
|
/* 0276C8B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C8B4 */ _t6 = cpu->r[10] + 0x00000000u;
|
|
/* 0276C8B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276C8B8 */ _t7 = cpu->r[3] + 0x00000204u;
|
|
/* 0276C8B8 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0276C8BC */ _t8 = cpu->r[9] + 0x00000090u;
|
|
/* 0276C8BC */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0276C8C0 */ return;
|
|
}
|
|
|
|
// fn_0276C8C4 @ 0x276c8c4
|
|
void Gambit_fn_0276C8C4(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_0276C8C4: ; // 0x276c8c4
|
|
/* 0276C8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276C8C8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C8C8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0276C8C8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C8C8 */ goto L_0276C8CC;
|
|
L_0276C8CC: ; // 0x276c8cc
|
|
/* 0276C8CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276C8CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C8D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C8D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0276C8D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C8D0 */ goto L_0276C8D4;
|
|
L_0276C8D4: ; // 0x276c8d4
|
|
/* 0276C8D4 */ 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_0276C8D8 @ 0x276c8d8
|
|
void Gambit_fn_0276C8D8(CPUState* cpu) {
|
|
L_0276C8D8: ; // 0x276c8d8
|
|
/* 0276C8D8 */ return;
|
|
}
|
|
|
|
// fn_0276C8DC @ 0x276c8dc
|
|
void Gambit_fn_0276C8DC(CPUState* cpu) {
|
|
L_0276C8DC: ; // 0x276c8dc
|
|
/* 0276C8DC */ return;
|
|
}
|
|
|
|
// fn_0276C8E0 @ 0x276c8e0
|
|
void Gambit_fn_0276C8E0(CPUState* cpu) {
|
|
L_0276C8E0: ; // 0x276c8e0
|
|
/* 0276C8E0 */ return;
|
|
}
|
|
|
|
// fn_0276C8E4 @ 0x276c8e4
|
|
void Gambit_fn_0276C8E4(CPUState* cpu) {
|
|
L_0276C8E4: ; // 0x276c8e4
|
|
/* 0276C8E4 */ return;
|
|
}
|
|
|
|
// fn_0276C8E8 @ 0x276c8e8
|
|
void Gambit_fn_0276C8E8(CPUState* cpu) {
|
|
L_0276C8E8: ; // 0x276c8e8
|
|
/* 0276C8E8 */ return;
|
|
}
|
|
|
|
// fn_0276C8EC @ 0x276c8ec
|
|
void Gambit_fn_0276C8EC(CPUState* cpu) {
|
|
L_0276C8EC: ; // 0x276c8ec
|
|
/* 0276C8EC */ return;
|
|
}
|
|
|
|
// fn_0276C8F0 @ 0x276c8f0
|
|
void Gambit_fn_0276C8F0(CPUState* cpu) {
|
|
L_0276C8F0: ; // 0x276c8f0
|
|
/* 0276C8F0 */ return;
|
|
}
|
|
|
|
// fn_0276C8F4 @ 0x276c8f4
|
|
void Gambit_fn_0276C8F4(CPUState* cpu) {
|
|
L_0276C8F4: ; // 0x276c8f4
|
|
/* 0276C8F4 */ return;
|
|
}
|
|
|
|
// fn_0276C8F8 @ 0x276c8f8
|
|
void Gambit_fn_0276C8F8(CPUState* cpu) {
|
|
L_0276C8F8: ; // 0x276c8f8
|
|
/* 0276C8F8 */ return;
|
|
}
|
|
|
|
// fn_0276C8FC @ 0x276c8fc
|
|
void Gambit_fn_0276C8FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0276C8FC: ; // 0x276c8fc
|
|
/* 0276C8FC */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0276C8FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276C904 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C904 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276C904 */ if (_t2) goto L_0276C910; else goto L_0276C908;
|
|
L_0276C908: ; // 0x276c908
|
|
/* 0276C908 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0276C90C */ return;
|
|
L_0276C910: ; // 0x276c910
|
|
/* 0276C910 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276C914 */ return;
|
|
}
|
|
|
|
// fn_0276C918 @ 0x276c918
|
|
void Gambit_fn_0276C918(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0276C918: ; // 0x276c918
|
|
/* 0276C918 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0276C918 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C91C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276C920 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C920 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276C920 */ if (_t2) goto L_0276C92C; else goto L_0276C924;
|
|
L_0276C924: ; // 0x276c924
|
|
/* 0276C924 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0276C928 */ return;
|
|
L_0276C92C: ; // 0x276c92c
|
|
/* 0276C92C */ cpu->r[3] = 0x00000000u;
|
|
/* 0276C930 */ return;
|
|
}
|
|
|
|
// fn_0276C934 @ 0x276c934
|
|
void Gambit_fn_0276C934(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276C934: ; // 0x276c934
|
|
/* 0276C934 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276C934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C938 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276C938 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276C93C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C93C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276C93C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276C93C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C93C */ goto L_0276C940;
|
|
L_0276C940: ; // 0x276c940
|
|
/* 0276C940 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276C940 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C944 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0276C944 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C948 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C94C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C950 @ 0x276c950
|
|
void Gambit_fn_0276C950(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276C950: ; // 0x276c950
|
|
/* 0276C950 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276C950 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C954 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276C954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276C958 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C958 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276C958 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276C958 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C958 */ goto L_0276C95C;
|
|
L_0276C95C: ; // 0x276c95c
|
|
/* 0276C95C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276C95C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C960 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0276C960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C964 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C968 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C96C @ 0x276c96c
|
|
void Gambit_fn_0276C96C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276C96C: ; // 0x276c96c
|
|
/* 0276C96C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276C96C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C970 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276C970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276C974 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C974 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276C974 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276C974 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276C974 */ goto L_0276C978;
|
|
L_0276C978: ; // 0x276c978
|
|
/* 0276C978 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276C978 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276C97C */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0276C97C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276C980 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C984 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C988 @ 0x276c988
|
|
void Gambit_fn_0276C988(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276C988: ; // 0x276c988
|
|
/* 0276C988 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276C988 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C98C */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276C98C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276C990 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C994 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C998 @ 0x276c998
|
|
void Gambit_fn_0276C998(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0276C998: ; // 0x276c998
|
|
/* 0276C998 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C99C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C99C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C99C */ cpu->r[1] = _t0;
|
|
/* 0276C9A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C9A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C9A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C9A8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C9A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C9AC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276C9AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276C9B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0276C9B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C9B4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276C9B4 */ if (_t5) goto L_0276C9B8; else goto L_0276C9D4;
|
|
L_0276C9B8: ; // 0x276c9b8
|
|
/* 0276C9B8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C9B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276C9BC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0276C9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C9C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C9C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C9C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276C9CC */ cpu->r[0] = 0x00000002u;
|
|
/* 0276C9D0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276C9D0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0276C9D4: ; // 0x276c9d4
|
|
/* 0276C9D4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C9D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C9D8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C9D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C9DC */ cpu->lr = cpu->r[0];
|
|
/* 0276C9E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C9E4 */ return;
|
|
}
|
|
|
|
// fn_0276C99C @ 0x276c99c
|
|
void Gambit_fn_0276C99C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0276C99C: ; // 0x276c99c
|
|
/* 0276C99C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C99C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C99C */ cpu->r[1] = _t0;
|
|
/* 0276C9A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C9A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C9A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C9A8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C9A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C9AC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276C9AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276C9B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0276C9B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C9B4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276C9B4 */ if (_t5) goto L_0276C9B8; else goto L_0276C9D4;
|
|
L_0276C9B8: ; // 0x276c9b8
|
|
/* 0276C9B8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C9B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276C9BC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0276C9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C9C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C9C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C9C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276C9CC */ cpu->r[0] = 0x00000002u;
|
|
/* 0276C9D0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276C9D0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0276C9D4: ; // 0x276c9d4
|
|
/* 0276C9D4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C9D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C9D8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C9D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C9DC */ cpu->lr = cpu->r[0];
|
|
/* 0276C9E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C9E4 */ return;
|
|
}
|
|
|
|
// fn_0276C9E8 @ 0x276c9e8
|
|
void Gambit_fn_0276C9E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276C9E8: ; // 0x276c9e8
|
|
/* 0276C9E8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276C9E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C9EC */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0276C9EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276C9F0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C9F4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276C9F8 @ 0x276c9f8
|
|
void Gambit_fn_0276C9F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276C9F8: ; // 0x276c9f8
|
|
/* 0276C9F8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276C9F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276C9FC */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0276C9FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276CA00 */ cpu->ctr = cpu->r[0];
|
|
/* 0276CA04 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276CA08 @ 0x276ca08
|
|
void Gambit_fn_0276CA08(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276CA08: ; // 0x276ca08
|
|
/* 0276CA08 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276CA08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276CA0C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0276CA0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276CA10 */ cpu->ctr = cpu->r[0];
|
|
/* 0276CA14 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276CA18 @ 0x276ca18
|
|
void Gambit_fn_0276CA18(CPUState* cpu) {
|
|
L_0276CA18: ; // 0x276ca18
|
|
/* 0276CA18 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276CA1C */ return;
|
|
}
|
|
|
|
// fn_0276CA20 @ 0x276ca20
|
|
void Gambit_fn_0276CA20(CPUState* cpu) {
|
|
L_0276CA20: ; // 0x276ca20
|
|
/* 0276CA20 */ return;
|
|
}
|
|
|
|
// fn_0276CA24 @ 0x276ca24
|
|
void Gambit_fn_0276CA24(CPUState* cpu) {
|
|
L_0276CA24: ; // 0x276ca24
|
|
/* 0276CA24 */ return;
|
|
}
|
|
|
|
// fn_0276CA28 @ 0x276ca28
|
|
void Gambit_fn_0276CA28(CPUState* cpu) {
|
|
L_0276CA28: ; // 0x276ca28
|
|
/* 0276CA28 */ return;
|
|
}
|
|
|
|
// fn_0276CA2C @ 0x276ca2c
|
|
void Gambit_fn_0276CA2C(CPUState* cpu) {
|
|
L_0276CA2C: ; // 0x276ca2c
|
|
/* 0276CA2C */ return;
|
|
}
|
|
|
|
// fn_0276CA30 @ 0x276ca30
|
|
void Gambit_fn_0276CA30(CPUState* cpu) {
|
|
L_0276CA30: ; // 0x276ca30
|
|
/* 0276CA30 */ return;
|
|
}
|
|
|
|
// fn_0276CA34 @ 0x276ca34
|
|
void Gambit_fn_0276CA34(CPUState* cpu) {
|
|
L_0276CA34: ; // 0x276ca34
|
|
/* 0276CA34 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276CA38 */ return;
|
|
}
|
|
|
|
// fn_0276CA3C @ 0x276ca3c
|
|
void Gambit_fn_0276CA3C(CPUState* cpu) {
|
|
L_0276CA3C: ; // 0x276ca3c
|
|
/* 0276CA3C */ cpu->r[3] = 0x00000000u;
|
|
/* 0276CA40 */ return;
|
|
}
|
|
|
|
// fn_0276CA44 @ 0x276ca44
|
|
void Gambit_fn_0276CA44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0276CA44: ; // 0x276ca44
|
|
/* 0276CA44 */ cpu->r[0] = cpu->lr;
|
|
/* 0276CA48 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276CA48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276CA48 */ cpu->r[1] = _t0;
|
|
/* 0276CA4C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CA4C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276CA50 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276CA50 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276CA54 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0276CA54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276CA58 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276CA5C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276CA60 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276CA64 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276CA64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276CA68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276CA6C */ cpu->r[11] = 0x00000000u;
|
|
/* 0276CA70 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CA70 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276CA70 */ if (_t6) goto L_0276CA7C; else goto L_0276CA74;
|
|
L_0276CA74: ; // 0x276ca74
|
|
/* 0276CA74 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 0276CA74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276CA78 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0276CA78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_0276CA7C: ; // 0x276ca7c
|
|
/* 0276CA7C */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 0276CA7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276CA80 */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 0276CA80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276CA84 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276CA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276CA88 */ cpu->ctr = cpu->r[0];
|
|
/* 0276CA8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276CA90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276CA94 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CA94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276CA98 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0276CA98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276CA9C */ cpu->ctr = cpu->r[0];
|
|
/* 0276CAA0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276CAA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276CAA8 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276CAA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276CAAC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276CAAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276CAB0 */ cpu->lr = cpu->r[0];
|
|
/* 0276CAB4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CAB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276CAB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276CABC */ return;
|
|
}
|
|
|
|
// fn_0276CA48 @ 0x276ca48
|
|
void Gambit_fn_0276CA48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0276CA48: ; // 0x276ca48
|
|
/* 0276CA48 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276CA48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276CA48 */ cpu->r[1] = _t0;
|
|
/* 0276CA4C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CA4C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276CA50 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276CA50 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276CA54 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0276CA54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276CA58 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276CA5C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276CA60 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276CA64 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276CA64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276CA68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276CA6C */ cpu->r[11] = 0x00000000u;
|
|
/* 0276CA70 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CA70 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276CA70 */ if (_t6) goto L_0276CA7C; else goto L_0276CA74;
|
|
L_0276CA74: ; // 0x276ca74
|
|
/* 0276CA74 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 0276CA74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276CA78 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0276CA78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_0276CA7C: ; // 0x276ca7c
|
|
/* 0276CA7C */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 0276CA7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276CA80 */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 0276CA80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276CA84 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276CA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276CA88 */ cpu->ctr = cpu->r[0];
|
|
/* 0276CA8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276CA90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276CA94 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CA94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276CA98 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0276CA98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276CA9C */ cpu->ctr = cpu->r[0];
|
|
/* 0276CAA0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276CAA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276CAA8 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276CAA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276CAAC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276CAAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276CAB0 */ cpu->lr = cpu->r[0];
|
|
/* 0276CAB4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CAB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276CAB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276CABC */ return;
|
|
}
|
|
|
|
// fn_0276CAC0 @ 0x276cac0
|
|
void Gambit_fn_0276CAC0(CPUState* cpu) {
|
|
L_0276CAC0: ; // 0x276cac0
|
|
/* 0276CAC0 */ return;
|
|
}
|
|
|
|
// fn_0276CAC4 @ 0x276cac4
|
|
void Gambit_fn_0276CAC4(CPUState* cpu) {
|
|
L_0276CAC4: ; // 0x276cac4
|
|
/* 0276CAC4 */ return;
|
|
}
|
|
|
|
// fn_0276CAC8 @ 0x276cac8
|
|
void Gambit_fn_0276CAC8(CPUState* cpu) {
|
|
L_0276CAC8: ; // 0x276cac8
|
|
/* 0276CAC8 */ return;
|
|
}
|
|
|
|
// fn_0276CACC @ 0x276cacc
|
|
void Gambit_fn_0276CACC(CPUState* cpu) {
|
|
L_0276CACC: ; // 0x276cacc
|
|
/* 0276CACC */ return;
|
|
}
|
|
|
|
// fn_0276CAD0 @ 0x276cad0
|
|
void Gambit_fn_0276CAD0(CPUState* cpu) {
|
|
L_0276CAD0: ; // 0x276cad0
|
|
/* 0276CAD0 */ return;
|
|
}
|
|
|
|
// fn_0276CAD4 @ 0x276cad4
|
|
void Gambit_fn_0276CAD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276C578: ; // 0x276c578
|
|
/* 0276C578 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C57C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C57C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C57C */ cpu->r[1] = _t0;
|
|
/* 0276C580 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C580 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C584 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C588 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C588 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C58C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0276C58C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C590 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276C594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C598 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0276C598 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0276C59C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C59C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C59C */ if (_t6) goto L_0276C5C4; else goto L_0276C5A0;
|
|
L_0276C5A0: ; // 0x276c5a0
|
|
/* 0276C5A0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0276C5A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276C5A4 */ /* nop */
|
|
/* 0276C5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276C5AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C5AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C5AC */ if (_t9) goto L_0276C5B0; else goto L_0276C5C4;
|
|
L_0276C5B0: ; // 0x276c5b0
|
|
/* 0276C5B0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C5B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C5B4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C5B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C5BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C5C4: ; // 0x276c5c4
|
|
/* 0276C5C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C8 */ Gambit_fn_0276C4F0(cpu);
|
|
/* 0276C5CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5D0 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0276C5D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C5D8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C5D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C5DC */ cpu->lr = cpu->r[0];
|
|
/* 0276C5E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C5E4 */ return;
|
|
L_0276CAD4: ; // 0x276cad4
|
|
/* 0276CAD4 */ cpu->r[3] = cpu->r[3] + 0x000001CCu;
|
|
/* 0276CAD8 */ goto L_0276C578;
|
|
}
|
|
|
|
// fn_0276CADC @ 0x276cadc
|
|
void Gambit_fn_0276CADC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276CADC: ; // 0x276cadc
|
|
/* 0276CADC */ cpu->r[0] = cpu->lr;
|
|
/* 0276CAE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276CAE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276CAE0 */ cpu->r[1] = _t0;
|
|
/* 0276CAE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CAE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276CAE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276CAEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CAEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276CAF0 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 0276CAF0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276CAF4 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276CAF8 */ /* nop */
|
|
/* 0276CAFC */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276CB00 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276CB04 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276CB08 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CB08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276CB0C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CB0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276CB10 */ cpu->lr = cpu->r[0];
|
|
/* 0276CB14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276CB18 */ return;
|
|
}
|
|
|
|
// fn_0276CAE0 @ 0x276cae0
|
|
void Gambit_fn_0276CAE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276CAE0: ; // 0x276cae0
|
|
/* 0276CAE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276CAE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276CAE0 */ cpu->r[1] = _t0;
|
|
/* 0276CAE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CAE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276CAE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276CAEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CAEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276CAF0 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 0276CAF0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276CAF4 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276CAF8 */ /* nop */
|
|
/* 0276CAFC */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276CB00 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276CB04 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276CB08 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CB08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276CB0C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CB0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276CB10 */ cpu->lr = cpu->r[0];
|
|
/* 0276CB14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276CB18 */ return;
|
|
}
|
|
|
|
// fn_0276CB1C @ 0x276cb1c
|
|
void Gambit_fn_0276CB1C(CPUState* cpu) {
|
|
L_0276CB1C: ; // 0x276cb1c
|
|
/* 0276CB1C */ cpu->r[3] = 0x10100000u;
|
|
/* 0276CB20 */ cpu->r[3] = cpu->r[3] + 0x0000096Cu;
|
|
/* 0276CB24 */ return;
|
|
}
|
|
|
|
// fn_0276CB28 @ 0x276cb28
|
|
void Gambit_fn_0276CB28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _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_0276CB28: ; // 0x276cb28
|
|
/* 0276CB28 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276CB2C */ _t0 = cpu->r[10] + 0x000012ECu;
|
|
/* 0276CB2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276CB30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276CB34 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276CB38 */ cpu->r[10] = cpu->r[10] + 0x000012F0u;
|
|
/* 0276CB3C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CB3C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276CB3C */ if (_t2) goto L_0276CB40; else goto L_0276CB58;
|
|
L_0276CB40: ; // 0x276cb40
|
|
/* 0276CB40 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276CB44 */ cpu->r[9] = 0x00000001u;
|
|
/* 0276CB48 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276CB4C */ cpu->r[0] = cpu->r[0] + 0x0000095Cu;
|
|
/* 0276CB50 */ _t3 = cpu->r[11] + 0x000012ECu;
|
|
/* 0276CB50 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0276CB54 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0276CB54 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0276CB58: ; // 0x276cb58
|
|
/* 0276CB58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0276CB5C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CB5C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276CB5C */ if (_t6) goto L_0276CB60; else goto L_0276CB68;
|
|
L_0276CB60: ; // 0x276cb60
|
|
/* 0276CB60 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276CB64 */ return;
|
|
L_0276CB68: ; // 0x276cb68
|
|
/* 0276CB68 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276CB6C */ _t7 = cpu->r[9] + 0x000012CCu;
|
|
/* 0276CB6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276CB70 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276CB74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276CB78 */ cpu->r[11] = cpu->r[11] + 0x000012D0u;
|
|
/* 0276CB7C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CB7C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276CB7C */ if (_t9) goto L_0276CB80; else goto L_0276CB98;
|
|
L_0276CB80: ; // 0x276cb80
|
|
/* 0276CB80 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276CB84 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276CB88 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276CB8C */ cpu->r[9] = cpu->r[9] + 0x0000094Cu;
|
|
/* 0276CB90 */ _t10 = cpu->r[10] + 0x000012CCu;
|
|
/* 0276CB90 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0276CB94 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0276CB94 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0276CB98: ; // 0x276cb98
|
|
/* 0276CB98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 0276CB9C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CB9C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276CB9C */ if (_t13) goto L_0276CBA0; else goto L_0276CBA8;
|
|
L_0276CBA0: ; // 0x276cba0
|
|
/* 0276CBA0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276CBA4 */ goto L_0276CC60;
|
|
L_0276CBA8: ; // 0x276cba8
|
|
/* 0276CBA8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276CBAC */ _t14 = cpu->r[11] + 0xFFFFDB24u;
|
|
/* 0276CBAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276CBB0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276CBB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0276CBB8 */ cpu->r[9] = cpu->r[9] + 0xFFFFDB28u;
|
|
/* 0276CBBC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CBBC */ _t16 = _t15 & 0x00000001u;
|
|
/* 0276CBBC */ if (_t16) goto L_0276CBC0; else goto L_0276CBD8;
|
|
L_0276CBC0: ; // 0x276cbc0
|
|
/* 0276CBC0 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276CBC4 */ cpu->r[10] = 0x00000001u;
|
|
/* 0276CBC8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276CBCC */ cpu->r[11] = cpu->r[11] + 0x0000093Cu;
|
|
/* 0276CBD0 */ _t17 = cpu->r[12] + 0xFFFFDB24u;
|
|
/* 0276CBD0 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0276CBD4 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0276CBD4 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0276CBD8: ; // 0x276cbd8
|
|
/* 0276CBD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0276CBDC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CBDC */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276CBDC */ if (_t20) goto L_0276CBE0; else goto L_0276CBE8;
|
|
L_0276CBE0: ; // 0x276cbe0
|
|
/* 0276CBE0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276CBE4 */ goto L_0276CC5C;
|
|
L_0276CBE8: ; // 0x276cbe8
|
|
/* 0276CBE8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276CBEC */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 0276CBEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276CBEC */ cpu->r[9] = _t21;
|
|
/* 0276CBF0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276CBF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276CBF8 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 0276CBFC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CBFC */ _t23 = _t22 & 0x00000001u;
|
|
/* 0276CBFC */ if (_t23) goto L_0276CC00; else goto L_0276CC14;
|
|
L_0276CC00: ; // 0x276cc00
|
|
/* 0276CC00 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276CC04 */ cpu->r[11] = 0x00000001u;
|
|
/* 0276CC08 */ cpu->r[0] = cpu->r[0] + 0x0000092Cu;
|
|
/* 0276CC0C */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0276CC0C */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0276CC10 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 0276CC10 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0276CC14: ; // 0x276cc14
|
|
/* 0276CC14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0276CC18 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CC18 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0276CC18 */ if (_t27) goto L_0276CC1C; else goto L_0276CC24;
|
|
L_0276CC1C: ; // 0x276cc1c
|
|
/* 0276CC1C */ cpu->r[0] = 0x00000001u;
|
|
/* 0276CC20 */ goto L_0276CC5C;
|
|
L_0276CC24: ; // 0x276cc24
|
|
/* 0276CC24 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276CC28 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 0276CC28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276CC28 */ cpu->r[10] = _t28;
|
|
/* 0276CC2C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276CC30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276CC34 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0276CC38 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CC38 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0276CC38 */ if (_t30) goto L_0276CC3C; else goto L_0276CC50;
|
|
L_0276CC3C: ; // 0x276cc3c
|
|
/* 0276CC3C */ cpu->r[9] = 0x10100000u;
|
|
/* 0276CC40 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276CC44 */ cpu->r[9] = cpu->r[9] + 0x00000904u;
|
|
/* 0276CC48 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0276CC48 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0276CC4C */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 0276CC4C */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0276CC50: ; // 0x276cc50
|
|
/* 0276CC50 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0276CC54 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0276CC58 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0276CC5C: ; // 0x276cc5c
|
|
/* 0276CC5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0276CC60: ; // 0x276cc60
|
|
/* 0276CC60 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0276CC64 */ return;
|
|
}
|
|
|
|
// fn_0276CC68 @ 0x276cc68
|
|
void Gambit_fn_0276CC68(CPUState* cpu) {
|
|
L_0276CC68: ; // 0x276cc68
|
|
/* 0276CC68 */ cpu->r[3] = 0x10100000u;
|
|
/* 0276CC6C */ cpu->r[3] = cpu->r[3] + 0x00000980u;
|
|
/* 0276CC70 */ return;
|
|
}
|
|
|
|
// fn_0276CC78 @ 0x276cc78
|
|
void Gambit_fn_0276CC78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0276CC78: ; // 0x276cc78
|
|
/* 0276CC78 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276CC78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276CC78 */ cpu->r[1] = _t0;
|
|
/* 0276CC7C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CC7C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276CC80 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276CC80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276CC84 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CC84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276CC88 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CC88 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276CC88 */ if (_t4) goto L_0276CC8C; else goto L_0276CC9C;
|
|
L_0276CC8C: ; // 0x276cc8c
|
|
/* 0276CC8C */ cpu->r[3] = 0x000002E8u;
|
|
/* 0276CC90 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276CC94 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276CC94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276CC98 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CC98 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276CC98 */ if (_t6) goto L_0276CCC8; else goto L_0276CC9C;
|
|
L_0276CC9C: ; // 0x276cc9c
|
|
/* 0276CC9C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276CCA0 */ Gambit_fn_0276D9B8(cpu);
|
|
/* 0276CCA4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276CCA8 */ cpu->r[0] = cpu->r[0] + 0x00000D08u;
|
|
/* 0276CCAC */ cpu->r[3] = 0x0000036Cu;
|
|
/* 0276CCB0 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 0276CCB0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0276CCB4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276CCB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276CCBC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CCBC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276CCBC */ if (_t9) goto L_0276CCC4; else goto L_0276CCC0;
|
|
L_0276CCC0: ; // 0x276ccc0
|
|
/* 0276CCC0 */ Gambit_fn_02800E08(cpu);
|
|
L_0276CCC4: ; // 0x276ccc4
|
|
/* 0276CCC4 */ _t10 = cpu->r[31] + 0x000002E0u;
|
|
/* 0276CCC4 */ rbrew_write32(cpu->mem, _t10, cpu->r[3]);
|
|
L_0276CCC8: ; // 0x276ccc8
|
|
/* 0276CCC8 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CCC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276CCCC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276CCD0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CCD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276CCD4 */ cpu->lr = cpu->r[0];
|
|
/* 0276CCD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276CCDC */ return;
|
|
}
|
|
|
|
// fn_0276CCE0 @ 0x276cce0
|
|
void Gambit_fn_0276CCE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276C6F8: ; // 0x276c6f8
|
|
/* 0276C6F8 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C6FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C6FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C6FC */ cpu->r[1] = _t0;
|
|
/* 0276C700 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C700 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276C704 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C704 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276C708 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276C70C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C70C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276C710 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0276C710 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0276C714 */ /* nop */
|
|
/* 0276C718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0276C71C */ cpu->r[31] = cpu->r[4];
|
|
/* 0276C720 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C720 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C720 */ if (_t6) goto L_0276C724; else goto L_0276C738;
|
|
L_0276C724: ; // 0x276c724
|
|
/* 0276C724 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0276C724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C728 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0276C728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276C72C */ cpu->ctr = cpu->r[0];
|
|
/* 0276C730 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C738: ; // 0x276c738
|
|
/* 0276C738 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C73C */ cpu->r[4] = cpu->r[31];
|
|
/* 0276C740 */ Gambit_fn_0276C670(cpu);
|
|
/* 0276C744 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C748 */ /* nop */
|
|
/* 0276C74C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C750 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C754 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276C758 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C75C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C75C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C760 */ cpu->lr = cpu->r[0];
|
|
/* 0276C764 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C768 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C76C */ return;
|
|
L_0276CCE0: ; // 0x276cce0
|
|
/* 0276CCE0 */ goto L_0276E454;
|
|
L_0276E454: ; // 0x276e454
|
|
/* 0276E454 */ cpu->r[3] = cpu->r[3] + 0x000001CCu;
|
|
/* 0276E458 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276E45C */ goto L_0276C6F8;
|
|
}
|
|
|
|
// fn_0276CCE4 @ 0x276cce4
|
|
void Gambit_fn_0276CCE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_0276CCE4: ; // 0x276cce4
|
|
/* 0276CCE4 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 0276CCE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276CCE4 */ cpu->r[1] = _t0;
|
|
/* 0276CCE8 */ cpu->r[0] = cpu->lr;
|
|
/* 0276CCEC */ /* nop */
|
|
/* 0276CCF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276CCF4 */ cpu->r[31] = 0x10100000u;
|
|
/* 0276CCF8 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0276CCFC */ cpu->r[5] = 0x00000000u;
|
|
/* 0276CD00 */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0276CD00 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0276CD04 */ cpu->r[29] = 0x10100000u;
|
|
/* 0276CD08 */ cpu->r[31] = cpu->r[31] + 0x00000CACu;
|
|
/* 0276CD0C */ cpu->r[29] = cpu->r[29] + 0x00000C10u;
|
|
/* 0276CD10 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0276CD14 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0276CD14 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276CD18 */ cpu->r[6] = cpu->r[5];
|
|
/* 0276CD1C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0276CD1C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0276CD20 */ Gambit_fn_027C6980(cpu);
|
|
/* 0276CD24 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 0276CD28 */ Gambit_fn_027C6A04(cpu);
|
|
/* 0276CD2C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0276CD30 */ Gambit_fn_02982574(cpu);
|
|
/* 0276CD34 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276CD38 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276CD3C */ _t4 = cpu->r[10] + 0xFFFF97D4u;
|
|
/* 0276CD3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276CD40 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276CD44 */ _t5 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 0276CD44 */ cpu->r[8] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0276CD48 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276CD4C */ _t6 = cpu->r[11] + 0xFFFF97D0u;
|
|
/* 0276CD4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276CD50 */ _t7 = cpu->r[9] + 0xFFFF97D8u;
|
|
/* 0276CD50 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276CD54 */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0276CD54 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0276CD58 */ _t9 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276CD58 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0276CD5C */ _t10 = cpu->r[1] + 0x00000051u;
|
|
/* 0276CD5C */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[8]);
|
|
/* 0276CD60 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0276CD64 */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 0276CD64 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0276CD68 */ Gambit_fn_02984F3C(cpu);
|
|
/* 0276CD6C */ cpu->r[12] = 0x00000006u;
|
|
/* 0276CD70 */ _t12 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0276CD70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276CD74 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0276CD78 */ _t13 = cpu->r[1] + 0x00000058u;
|
|
/* 0276CD78 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0276CD7C */ cpu->r[10] = 0x00000000u;
|
|
/* 0276CD80 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276CD80 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 0276CD84 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0276CD88 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276CD88 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 0276CD8C */ cpu->r[8] = cpu->r[1] + 0x00000054u;
|
|
/* 0276CD90 */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 0276CD90 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
/* 0276CD94 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CD98 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0276CD98 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 0276CD9C */ cpu->r[6] = cpu->r[5];
|
|
/* 0276CDA0 */ cpu->r[7] = cpu->r[1] + 0x00000038u;
|
|
/* 0276CDA4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CDA4 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 0276CDA8 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 0276CDAC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0276CDAC */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0276CDB0 */ Gambit_fn_023C982C(cpu);
|
|
/* 0276CDB4 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0276CDB8 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 0276CDB8 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 0276CDBC */ _t21 = cpu->r[7] + 0xFFFF8FC4u;
|
|
/* 0276CDBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276CDC0 */ _t22 = cpu->r[7] + 0x00000248u;
|
|
/* 0276CDC0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276CDC4 */ Gambit_fn_0297FD44(cpu);
|
|
/* 0276CDC8 */ _t23 = cpu->r[30] + 0x00000008u;
|
|
/* 0276CDC8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0276CDCC */ _t24 = cpu->r[7] + 0x000000A4u;
|
|
/* 0276CDCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0276CDD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276CDD4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CDD4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0276CDD4 */ if (_t26) goto L_0276CE50; else goto L_0276CDD8;
|
|
L_0276CDD8: ; // 0x276cdd8
|
|
/* 0276CDD8 */ cpu->r[3] = 0x00000028u;
|
|
/* 0276CDDC */ Gambit_fn_02801A78(cpu);
|
|
/* 0276CDE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276CDE4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CDE4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0276CDE4 */ if (_t28) goto L_0276CDF4; else goto L_0276CDE8;
|
|
L_0276CDE8: ; // 0x276cde8
|
|
/* 0276CDE8 */ cpu->r[5] = 0x00000000u;
|
|
/* 0276CDEC */ cpu->r[4] = 0x00000003u;
|
|
/* 0276CDF0 */ Gambit_fn_02398200(cpu);
|
|
L_0276CDF4: ; // 0x276cdf4
|
|
/* 0276CDF4 */ _t29 = cpu->r[30] + 0x00000008u;
|
|
/* 0276CDF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0276CDF8 */ _t30 = cpu->r[30] + 0x00000080u;
|
|
/* 0276CDF8 */ rbrew_write32(cpu->mem, _t30, cpu->r[3]);
|
|
/* 0276CDFC */ _t31 = cpu->r[3] + 0x00000014u;
|
|
/* 0276CDFC */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 0276CE00 */ _t32 = cpu->r[30] + 0x00000080u;
|
|
/* 0276CE00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0276CE04 */ cpu->r[4] = 0x00000002u;
|
|
/* 0276CE08 */ Gambit_fn_023982F0(cpu);
|
|
/* 0276CE0C */ cpu->r[3] = 0x000001FCu;
|
|
/* 0276CE10 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276CE14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276CE18 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276CE1C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CE1C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0276CE1C */ if (_t34) goto L_0276CE28; else goto L_0276CE20;
|
|
L_0276CE20: ; // 0x276ce20
|
|
/* 0276CE20 */ Gambit_fn_02397560(cpu);
|
|
/* 0276CE24 */ cpu->r[31] = cpu->r[3];
|
|
L_0276CE28: ; // 0x276ce28
|
|
/* 0276CE28 */ _t35 = cpu->r[30] + 0x00000004u;
|
|
/* 0276CE28 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0276CE2C */ _t36 = cpu->r[30] + 0x00000084u;
|
|
/* 0276CE2C */ rbrew_write32(cpu->mem, _t36, cpu->r[31]);
|
|
/* 0276CE30 */ _t37 = cpu->r[8] + 0x000001ECu;
|
|
/* 0276CE30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0276CE34 */ cpu->ctr = cpu->r[9];
|
|
/* 0276CE38 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276CE3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276CE40 */ _t38 = cpu->r[30] + 0x00000008u;
|
|
/* 0276CE40 */ cpu->r[4] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0276CE44 */ cpu->r[5] = cpu->r[3];
|
|
/* 0276CE48 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276CE4C */ Gambit_fn_023979A0(cpu);
|
|
L_0276CE50: ; // 0x276ce50
|
|
/* 0276CE50 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0276CE54 */ _t39 = cpu->r[3] + 0x0000134Cu;
|
|
/* 0276CE54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0276CE58 */ _t40 = cpu->r[3] + 0x0000015Du;
|
|
/* 0276CE58 */ cpu->r[0] = rbrew_read8(cpu->mem, _t40);
|
|
/* 0276CE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276CE60 */ cpu->r[10] = 0x00000000u;
|
|
/* 0276CE64 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CE64 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0276CE64 */ if (_t42) goto L_0276CED8; else goto L_0276CE68;
|
|
L_0276CE68: ; // 0x276ce68
|
|
/* 0276CE68 */ Gambit_fn_0202D7F8(cpu);
|
|
/* 0276CE6C */ _t43 = cpu->r[1] + 0x00000030u;
|
|
/* 0276CE6C */ rbrew_write32(cpu->mem, _t43, cpu->r[3]);
|
|
/* 0276CE70 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0276CE74 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 0276CE78 */ _t44 = cpu->r[1] + 0x00000034u;
|
|
/* 0276CE78 */ rbrew_write32(cpu->mem, _t44, cpu->r[4]);
|
|
/* 0276CE7C */ cpu->r[4] = 0x101F0000u;
|
|
/* 0276CE80 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0276CE84 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0276CE88 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0276CE8C */ cpu->r[7] = 0x101F0000u;
|
|
/* 0276CE90 */ cpu->r[5] = cpu->r[5] + 0x00006C1Cu;
|
|
/* 0276CE94 */ cpu->r[4] = cpu->r[4] + 0x00006C18u;
|
|
/* 0276CE98 */ cpu->r[6] = cpu->r[6] + 0x00006C20u;
|
|
/* 0276CE9C */ cpu->r[7] = cpu->r[7] + 0x00006C24u;
|
|
/* 0276CEA0 */ cpu->r[9] = cpu->r[9] + 0x00006C2Cu;
|
|
/* 0276CEA4 */ cpu->r[8] = cpu->r[8] + 0x00006C28u;
|
|
/* 0276CEA8 */ Gambit_fn_0283801C(cpu);
|
|
/* 0276CEAC */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 0276CEB0 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0276CEB4 */ Gambit_fn_02838874(cpu);
|
|
/* 0276CEB8 */ _t45 = cpu->r[1] + 0x00000074u;
|
|
/* 0276CEB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0276CEBC */ cpu->r[12] = 0x10100000u;
|
|
/* 0276CEC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000007u);
|
|
/* 0276CEC4 */ cpu->r[12] = cpu->r[12] + 0x00000C68u;
|
|
/* 0276CEC8 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276CEC8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0276CEC8 */ if (_t47) goto L_0276CECC; else goto L_0276CED4;
|
|
L_0276CECC: ; // 0x276cecc
|
|
/* 0276CECC */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276CED0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0276CED4: ; // 0x276ced4
|
|
/* 0276CED4 */ _t48 = cpu->r[12] + 0x00000000u;
|
|
/* 0276CED4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
L_0276CED8: ; // 0x276ced8
|
|
/* 0276CED8 */ cpu->r[27] = 0x101F0000u;
|
|
/* 0276CEDC */ cpu->r[31] = rbrew_rlwinm(cpu->r[10], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0276CEE0 */ cpu->r[27] = cpu->r[27] + 0x00001BACu;
|
|
/* 0276CEE4 */ cpu->r[3] = cpu->r[27] + cpu->r[31];
|
|
/* 0276CEE8 */ _t49 = cpu->r[3] + 0x00000004u;
|
|
/* 0276CEE8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0276CEEC */ _t50 = cpu->r[8] + 0x00000014u;
|
|
/* 0276CEEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0276CEF0 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276CEF0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0276CEF4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276CEF8 */ _t52 = cpu->r[6] + 0x0000001Cu;
|
|
/* 0276CEF8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0276CEFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276CF00 */ _t53 = cpu->r[28] + 0x00000024u;
|
|
/* 0276CF00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0276CF04 */ cpu->r[8] = cpu->r[28] + 0x00000024u;
|
|
/* 0276CF08 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276CF0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0276CF10 */ _t54 = cpu->r[27] + cpu->r[31];
|
|
/* 0276CF10 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0276CF14 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CF14 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0276CF14 */ if (_t56) goto L_0276CF1C; else goto L_0276CF18;
|
|
L_0276CF18: ; // 0x276cf18
|
|
/* 0276CF18 */ cpu->r[3] = cpu->r[8] + cpu->r[6];
|
|
L_0276CF1C: ; // 0x276cf1c
|
|
/* 0276CF1C */ Gambit_fn_02C60464(cpu);
|
|
/* 0276CF20 */ cpu->r[4] = cpu->r[3];
|
|
/* 0276CF24 */ _t57 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276CF24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0276CF28 */ Gambit_fn_02800ECC(cpu);
|
|
/* 0276CF2C */ _t58 = cpu->r[30] + 0x000002E0u;
|
|
/* 0276CF2C */ cpu->r[6] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0276CF30 */ cpu->r[5] = 0x00000000u;
|
|
/* 0276CF34 */ _t59 = cpu->r[30] + 0x00000008u;
|
|
/* 0276CF34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0276CF38 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276CF3C */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 0276CF3C */ rbrew_write32(cpu->mem, _t60, cpu->r[29]);
|
|
/* 0276CF40 */ cpu->r[0] = cpu->r[0] + 0x00000CBCu;
|
|
/* 0276CF44 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CF48 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276CF48 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 0276CF4C */ Gambit_fn_02800960(cpu);
|
|
/* 0276CF50 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276CF54 */ _t62 = cpu->r[30] + 0x000002D8u;
|
|
/* 0276CF54 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[0]);
|
|
/* 0276CF58 */ /* nop */
|
|
/* 0276CF5C */ _t63 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0276CF5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0276CF60 */ cpu->lr = cpu->r[0];
|
|
/* 0276CF64 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 0276CF68 */ return;
|
|
}
|
|
|
|
// fn_0276CF6C @ 0x276cf6c
|
|
void Gambit_fn_0276CF6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0276CF6C: ; // 0x276cf6c
|
|
/* 0276CF6C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276CF70 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276CF74 */ _t0 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276CF74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276CF78 */ _t1 = cpu->r[11] + 0xFFFF8E90u;
|
|
/* 0276CF78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276CF7C */ cpu->r[11] = cpu->r[12] + cpu->r[11];
|
|
/* 0276CF80 */ _t2 = cpu->r[11] + 0x00000104u;
|
|
/* 0276CF80 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0276CF84 */ _t3 = cpu->r[12] + 0x00000030u;
|
|
/* 0276CF84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276CF88 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276CF8C */ _t4 = cpu->r[10] + cpu->r[0];
|
|
/* 0276CF8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276CF90 */ _t5 = cpu->r[9] + 0x00000004u;
|
|
/* 0276CF90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276CF94 */ _t6 = cpu->r[10] + 0x00000000u;
|
|
/* 0276CF94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276CF98 */ _t7 = cpu->r[3] + 0x00000204u;
|
|
/* 0276CF98 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0276CF9C */ _t8 = cpu->r[9] + 0x00000090u;
|
|
/* 0276CF9C */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0276CFA0 */ return;
|
|
}
|
|
|
|
// fn_0276CFA4 @ 0x276cfa4
|
|
void Gambit_fn_0276CFA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0276CFA4: ; // 0x276cfa4
|
|
/* 0276CFA4 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276CFA8 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0276CFAC */ cpu->r[0] = 0x10100000u;
|
|
/* 0276CFB0 */ cpu->r[12] = cpu->r[12] + 0x00000C10u;
|
|
/* 0276CFB4 */ cpu->r[11] = cpu->r[11] + 0x00001BACu;
|
|
/* 0276CFB8 */ cpu->r[0] = cpu->r[0] + 0x00000CC8u;
|
|
/* 0276CFBC */ _t0 = cpu->r[11] + 0x00000004u;
|
|
/* 0276CFBC */ rbrew_write32(cpu->mem, _t0, cpu->r[12]);
|
|
/* 0276CFC0 */ _t1 = cpu->r[11] + 0x00000000u;
|
|
/* 0276CFC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0276CFC4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276CFC8 */ _t2 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0276CFC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0276CFCC */ cpu->r[0] = cpu->r[0] + 0x00000CD8u;
|
|
/* 0276CFD0 */ _t3 = cpu->r[11] + 0x00000008u;
|
|
/* 0276CFD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276CFD4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276CFD8 */ _t4 = cpu->r[11] + 0x00000014u;
|
|
/* 0276CFD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0276CFDC */ cpu->r[0] = cpu->r[0] + 0x00000CE8u;
|
|
/* 0276CFE0 */ _t5 = cpu->r[11] + 0x00000010u;
|
|
/* 0276CFE0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0276CFE4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276CFE8 */ _t6 = cpu->r[11] + 0x0000001Cu;
|
|
/* 0276CFE8 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0276CFEC */ cpu->r[0] = cpu->r[0] + 0x00000CF8u;
|
|
/* 0276CFF0 */ _t7 = cpu->r[11] + 0x00000018u;
|
|
/* 0276CFF0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0276CFF4 */ return;
|
|
}
|
|
|
|
// fn_0276CFF8 @ 0x276cff8
|
|
void Gambit_fn_0276CFF8(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_0276CFF8: ; // 0x276cff8
|
|
/* 0276CFF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276CFFC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276CFFC */ _t1 = _t0 & 0x00000001u;
|
|
/* 0276CFFC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276CFFC */ goto L_0276D000;
|
|
L_0276D000: ; // 0x276d000
|
|
/* 0276D000 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276D000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276D004 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D004 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0276D004 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276D004 */ goto L_0276D008;
|
|
L_0276D008: ; // 0x276d008
|
|
/* 0276D008 */ 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_0276D00C @ 0x276d00c
|
|
void Gambit_fn_0276D00C(CPUState* cpu) {
|
|
L_0276D00C: ; // 0x276d00c
|
|
/* 0276D00C */ return;
|
|
}
|
|
|
|
// fn_0276D010 @ 0x276d010
|
|
void Gambit_fn_0276D010(CPUState* cpu) {
|
|
L_0276D010: ; // 0x276d010
|
|
/* 0276D010 */ return;
|
|
}
|
|
|
|
// fn_0276D014 @ 0x276d014
|
|
void Gambit_fn_0276D014(CPUState* cpu) {
|
|
L_0276D014: ; // 0x276d014
|
|
/* 0276D014 */ return;
|
|
}
|
|
|
|
// fn_0276D018 @ 0x276d018
|
|
void Gambit_fn_0276D018(CPUState* cpu) {
|
|
L_0276D018: ; // 0x276d018
|
|
/* 0276D018 */ return;
|
|
}
|
|
|
|
// fn_0276D01C @ 0x276d01c
|
|
void Gambit_fn_0276D01C(CPUState* cpu) {
|
|
L_0276D01C: ; // 0x276d01c
|
|
/* 0276D01C */ return;
|
|
}
|
|
|
|
// fn_0276D020 @ 0x276d020
|
|
void Gambit_fn_0276D020(CPUState* cpu) {
|
|
L_0276D020: ; // 0x276d020
|
|
/* 0276D020 */ return;
|
|
}
|
|
|
|
// fn_0276D024 @ 0x276d024
|
|
void Gambit_fn_0276D024(CPUState* cpu) {
|
|
L_0276D024: ; // 0x276d024
|
|
/* 0276D024 */ return;
|
|
}
|
|
|
|
// fn_0276D028 @ 0x276d028
|
|
void Gambit_fn_0276D028(CPUState* cpu) {
|
|
L_0276D028: ; // 0x276d028
|
|
/* 0276D028 */ return;
|
|
}
|
|
|
|
// fn_0276D02C @ 0x276d02c
|
|
void Gambit_fn_0276D02C(CPUState* cpu) {
|
|
L_0276D02C: ; // 0x276d02c
|
|
/* 0276D02C */ return;
|
|
}
|
|
|
|
// fn_0276D030 @ 0x276d030
|
|
void Gambit_fn_0276D030(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0276D030: ; // 0x276d030
|
|
/* 0276D030 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0276D030 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D038 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D038 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D038 */ if (_t2) goto L_0276D044; else goto L_0276D03C;
|
|
L_0276D03C: ; // 0x276d03c
|
|
/* 0276D03C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0276D040 */ return;
|
|
L_0276D044: ; // 0x276d044
|
|
/* 0276D044 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276D048 */ return;
|
|
}
|
|
|
|
// fn_0276D04C @ 0x276d04c
|
|
void Gambit_fn_0276D04C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0276D04C: ; // 0x276d04c
|
|
/* 0276D04C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0276D04C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D054 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D054 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D054 */ if (_t2) goto L_0276D060; else goto L_0276D058;
|
|
L_0276D058: ; // 0x276d058
|
|
/* 0276D058 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0276D05C */ return;
|
|
L_0276D060: ; // 0x276d060
|
|
/* 0276D060 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276D064 */ return;
|
|
}
|
|
|
|
// fn_0276D068 @ 0x276d068
|
|
void Gambit_fn_0276D068(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D068: ; // 0x276d068
|
|
/* 0276D068 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276D068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D06C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276D06C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D070 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D070 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D070 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276D070 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276D070 */ goto L_0276D074;
|
|
L_0276D074: ; // 0x276d074
|
|
/* 0276D074 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D074 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D078 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0276D078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D07C */ cpu->ctr = cpu->r[0];
|
|
/* 0276D080 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D084 @ 0x276d084
|
|
void Gambit_fn_0276D084(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D084: ; // 0x276d084
|
|
/* 0276D084 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276D084 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D088 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276D088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D08C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D08C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D08C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276D08C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276D08C */ goto L_0276D090;
|
|
L_0276D090: ; // 0x276d090
|
|
/* 0276D090 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D090 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D094 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0276D094 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D098 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D09C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D0A0 @ 0x276d0a0
|
|
void Gambit_fn_0276D0A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D0A0: ; // 0x276d0a0
|
|
/* 0276D0A0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276D0A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D0A4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276D0A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D0A8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D0A8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D0A8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276D0A8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276D0A8 */ goto L_0276D0AC;
|
|
L_0276D0AC: ; // 0x276d0ac
|
|
/* 0276D0AC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D0AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D0B0 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0276D0B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D0B4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D0B8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D0BC @ 0x276d0bc
|
|
void Gambit_fn_0276D0BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276D0BC: ; // 0x276d0bc
|
|
/* 0276D0BC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D0BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D0C0 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276D0C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276D0C4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D0C8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D0CC @ 0x276d0cc
|
|
void Gambit_fn_0276D0CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0276D0CC: ; // 0x276d0cc
|
|
/* 0276D0CC */ cpu->r[0] = cpu->lr;
|
|
/* 0276D0D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D0D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D0D0 */ cpu->r[1] = _t0;
|
|
/* 0276D0D4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D0D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D0D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D0DC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D0DC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D0E0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D0E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276D0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0276D0E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D0E8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276D0E8 */ if (_t5) goto L_0276D0EC; else goto L_0276D108;
|
|
L_0276D0EC: ; // 0x276d0ec
|
|
/* 0276D0EC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0276D0EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276D0F0 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0276D0F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D0F4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D0F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D0FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D100 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276D104 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D104 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0276D108: ; // 0x276d108
|
|
/* 0276D108 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D10C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D10C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D110 */ cpu->lr = cpu->r[0];
|
|
/* 0276D114 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D118 */ return;
|
|
}
|
|
|
|
// fn_0276D0D0 @ 0x276d0d0
|
|
void Gambit_fn_0276D0D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0276D0D0: ; // 0x276d0d0
|
|
/* 0276D0D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D0D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D0D0 */ cpu->r[1] = _t0;
|
|
/* 0276D0D4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D0D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D0D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D0DC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D0DC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D0E0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D0E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276D0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0276D0E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D0E8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276D0E8 */ if (_t5) goto L_0276D0EC; else goto L_0276D108;
|
|
L_0276D0EC: ; // 0x276d0ec
|
|
/* 0276D0EC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0276D0EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276D0F0 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0276D0F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D0F4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D0F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D0FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D100 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276D104 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D104 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0276D108: ; // 0x276d108
|
|
/* 0276D108 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D10C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D10C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D110 */ cpu->lr = cpu->r[0];
|
|
/* 0276D114 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D118 */ return;
|
|
}
|
|
|
|
// fn_0276D11C @ 0x276d11c
|
|
void Gambit_fn_0276D11C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276D11C: ; // 0x276d11c
|
|
/* 0276D11C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D11C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D120 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0276D120 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276D124 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D128 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D12C @ 0x276d12c
|
|
void Gambit_fn_0276D12C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276D12C: ; // 0x276d12c
|
|
/* 0276D12C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D12C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D130 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0276D130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276D134 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D138 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D13C @ 0x276d13c
|
|
void Gambit_fn_0276D13C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276D13C: ; // 0x276d13c
|
|
/* 0276D13C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D13C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D140 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0276D140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276D144 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D148 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D14C @ 0x276d14c
|
|
void Gambit_fn_0276D14C(CPUState* cpu) {
|
|
L_0276D14C: ; // 0x276d14c
|
|
/* 0276D14C */ cpu->r[3] = 0x00000001u;
|
|
/* 0276D150 */ return;
|
|
}
|
|
|
|
// fn_0276D154 @ 0x276d154
|
|
void Gambit_fn_0276D154(CPUState* cpu) {
|
|
L_0276D154: ; // 0x276d154
|
|
/* 0276D154 */ return;
|
|
}
|
|
|
|
// fn_0276D158 @ 0x276d158
|
|
void Gambit_fn_0276D158(CPUState* cpu) {
|
|
L_0276D158: ; // 0x276d158
|
|
/* 0276D158 */ return;
|
|
}
|
|
|
|
// fn_0276D15C @ 0x276d15c
|
|
void Gambit_fn_0276D15C(CPUState* cpu) {
|
|
L_0276D15C: ; // 0x276d15c
|
|
/* 0276D15C */ return;
|
|
}
|
|
|
|
// fn_0276D160 @ 0x276d160
|
|
void Gambit_fn_0276D160(CPUState* cpu) {
|
|
L_0276D160: ; // 0x276d160
|
|
/* 0276D160 */ return;
|
|
}
|
|
|
|
// fn_0276D164 @ 0x276d164
|
|
void Gambit_fn_0276D164(CPUState* cpu) {
|
|
L_0276D164: ; // 0x276d164
|
|
/* 0276D164 */ return;
|
|
}
|
|
|
|
// fn_0276D168 @ 0x276d168
|
|
void Gambit_fn_0276D168(CPUState* cpu) {
|
|
L_0276D168: ; // 0x276d168
|
|
/* 0276D168 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276D16C */ return;
|
|
}
|
|
|
|
// fn_0276D170 @ 0x276d170
|
|
void Gambit_fn_0276D170(CPUState* cpu) {
|
|
L_0276D170: ; // 0x276d170
|
|
/* 0276D170 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276D174 */ return;
|
|
}
|
|
|
|
// fn_0276D178 @ 0x276d178
|
|
void Gambit_fn_0276D178(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0276D178: ; // 0x276d178
|
|
/* 0276D178 */ cpu->r[0] = cpu->lr;
|
|
/* 0276D17C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276D17C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D17C */ cpu->r[1] = _t0;
|
|
/* 0276D180 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D180 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D184 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D184 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D188 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0276D188 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276D18C */ cpu->r[4] = 0x00000000u;
|
|
/* 0276D190 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D194 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276D198 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D19C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276D1A0 */ cpu->r[11] = 0x00000000u;
|
|
/* 0276D1A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D1A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276D1A4 */ if (_t6) goto L_0276D1B0; else goto L_0276D1A8;
|
|
L_0276D1A8: ; // 0x276d1a8
|
|
/* 0276D1A8 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 0276D1A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D1AC */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0276D1AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_0276D1B0: ; // 0x276d1b0
|
|
/* 0276D1B0 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 0276D1B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D1B4 */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 0276D1B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D1B8 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276D1B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276D1BC */ cpu->ctr = cpu->r[0];
|
|
/* 0276D1C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D1C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D1C8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D1C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276D1CC */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0276D1CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276D1D0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D1D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D1D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D1DC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D1DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276D1E0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D1E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276D1E4 */ cpu->lr = cpu->r[0];
|
|
/* 0276D1E8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D1E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276D1EC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D1F0 */ return;
|
|
}
|
|
|
|
// fn_0276D17C @ 0x276d17c
|
|
void Gambit_fn_0276D17C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0276D17C: ; // 0x276d17c
|
|
/* 0276D17C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276D17C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D17C */ cpu->r[1] = _t0;
|
|
/* 0276D180 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D180 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D184 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D184 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D188 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0276D188 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276D18C */ cpu->r[4] = 0x00000000u;
|
|
/* 0276D190 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D194 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276D198 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D19C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276D1A0 */ cpu->r[11] = 0x00000000u;
|
|
/* 0276D1A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D1A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276D1A4 */ if (_t6) goto L_0276D1B0; else goto L_0276D1A8;
|
|
L_0276D1A8: ; // 0x276d1a8
|
|
/* 0276D1A8 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 0276D1A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D1AC */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0276D1AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_0276D1B0: ; // 0x276d1b0
|
|
/* 0276D1B0 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 0276D1B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D1B4 */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 0276D1B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D1B8 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276D1B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276D1BC */ cpu->ctr = cpu->r[0];
|
|
/* 0276D1C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D1C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D1C8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D1C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276D1CC */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0276D1CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276D1D0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D1D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D1D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D1DC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D1DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276D1E0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D1E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276D1E4 */ cpu->lr = cpu->r[0];
|
|
/* 0276D1E8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D1E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276D1EC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D1F0 */ return;
|
|
}
|
|
|
|
// fn_0276D1F4 @ 0x276d1f4
|
|
void Gambit_fn_0276D1F4(CPUState* cpu) {
|
|
L_0276D1F4: ; // 0x276d1f4
|
|
/* 0276D1F4 */ return;
|
|
}
|
|
|
|
// fn_0276D1F8 @ 0x276d1f8
|
|
void Gambit_fn_0276D1F8(CPUState* cpu) {
|
|
L_0276D1F8: ; // 0x276d1f8
|
|
/* 0276D1F8 */ return;
|
|
}
|
|
|
|
// fn_0276D1FC @ 0x276d1fc
|
|
void Gambit_fn_0276D1FC(CPUState* cpu) {
|
|
L_0276D1FC: ; // 0x276d1fc
|
|
/* 0276D1FC */ return;
|
|
}
|
|
|
|
// fn_0276D200 @ 0x276d200
|
|
void Gambit_fn_0276D200(CPUState* cpu) {
|
|
L_0276D200: ; // 0x276d200
|
|
/* 0276D200 */ return;
|
|
}
|
|
|
|
// fn_0276D204 @ 0x276d204
|
|
void Gambit_fn_0276D204(CPUState* cpu) {
|
|
L_0276D204: ; // 0x276d204
|
|
/* 0276D204 */ return;
|
|
}
|
|
|
|
// fn_0276D208 @ 0x276d208
|
|
void Gambit_fn_0276D208(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276C578: ; // 0x276c578
|
|
/* 0276C578 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C57C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C57C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C57C */ cpu->r[1] = _t0;
|
|
/* 0276C580 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C580 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C584 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C588 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C588 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C58C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0276C58C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C590 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276C594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C598 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0276C598 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0276C59C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C59C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C59C */ if (_t6) goto L_0276C5C4; else goto L_0276C5A0;
|
|
L_0276C5A0: ; // 0x276c5a0
|
|
/* 0276C5A0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0276C5A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276C5A4 */ /* nop */
|
|
/* 0276C5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276C5AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C5AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C5AC */ if (_t9) goto L_0276C5B0; else goto L_0276C5C4;
|
|
L_0276C5B0: ; // 0x276c5b0
|
|
/* 0276C5B0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C5B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C5B4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C5B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C5BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C5C4: ; // 0x276c5c4
|
|
/* 0276C5C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C8 */ Gambit_fn_0276C4F0(cpu);
|
|
/* 0276C5CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5D0 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0276C5D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C5D8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C5D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C5DC */ cpu->lr = cpu->r[0];
|
|
/* 0276C5E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C5E4 */ return;
|
|
L_0276D208: ; // 0x276d208
|
|
/* 0276D208 */ cpu->r[3] = cpu->r[3] + 0x000001CCu;
|
|
/* 0276D20C */ goto L_0276C578;
|
|
}
|
|
|
|
// fn_0276D210 @ 0x276d210
|
|
void Gambit_fn_0276D210(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D210: ; // 0x276d210
|
|
/* 0276D210 */ cpu->r[0] = cpu->lr;
|
|
/* 0276D214 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D214 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D214 */ cpu->r[1] = _t0;
|
|
/* 0276D218 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D218 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D21C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D220 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D220 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D224 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 0276D224 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276D228 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D22C */ /* nop */
|
|
/* 0276D230 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276D234 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D238 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276D23C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D23C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D240 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D240 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D244 */ cpu->lr = cpu->r[0];
|
|
/* 0276D248 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D24C */ return;
|
|
}
|
|
|
|
// fn_0276D214 @ 0x276d214
|
|
void Gambit_fn_0276D214(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D214: ; // 0x276d214
|
|
/* 0276D214 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D214 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D214 */ cpu->r[1] = _t0;
|
|
/* 0276D218 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D218 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D21C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D220 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D220 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D224 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 0276D224 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276D228 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D22C */ /* nop */
|
|
/* 0276D230 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276D234 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D238 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276D23C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D23C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D240 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D240 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D244 */ cpu->lr = cpu->r[0];
|
|
/* 0276D248 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D24C */ return;
|
|
}
|
|
|
|
// fn_0276D250 @ 0x276d250
|
|
void Gambit_fn_0276D250(CPUState* cpu) {
|
|
L_0276D250: ; // 0x276d250
|
|
/* 0276D250 */ cpu->r[3] = 0x10100000u;
|
|
/* 0276D254 */ cpu->r[3] = cpu->r[3] + 0x00000C84u;
|
|
/* 0276D258 */ return;
|
|
}
|
|
|
|
// fn_0276D25C @ 0x276d25c
|
|
void Gambit_fn_0276D25C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _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_0276D25C: ; // 0x276d25c
|
|
/* 0276D25C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D260 */ _t0 = cpu->r[10] + 0x000012F8u;
|
|
/* 0276D260 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D264 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276D268 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D26C */ cpu->r[10] = cpu->r[10] + 0x000012FCu;
|
|
/* 0276D270 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D270 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D270 */ if (_t2) goto L_0276D274; else goto L_0276D28C;
|
|
L_0276D274: ; // 0x276d274
|
|
/* 0276D274 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276D278 */ cpu->r[9] = 0x00000001u;
|
|
/* 0276D27C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D280 */ cpu->r[0] = cpu->r[0] + 0x00000C58u;
|
|
/* 0276D284 */ _t3 = cpu->r[11] + 0x000012F8u;
|
|
/* 0276D284 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0276D288 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0276D288 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0276D28C: ; // 0x276d28c
|
|
/* 0276D28C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0276D290 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D290 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276D290 */ if (_t6) goto L_0276D294; else goto L_0276D29C;
|
|
L_0276D294: ; // 0x276d294
|
|
/* 0276D294 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276D298 */ return;
|
|
L_0276D29C: ; // 0x276d29c
|
|
/* 0276D29C */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276D2A0 */ _t7 = cpu->r[9] + 0x000012CCu;
|
|
/* 0276D2A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D2A4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D2A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276D2AC */ cpu->r[11] = cpu->r[11] + 0x000012D0u;
|
|
/* 0276D2B0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D2B0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276D2B0 */ if (_t9) goto L_0276D2B4; else goto L_0276D2CC;
|
|
L_0276D2B4: ; // 0x276d2b4
|
|
/* 0276D2B4 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276D2B8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D2BC */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D2C0 */ cpu->r[9] = cpu->r[9] + 0x00000C48u;
|
|
/* 0276D2C4 */ _t10 = cpu->r[10] + 0x000012CCu;
|
|
/* 0276D2C4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0276D2C8 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0276D2C8 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0276D2CC: ; // 0x276d2cc
|
|
/* 0276D2CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 0276D2D0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D2D0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276D2D0 */ if (_t13) goto L_0276D2D4; else goto L_0276D2DC;
|
|
L_0276D2D4: ; // 0x276d2d4
|
|
/* 0276D2D4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D2D8 */ goto L_0276D394;
|
|
L_0276D2DC: ; // 0x276d2dc
|
|
/* 0276D2DC */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D2E0 */ _t14 = cpu->r[11] + 0xFFFFDB24u;
|
|
/* 0276D2E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276D2E4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276D2E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0276D2EC */ cpu->r[9] = cpu->r[9] + 0xFFFFDB28u;
|
|
/* 0276D2F0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D2F0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0276D2F0 */ if (_t16) goto L_0276D2F4; else goto L_0276D30C;
|
|
L_0276D2F4: ; // 0x276d2f4
|
|
/* 0276D2F4 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276D2F8 */ cpu->r[10] = 0x00000001u;
|
|
/* 0276D2FC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276D300 */ cpu->r[11] = cpu->r[11] + 0x00000C38u;
|
|
/* 0276D304 */ _t17 = cpu->r[12] + 0xFFFFDB24u;
|
|
/* 0276D304 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0276D308 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0276D308 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0276D30C: ; // 0x276d30c
|
|
/* 0276D30C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0276D310 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D310 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276D310 */ if (_t20) goto L_0276D314; else goto L_0276D31C;
|
|
L_0276D314: ; // 0x276d314
|
|
/* 0276D314 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D318 */ goto L_0276D390;
|
|
L_0276D31C: ; // 0x276d31c
|
|
/* 0276D31C */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276D320 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 0276D320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276D320 */ cpu->r[9] = _t21;
|
|
/* 0276D324 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276D32C */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 0276D330 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D330 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0276D330 */ if (_t23) goto L_0276D334; else goto L_0276D348;
|
|
L_0276D334: ; // 0x276d334
|
|
/* 0276D334 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276D338 */ cpu->r[11] = 0x00000001u;
|
|
/* 0276D33C */ cpu->r[0] = cpu->r[0] + 0x00000C28u;
|
|
/* 0276D340 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0276D340 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0276D344 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 0276D344 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0276D348: ; // 0x276d348
|
|
/* 0276D348 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0276D34C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D34C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0276D34C */ if (_t27) goto L_0276D350; else goto L_0276D358;
|
|
L_0276D350: ; // 0x276d350
|
|
/* 0276D350 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D354 */ goto L_0276D390;
|
|
L_0276D358: ; // 0x276d358
|
|
/* 0276D358 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D35C */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 0276D35C */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276D35C */ cpu->r[10] = _t28;
|
|
/* 0276D360 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276D368 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0276D36C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D36C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0276D36C */ if (_t30) goto L_0276D370; else goto L_0276D384;
|
|
L_0276D370: ; // 0x276d370
|
|
/* 0276D370 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276D374 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D378 */ cpu->r[9] = cpu->r[9] + 0x00000C00u;
|
|
/* 0276D37C */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0276D37C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0276D380 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 0276D380 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0276D384: ; // 0x276d384
|
|
/* 0276D384 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0276D388 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0276D38C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0276D390: ; // 0x276d390
|
|
/* 0276D390 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0276D394: ; // 0x276d394
|
|
/* 0276D394 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0276D398 */ return;
|
|
}
|
|
|
|
// fn_0276D39C @ 0x276d39c
|
|
void Gambit_fn_0276D39C(CPUState* cpu) {
|
|
L_0276D39C: ; // 0x276d39c
|
|
/* 0276D39C */ cpu->r[3] = 0x10100000u;
|
|
/* 0276D3A0 */ cpu->r[3] = cpu->r[3] + 0x00000C98u;
|
|
/* 0276D3A4 */ return;
|
|
}
|
|
|
|
// fn_0276D3AC @ 0x276d3ac
|
|
void Gambit_fn_0276D3AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0276D3AC: ; // 0x276d3ac
|
|
/* 0276D3AC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D3AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D3AC */ cpu->r[1] = _t0;
|
|
/* 0276D3B0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D3B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D3B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D3B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276D3B8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D3B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D3BC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D3BC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276D3BC */ if (_t4) goto L_0276D3C0; else goto L_0276D3D0;
|
|
L_0276D3C0: ; // 0x276d3c0
|
|
/* 0276D3C0 */ cpu->r[3] = 0x000002E0u;
|
|
/* 0276D3C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276D3C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D3C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276D3CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D3CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276D3CC */ if (_t6) goto L_0276D3E4; else goto L_0276D3D0;
|
|
L_0276D3D0: ; // 0x276d3d0
|
|
/* 0276D3D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D3D4 */ Gambit_fn_0276D9B8(cpu);
|
|
/* 0276D3D8 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276D3DC */ cpu->r[0] = cpu->r[0] + 0x00001004u;
|
|
/* 0276D3E0 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 0276D3E0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_0276D3E4: ; // 0x276d3e4
|
|
/* 0276D3E4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D3E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276D3E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D3EC */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D3EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D3F0 */ cpu->lr = cpu->r[0];
|
|
/* 0276D3F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D3F8 */ return;
|
|
}
|
|
|
|
// fn_0276D3FC @ 0x276d3fc
|
|
void Gambit_fn_0276D3FC(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_0276D3FC: ; // 0x276d3fc
|
|
/* 0276D3FC */ cpu->r[0] = cpu->lr;
|
|
/* 0276D400 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0276D400 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D400 */ cpu->r[1] = _t0;
|
|
/* 0276D404 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276D408 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0276D408 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D40C */ cpu->r[12] = 0x10100000u;
|
|
/* 0276D410 */ cpu->r[11] = cpu->r[11] + 0x00000F70u;
|
|
/* 0276D414 */ cpu->r[12] = cpu->r[12] + 0x00000FF4u;
|
|
/* 0276D418 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D418 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0276D41C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D41C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0276D420 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276D420 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276D424 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276D428 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D42C */ cpu->r[0] = cpu->r[0] + 0x00000FF0u;
|
|
/* 0276D430 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D430 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0276D434 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D438 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0276D438 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276D43C */ Gambit_fn_02982574(cpu);
|
|
/* 0276D440 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276D444 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D448 */ _t7 = cpu->r[12] + 0xFFFF97D4u;
|
|
/* 0276D448 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D44C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D450 */ _t8 = cpu->r[10] + 0xFFFF97D8u;
|
|
/* 0276D450 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0276D454 */ _t9 = cpu->r[11] + 0xFFFF97D0u;
|
|
/* 0276D454 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D458 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0276D458 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[10]);
|
|
/* 0276D45C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D460 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276D460 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0276D464 */ _t12 = cpu->r[10] + 0xFFFF97D9u;
|
|
/* 0276D464 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0276D468 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D468 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0276D46C */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0276D470 */ _t14 = cpu->r[1] + 0x00000031u;
|
|
/* 0276D470 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]);
|
|
/* 0276D474 */ Gambit_fn_02984F3C(cpu);
|
|
/* 0276D478 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276D47C */ cpu->r[0] = 0x00000006u;
|
|
/* 0276D480 */ cpu->r[9] = 0x00000003u;
|
|
/* 0276D484 */ _t15 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276D484 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276D488 */ cpu->r[7] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D48C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D490 */ _t16 = cpu->r[1] + 0x00000038u;
|
|
/* 0276D490 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276D494 */ cpu->r[8] = cpu->r[1] + 0x00000034u;
|
|
/* 0276D498 */ _t17 = cpu->r[12] + 0x00000248u;
|
|
/* 0276D498 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276D49C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D4A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D4A4 */ Gambit_fn_020022D4(cpu);
|
|
/* 0276D4A8 */ _t18 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276D4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276D4AC */ _t19 = cpu->r[1] + 0x00000044u;
|
|
/* 0276D4AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276D4B0 */ cpu->lr = cpu->r[0];
|
|
/* 0276D4B4 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0276D4B8 */ return;
|
|
}
|
|
|
|
// fn_0276D400 @ 0x276d400
|
|
void Gambit_fn_0276D400(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_0276D400: ; // 0x276d400
|
|
/* 0276D400 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0276D400 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D400 */ cpu->r[1] = _t0;
|
|
/* 0276D404 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276D408 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0276D408 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D40C */ cpu->r[12] = 0x10100000u;
|
|
/* 0276D410 */ cpu->r[11] = cpu->r[11] + 0x00000F70u;
|
|
/* 0276D414 */ cpu->r[12] = cpu->r[12] + 0x00000FF4u;
|
|
/* 0276D418 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D418 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0276D41C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D41C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0276D420 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276D420 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276D424 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276D428 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D42C */ cpu->r[0] = cpu->r[0] + 0x00000FF0u;
|
|
/* 0276D430 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D430 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0276D434 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D438 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0276D438 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276D43C */ Gambit_fn_02982574(cpu);
|
|
/* 0276D440 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276D444 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D448 */ _t7 = cpu->r[12] + 0xFFFF97D4u;
|
|
/* 0276D448 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D44C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D450 */ _t8 = cpu->r[10] + 0xFFFF97D8u;
|
|
/* 0276D450 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0276D454 */ _t9 = cpu->r[11] + 0xFFFF97D0u;
|
|
/* 0276D454 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D458 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0276D458 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[10]);
|
|
/* 0276D45C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D460 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276D460 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0276D464 */ _t12 = cpu->r[10] + 0xFFFF97D9u;
|
|
/* 0276D464 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0276D468 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D468 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0276D46C */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 0276D470 */ _t14 = cpu->r[1] + 0x00000031u;
|
|
/* 0276D470 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]);
|
|
/* 0276D474 */ Gambit_fn_02984F3C(cpu);
|
|
/* 0276D478 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276D47C */ cpu->r[0] = 0x00000006u;
|
|
/* 0276D480 */ cpu->r[9] = 0x00000003u;
|
|
/* 0276D484 */ _t15 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276D484 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276D488 */ cpu->r[7] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D48C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D490 */ _t16 = cpu->r[1] + 0x00000038u;
|
|
/* 0276D490 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276D494 */ cpu->r[8] = cpu->r[1] + 0x00000034u;
|
|
/* 0276D498 */ _t17 = cpu->r[12] + 0x00000248u;
|
|
/* 0276D498 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276D49C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D4A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D4A4 */ Gambit_fn_020022D4(cpu);
|
|
/* 0276D4A8 */ _t18 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276D4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276D4AC */ _t19 = cpu->r[1] + 0x00000044u;
|
|
/* 0276D4AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276D4B0 */ cpu->lr = cpu->r[0];
|
|
/* 0276D4B4 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0276D4B8 */ return;
|
|
}
|
|
|
|
// fn_0276D4BC @ 0x276d4bc
|
|
void Gambit_fn_0276D4BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0276D4BC: ; // 0x276d4bc
|
|
/* 0276D4BC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276D4C0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D4C4 */ _t0 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276D4C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D4C8 */ _t1 = cpu->r[11] + 0xFFFF8E98u;
|
|
/* 0276D4C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276D4CC */ cpu->r[11] = cpu->r[12] + cpu->r[11];
|
|
/* 0276D4D0 */ _t2 = cpu->r[11] + 0x00000104u;
|
|
/* 0276D4D0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0276D4D4 */ _t3 = cpu->r[12] + 0x00000030u;
|
|
/* 0276D4D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276D4D8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276D4DC */ _t4 = cpu->r[10] + cpu->r[0];
|
|
/* 0276D4DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D4E0 */ _t5 = cpu->r[9] + 0x00000004u;
|
|
/* 0276D4E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D4E4 */ _t6 = cpu->r[10] + 0x00000000u;
|
|
/* 0276D4E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276D4E8 */ _t7 = cpu->r[3] + 0x00000204u;
|
|
/* 0276D4E8 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0276D4EC */ _t8 = cpu->r[9] + 0x00000090u;
|
|
/* 0276D4EC */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0276D4F0 */ return;
|
|
}
|
|
|
|
// fn_0276D4F4 @ 0x276d4f4
|
|
void Gambit_fn_0276D4F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0276D4F4: ; // 0x276d4f4
|
|
/* 0276D4F4 */ cpu->r[0] = cpu->lr;
|
|
/* 0276D4F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D4F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D4F8 */ cpu->r[1] = _t0;
|
|
/* 0276D4FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D4FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D500 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D504 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D504 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D508 */ Gambit_fn_020026A4(cpu);
|
|
/* 0276D50C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276D510 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D510 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276D510 */ if (_t4) goto L_0276D520; else goto L_0276D514;
|
|
L_0276D514: ; // 0x276d514
|
|
/* 0276D514 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D518 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276D51C */ Gambit_fn_0276C6F8(cpu);
|
|
L_0276D520: ; // 0x276d520
|
|
/* 0276D520 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D520 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D524 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D524 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276D528 */ cpu->lr = cpu->r[0];
|
|
/* 0276D52C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D530 */ return;
|
|
}
|
|
|
|
// fn_0276D4F8 @ 0x276d4f8
|
|
void Gambit_fn_0276D4F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0276D4F8: ; // 0x276d4f8
|
|
/* 0276D4F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D4F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D4F8 */ cpu->r[1] = _t0;
|
|
/* 0276D4FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D4FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D500 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D504 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D504 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D508 */ Gambit_fn_020026A4(cpu);
|
|
/* 0276D50C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276D510 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D510 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276D510 */ if (_t4) goto L_0276D520; else goto L_0276D514;
|
|
L_0276D514: ; // 0x276d514
|
|
/* 0276D514 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D518 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276D51C */ Gambit_fn_0276C6F8(cpu);
|
|
L_0276D520: ; // 0x276d520
|
|
/* 0276D520 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D520 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D524 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D524 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276D528 */ cpu->lr = cpu->r[0];
|
|
/* 0276D52C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D530 */ return;
|
|
}
|
|
|
|
// fn_0276D534 @ 0x276d534
|
|
void Gambit_fn_0276D534(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276D534: ; // 0x276d534
|
|
/* 0276D534 */ cpu->r[0] = cpu->lr;
|
|
/* 0276D538 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276D538 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D538 */ cpu->r[1] = _t0;
|
|
/* 0276D53C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D53C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D540 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D544 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0276D544 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276D548 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D548 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276D54C */ Gambit_fn_020026A4(cpu);
|
|
/* 0276D550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276D554 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D554 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276D554 */ if (_t5) goto L_0276D584; else goto L_0276D558;
|
|
L_0276D558: ; // 0x276d558
|
|
/* 0276D558 */ cpu->r[0] = 0x00000000u;
|
|
/* 0276D55C */ cpu->r[30] = 0x00000001u;
|
|
/* 0276D560 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D564 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D564 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276D568 */ Gambit_fn_02778A04(cpu);
|
|
/* 0276D56C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276D570 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D570 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276D570 */ if (_t8) goto L_0276D578; else goto L_0276D574;
|
|
L_0276D574: ; // 0x276d574
|
|
/* 0276D574 */ cpu->r[30] = 0x00000002u;
|
|
L_0276D578: ; // 0x276d578
|
|
/* 0276D578 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D57C */ cpu->r[4] = cpu->r[30];
|
|
/* 0276D580 */ Gambit_fn_0276C6F8(cpu);
|
|
L_0276D584: ; // 0x276d584
|
|
/* 0276D584 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D588 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0276D588 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D58C */ cpu->lr = cpu->r[0];
|
|
/* 0276D590 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D590 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276D594 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D598 */ return;
|
|
}
|
|
|
|
// fn_0276D538 @ 0x276d538
|
|
void Gambit_fn_0276D538(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276D538: ; // 0x276d538
|
|
/* 0276D538 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276D538 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D538 */ cpu->r[1] = _t0;
|
|
/* 0276D53C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D53C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D540 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D544 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0276D544 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276D548 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D548 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276D54C */ Gambit_fn_020026A4(cpu);
|
|
/* 0276D550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276D554 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D554 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276D554 */ if (_t5) goto L_0276D584; else goto L_0276D558;
|
|
L_0276D558: ; // 0x276d558
|
|
/* 0276D558 */ cpu->r[0] = 0x00000000u;
|
|
/* 0276D55C */ cpu->r[30] = 0x00000001u;
|
|
/* 0276D560 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D564 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D564 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276D568 */ Gambit_fn_02778A04(cpu);
|
|
/* 0276D56C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276D570 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D570 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276D570 */ if (_t8) goto L_0276D578; else goto L_0276D574;
|
|
L_0276D574: ; // 0x276d574
|
|
/* 0276D574 */ cpu->r[30] = 0x00000002u;
|
|
L_0276D578: ; // 0x276d578
|
|
/* 0276D578 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D57C */ cpu->r[4] = cpu->r[30];
|
|
/* 0276D580 */ Gambit_fn_0276C6F8(cpu);
|
|
L_0276D584: ; // 0x276d584
|
|
/* 0276D584 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D584 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D588 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0276D588 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D58C */ cpu->lr = cpu->r[0];
|
|
/* 0276D590 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D590 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276D594 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D598 */ return;
|
|
}
|
|
|
|
// fn_0276D59C @ 0x276d59c
|
|
void Gambit_fn_0276D59C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276D59C: ; // 0x276d59c
|
|
/* 0276D59C */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 0276D5A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276D5A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D5A0 */ cpu->r[1] = _t0;
|
|
/* 0276D5A4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0276D5A8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0276D5AC */ _t1 = cpu->r[10] + 0x00001BCCu;
|
|
/* 0276D5AC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0276D5AC */ cpu->r[10] = _t1;
|
|
/* 0276D5B0 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0276D5B4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0276D5B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0276D5B8 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0276D5BC */ cpu->r[8] = 0x101F0000u;
|
|
/* 0276D5C0 */ _t3 = cpu->r[7] + 0x00001BDCu;
|
|
/* 0276D5C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0276D5C0 */ cpu->r[7] = _t3;
|
|
/* 0276D5C4 */ _t4 = cpu->r[8] + 0x00001BD4u;
|
|
/* 0276D5C4 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0276D5C4 */ cpu->r[8] = _t4;
|
|
/* 0276D5C8 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276D5CC */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0276D5CC */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0276D5D0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0276D5D4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D5D4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276D5D8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0276D5DC */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0276D5DC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0276D5E0 */ _t8 = cpu->r[8] + 0x00001BECu;
|
|
/* 0276D5E0 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0276D5E0 */ cpu->r[8] = _t8;
|
|
/* 0276D5E4 */ _t9 = cpu->r[12] + 0x00001BE4u;
|
|
/* 0276D5E4 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0276D5E4 */ cpu->r[12] = _t9;
|
|
/* 0276D5E8 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0276D5E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0276D5EC */ cpu->r[0] = 0x00000004u;
|
|
/* 0276D5F0 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0276D5F0 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0276D5F4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0276D5F8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D5F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276D5FC */ _t13 = cpu->r[11] + 0x00001BF4u;
|
|
/* 0276D5FC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0276D600 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D604 */ return;
|
|
}
|
|
|
|
// fn_0276D5A0 @ 0x276d5a0
|
|
void Gambit_fn_0276D5A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276D5A0: ; // 0x276d5a0
|
|
/* 0276D5A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276D5A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D5A0 */ cpu->r[1] = _t0;
|
|
/* 0276D5A4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0276D5A8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0276D5AC */ _t1 = cpu->r[10] + 0x00001BCCu;
|
|
/* 0276D5AC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0276D5AC */ cpu->r[10] = _t1;
|
|
/* 0276D5B0 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0276D5B4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0276D5B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0276D5B8 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0276D5BC */ cpu->r[8] = 0x101F0000u;
|
|
/* 0276D5C0 */ _t3 = cpu->r[7] + 0x00001BDCu;
|
|
/* 0276D5C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0276D5C0 */ cpu->r[7] = _t3;
|
|
/* 0276D5C4 */ _t4 = cpu->r[8] + 0x00001BD4u;
|
|
/* 0276D5C4 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0276D5C4 */ cpu->r[8] = _t4;
|
|
/* 0276D5C8 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276D5CC */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0276D5CC */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0276D5D0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0276D5D4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D5D4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276D5D8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0276D5DC */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0276D5DC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0276D5E0 */ _t8 = cpu->r[8] + 0x00001BECu;
|
|
/* 0276D5E0 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0276D5E0 */ cpu->r[8] = _t8;
|
|
/* 0276D5E4 */ _t9 = cpu->r[12] + 0x00001BE4u;
|
|
/* 0276D5E4 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0276D5E4 */ cpu->r[12] = _t9;
|
|
/* 0276D5E8 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0276D5E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0276D5EC */ cpu->r[0] = 0x00000004u;
|
|
/* 0276D5F0 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0276D5F0 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0276D5F4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0276D5F8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D5F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276D5FC */ _t13 = cpu->r[11] + 0x00001BF4u;
|
|
/* 0276D5FC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0276D600 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D604 */ return;
|
|
}
|
|
|
|
// fn_0276D608 @ 0x276d608
|
|
void Gambit_fn_0276D608(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_0276D608: ; // 0x276d608
|
|
/* 0276D608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276D60C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D60C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0276D60C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276D60C */ goto L_0276D610;
|
|
L_0276D610: ; // 0x276d610
|
|
/* 0276D610 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276D610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276D614 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D614 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0276D614 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276D614 */ goto L_0276D618;
|
|
L_0276D618: ; // 0x276d618
|
|
/* 0276D618 */ 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_0276D61C @ 0x276d61c
|
|
void Gambit_fn_0276D61C(CPUState* cpu) {
|
|
L_0276D61C: ; // 0x276d61c
|
|
/* 0276D61C */ return;
|
|
}
|
|
|
|
// fn_0276D620 @ 0x276d620
|
|
void Gambit_fn_0276D620(CPUState* cpu) {
|
|
L_0276D620: ; // 0x276d620
|
|
/* 0276D620 */ return;
|
|
}
|
|
|
|
// fn_0276D624 @ 0x276d624
|
|
void Gambit_fn_0276D624(CPUState* cpu) {
|
|
L_0276D624: ; // 0x276d624
|
|
/* 0276D624 */ return;
|
|
}
|
|
|
|
// fn_0276D628 @ 0x276d628
|
|
void Gambit_fn_0276D628(CPUState* cpu) {
|
|
L_0276D628: ; // 0x276d628
|
|
/* 0276D628 */ return;
|
|
}
|
|
|
|
// fn_0276D62C @ 0x276d62c
|
|
void Gambit_fn_0276D62C(CPUState* cpu) {
|
|
L_0276D62C: ; // 0x276d62c
|
|
/* 0276D62C */ return;
|
|
}
|
|
|
|
// fn_0276D630 @ 0x276d630
|
|
void Gambit_fn_0276D630(CPUState* cpu) {
|
|
L_0276D630: ; // 0x276d630
|
|
/* 0276D630 */ return;
|
|
}
|
|
|
|
// fn_0276D634 @ 0x276d634
|
|
void Gambit_fn_0276D634(CPUState* cpu) {
|
|
L_0276D634: ; // 0x276d634
|
|
/* 0276D634 */ return;
|
|
}
|
|
|
|
// fn_0276D638 @ 0x276d638
|
|
void Gambit_fn_0276D638(CPUState* cpu) {
|
|
L_0276D638: ; // 0x276d638
|
|
/* 0276D638 */ return;
|
|
}
|
|
|
|
// fn_0276D63C @ 0x276d63c
|
|
void Gambit_fn_0276D63C(CPUState* cpu) {
|
|
L_0276D63C: ; // 0x276d63c
|
|
/* 0276D63C */ return;
|
|
}
|
|
|
|
// fn_0276D640 @ 0x276d640
|
|
void Gambit_fn_0276D640(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0276D640: ; // 0x276d640
|
|
/* 0276D640 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0276D640 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D648 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D648 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D648 */ if (_t2) goto L_0276D654; else goto L_0276D64C;
|
|
L_0276D64C: ; // 0x276d64c
|
|
/* 0276D64C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0276D650 */ return;
|
|
L_0276D654: ; // 0x276d654
|
|
/* 0276D654 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276D658 */ return;
|
|
}
|
|
|
|
// fn_0276D65C @ 0x276d65c
|
|
void Gambit_fn_0276D65C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0276D65C: ; // 0x276d65c
|
|
/* 0276D65C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0276D65C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D664 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D664 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D664 */ if (_t2) goto L_0276D670; else goto L_0276D668;
|
|
L_0276D668: ; // 0x276d668
|
|
/* 0276D668 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0276D66C */ return;
|
|
L_0276D670: ; // 0x276d670
|
|
/* 0276D670 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276D674 */ return;
|
|
}
|
|
|
|
// fn_0276D678 @ 0x276d678
|
|
void Gambit_fn_0276D678(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D678: ; // 0x276d678
|
|
/* 0276D678 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276D678 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D67C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276D67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D680 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D680 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D680 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276D680 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276D680 */ goto L_0276D684;
|
|
L_0276D684: ; // 0x276d684
|
|
/* 0276D684 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D688 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0276D688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D68C */ cpu->ctr = cpu->r[0];
|
|
/* 0276D690 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D694 @ 0x276d694
|
|
void Gambit_fn_0276D694(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D694: ; // 0x276d694
|
|
/* 0276D694 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276D694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D698 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276D698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D69C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D69C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D69C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276D69C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276D69C */ goto L_0276D6A0;
|
|
L_0276D6A0: ; // 0x276d6a0
|
|
/* 0276D6A0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D6A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D6A4 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0276D6A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D6A8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D6AC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D6B0 @ 0x276d6b0
|
|
void Gambit_fn_0276D6B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D6B0: ; // 0x276d6b0
|
|
/* 0276D6B0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0276D6B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D6B4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0276D6B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276D6B8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D6B8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D6B8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0276D6B8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0276D6B8 */ goto L_0276D6BC;
|
|
L_0276D6BC: ; // 0x276d6bc
|
|
/* 0276D6BC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D6BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D6C0 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0276D6C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D6C4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D6C8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D6CC @ 0x276d6cc
|
|
void Gambit_fn_0276D6CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276D6CC: ; // 0x276d6cc
|
|
/* 0276D6CC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D6CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D6D0 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276D6D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276D6D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D6D8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D6DC @ 0x276d6dc
|
|
void Gambit_fn_0276D6DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0276D6DC: ; // 0x276d6dc
|
|
/* 0276D6DC */ cpu->r[0] = cpu->lr;
|
|
/* 0276D6E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D6E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D6E0 */ cpu->r[1] = _t0;
|
|
/* 0276D6E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D6E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D6E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D6EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D6EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D6F0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D6F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276D6F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0276D6F8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D6F8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276D6F8 */ if (_t5) goto L_0276D6FC; else goto L_0276D718;
|
|
L_0276D6FC: ; // 0x276d6fc
|
|
/* 0276D6FC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0276D6FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276D700 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0276D700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D704 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D708 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D70C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D710 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276D714 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D714 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0276D718: ; // 0x276d718
|
|
/* 0276D718 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D71C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D71C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D720 */ cpu->lr = cpu->r[0];
|
|
/* 0276D724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D728 */ return;
|
|
}
|
|
|
|
// fn_0276D6E0 @ 0x276d6e0
|
|
void Gambit_fn_0276D6E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0276D6E0: ; // 0x276d6e0
|
|
/* 0276D6E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D6E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D6E0 */ cpu->r[1] = _t0;
|
|
/* 0276D6E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D6E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D6E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D6EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D6EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D6F0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D6F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276D6F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0276D6F8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D6F8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276D6F8 */ if (_t5) goto L_0276D6FC; else goto L_0276D718;
|
|
L_0276D6FC: ; // 0x276d6fc
|
|
/* 0276D6FC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0276D6FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276D700 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0276D700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D704 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D708 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D70C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D710 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276D714 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D714 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0276D718: ; // 0x276d718
|
|
/* 0276D718 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D71C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D71C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D720 */ cpu->lr = cpu->r[0];
|
|
/* 0276D724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D728 */ return;
|
|
}
|
|
|
|
// fn_0276D72C @ 0x276d72c
|
|
void Gambit_fn_0276D72C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276D72C: ; // 0x276d72c
|
|
/* 0276D72C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D72C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D730 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0276D730 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276D734 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D738 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D73C @ 0x276d73c
|
|
void Gambit_fn_0276D73C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276D73C: ; // 0x276d73c
|
|
/* 0276D73C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D73C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D740 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0276D740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276D744 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D748 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D74C @ 0x276d74c
|
|
void Gambit_fn_0276D74C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276D74C: ; // 0x276d74c
|
|
/* 0276D74C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276D74C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D750 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0276D750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276D754 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D758 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276D75C @ 0x276d75c
|
|
void Gambit_fn_0276D75C(CPUState* cpu) {
|
|
L_0276D75C: ; // 0x276d75c
|
|
/* 0276D75C */ cpu->r[3] = 0x00000001u;
|
|
/* 0276D760 */ return;
|
|
}
|
|
|
|
// fn_0276D764 @ 0x276d764
|
|
void Gambit_fn_0276D764(CPUState* cpu) {
|
|
L_0276D764: ; // 0x276d764
|
|
/* 0276D764 */ return;
|
|
}
|
|
|
|
// fn_0276D768 @ 0x276d768
|
|
void Gambit_fn_0276D768(CPUState* cpu) {
|
|
L_0276D768: ; // 0x276d768
|
|
/* 0276D768 */ return;
|
|
}
|
|
|
|
// fn_0276D76C @ 0x276d76c
|
|
void Gambit_fn_0276D76C(CPUState* cpu) {
|
|
L_0276D76C: ; // 0x276d76c
|
|
/* 0276D76C */ return;
|
|
}
|
|
|
|
// fn_0276D770 @ 0x276d770
|
|
void Gambit_fn_0276D770(CPUState* cpu) {
|
|
L_0276D770: ; // 0x276d770
|
|
/* 0276D770 */ return;
|
|
}
|
|
|
|
// fn_0276D774 @ 0x276d774
|
|
void Gambit_fn_0276D774(CPUState* cpu) {
|
|
L_0276D774: ; // 0x276d774
|
|
/* 0276D774 */ return;
|
|
}
|
|
|
|
// fn_0276D778 @ 0x276d778
|
|
void Gambit_fn_0276D778(CPUState* cpu) {
|
|
L_0276D778: ; // 0x276d778
|
|
/* 0276D778 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276D77C */ return;
|
|
}
|
|
|
|
// fn_0276D780 @ 0x276d780
|
|
void Gambit_fn_0276D780(CPUState* cpu) {
|
|
L_0276D780: ; // 0x276d780
|
|
/* 0276D780 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276D784 */ return;
|
|
}
|
|
|
|
// fn_0276D788 @ 0x276d788
|
|
void Gambit_fn_0276D788(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0276D788: ; // 0x276d788
|
|
/* 0276D788 */ cpu->r[0] = cpu->lr;
|
|
/* 0276D78C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276D78C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D78C */ cpu->r[1] = _t0;
|
|
/* 0276D790 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D790 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D794 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D794 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D798 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0276D798 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276D79C */ cpu->r[4] = 0x00000000u;
|
|
/* 0276D7A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D7A4 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276D7A8 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D7A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276D7B0 */ cpu->r[11] = 0x00000000u;
|
|
/* 0276D7B4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D7B4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276D7B4 */ if (_t6) goto L_0276D7C0; else goto L_0276D7B8;
|
|
L_0276D7B8: ; // 0x276d7b8
|
|
/* 0276D7B8 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 0276D7B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D7BC */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0276D7BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_0276D7C0: ; // 0x276d7c0
|
|
/* 0276D7C0 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 0276D7C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D7C4 */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 0276D7C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D7C8 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276D7C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276D7CC */ cpu->ctr = cpu->r[0];
|
|
/* 0276D7D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D7D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D7D8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D7D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276D7DC */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0276D7DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276D7E0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D7E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D7E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D7EC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D7EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276D7F0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D7F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276D7F4 */ cpu->lr = cpu->r[0];
|
|
/* 0276D7F8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D7F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276D7FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D800 */ return;
|
|
}
|
|
|
|
// fn_0276D78C @ 0x276d78c
|
|
void Gambit_fn_0276D78C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0276D78C: ; // 0x276d78c
|
|
/* 0276D78C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276D78C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D78C */ cpu->r[1] = _t0;
|
|
/* 0276D790 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D790 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D794 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D794 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D798 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0276D798 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276D79C */ cpu->r[4] = 0x00000000u;
|
|
/* 0276D7A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276D7A4 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276D7A8 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276D7A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276D7B0 */ cpu->r[11] = 0x00000000u;
|
|
/* 0276D7B4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D7B4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276D7B4 */ if (_t6) goto L_0276D7C0; else goto L_0276D7B8;
|
|
L_0276D7B8: ; // 0x276d7b8
|
|
/* 0276D7B8 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 0276D7B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D7BC */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0276D7BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_0276D7C0: ; // 0x276d7c0
|
|
/* 0276D7C0 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 0276D7C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276D7C4 */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 0276D7C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276D7C8 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0276D7C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276D7CC */ cpu->ctr = cpu->r[0];
|
|
/* 0276D7D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D7D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D7D8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D7D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276D7DC */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0276D7DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276D7E0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276D7E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276D7E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276D7EC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276D7EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276D7F0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276D7F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276D7F4 */ cpu->lr = cpu->r[0];
|
|
/* 0276D7F8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D7F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276D7FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276D800 */ return;
|
|
}
|
|
|
|
// fn_0276D804 @ 0x276d804
|
|
void Gambit_fn_0276D804(CPUState* cpu) {
|
|
L_0276D804: ; // 0x276d804
|
|
/* 0276D804 */ return;
|
|
}
|
|
|
|
// fn_0276D808 @ 0x276d808
|
|
void Gambit_fn_0276D808(CPUState* cpu) {
|
|
L_0276D808: ; // 0x276d808
|
|
/* 0276D808 */ return;
|
|
}
|
|
|
|
// fn_0276D80C @ 0x276d80c
|
|
void Gambit_fn_0276D80C(CPUState* cpu) {
|
|
L_0276D80C: ; // 0x276d80c
|
|
/* 0276D80C */ return;
|
|
}
|
|
|
|
// fn_0276D810 @ 0x276d810
|
|
void Gambit_fn_0276D810(CPUState* cpu) {
|
|
L_0276D810: ; // 0x276d810
|
|
/* 0276D810 */ return;
|
|
}
|
|
|
|
// fn_0276D814 @ 0x276d814
|
|
void Gambit_fn_0276D814(CPUState* cpu) {
|
|
L_0276D814: ; // 0x276d814
|
|
/* 0276D814 */ return;
|
|
}
|
|
|
|
// fn_0276D818 @ 0x276d818
|
|
void Gambit_fn_0276D818(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276C578: ; // 0x276c578
|
|
/* 0276C578 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C57C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C57C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C57C */ cpu->r[1] = _t0;
|
|
/* 0276C580 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C580 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C584 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C588 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C588 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C58C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0276C58C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C590 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276C594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C598 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0276C598 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0276C59C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C59C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C59C */ if (_t6) goto L_0276C5C4; else goto L_0276C5A0;
|
|
L_0276C5A0: ; // 0x276c5a0
|
|
/* 0276C5A0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0276C5A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276C5A4 */ /* nop */
|
|
/* 0276C5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276C5AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C5AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C5AC */ if (_t9) goto L_0276C5B0; else goto L_0276C5C4;
|
|
L_0276C5B0: ; // 0x276c5b0
|
|
/* 0276C5B0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C5B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C5B4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C5B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C5BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C5C4: ; // 0x276c5c4
|
|
/* 0276C5C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C8 */ Gambit_fn_0276C4F0(cpu);
|
|
/* 0276C5CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5D0 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0276C5D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C5D8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C5D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C5DC */ cpu->lr = cpu->r[0];
|
|
/* 0276C5E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C5E4 */ return;
|
|
L_0276D818: ; // 0x276d818
|
|
/* 0276D818 */ cpu->r[3] = cpu->r[3] + 0x000001CCu;
|
|
/* 0276D81C */ goto L_0276C578;
|
|
}
|
|
|
|
// fn_0276D820 @ 0x276d820
|
|
void Gambit_fn_0276D820(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D820: ; // 0x276d820
|
|
/* 0276D820 */ cpu->r[0] = cpu->lr;
|
|
/* 0276D824 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D824 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D824 */ cpu->r[1] = _t0;
|
|
/* 0276D828 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D828 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D82C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D830 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D830 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D834 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 0276D834 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276D838 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D83C */ /* nop */
|
|
/* 0276D840 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276D844 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D848 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276D84C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D84C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D850 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D850 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D854 */ cpu->lr = cpu->r[0];
|
|
/* 0276D858 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D85C */ return;
|
|
}
|
|
|
|
// fn_0276D824 @ 0x276d824
|
|
void Gambit_fn_0276D824(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0276D824: ; // 0x276d824
|
|
/* 0276D824 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276D824 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D824 */ cpu->r[1] = _t0;
|
|
/* 0276D828 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D828 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276D82C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276D830 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D830 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276D834 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 0276D834 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276D838 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D83C */ /* nop */
|
|
/* 0276D840 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276D844 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276D848 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276D84C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0276D84C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276D850 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276D850 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276D854 */ cpu->lr = cpu->r[0];
|
|
/* 0276D858 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276D85C */ return;
|
|
}
|
|
|
|
// fn_0276D860 @ 0x276d860
|
|
void Gambit_fn_0276D860(CPUState* cpu) {
|
|
L_0276D860: ; // 0x276d860
|
|
/* 0276D860 */ cpu->r[3] = 0x10100000u;
|
|
/* 0276D864 */ cpu->r[3] = cpu->r[3] + 0x00000FC8u;
|
|
/* 0276D868 */ return;
|
|
}
|
|
|
|
// fn_0276D86C @ 0x276d86c
|
|
void Gambit_fn_0276D86C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _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_0276D86C: ; // 0x276d86c
|
|
/* 0276D86C */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D870 */ _t0 = cpu->r[10] + 0x00001304u;
|
|
/* 0276D870 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276D874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276D878 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D87C */ cpu->r[10] = cpu->r[10] + 0x00001308u;
|
|
/* 0276D880 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D880 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0276D880 */ if (_t2) goto L_0276D884; else goto L_0276D89C;
|
|
L_0276D884: ; // 0x276d884
|
|
/* 0276D884 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276D888 */ cpu->r[9] = 0x00000001u;
|
|
/* 0276D88C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D890 */ cpu->r[0] = cpu->r[0] + 0x00000FB8u;
|
|
/* 0276D894 */ _t3 = cpu->r[11] + 0x00001304u;
|
|
/* 0276D894 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 0276D898 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0276D898 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_0276D89C: ; // 0x276d89c
|
|
/* 0276D89C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0276D8A0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D8A0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276D8A0 */ if (_t6) goto L_0276D8A4; else goto L_0276D8AC;
|
|
L_0276D8A4: ; // 0x276d8a4
|
|
/* 0276D8A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 0276D8A8 */ return;
|
|
L_0276D8AC: ; // 0x276d8ac
|
|
/* 0276D8AC */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276D8B0 */ _t7 = cpu->r[9] + 0x000012CCu;
|
|
/* 0276D8B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276D8B4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D8B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276D8BC */ cpu->r[11] = cpu->r[11] + 0x000012D0u;
|
|
/* 0276D8C0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D8C0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276D8C0 */ if (_t9) goto L_0276D8C4; else goto L_0276D8DC;
|
|
L_0276D8C4: ; // 0x276d8c4
|
|
/* 0276D8C4 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276D8C8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D8CC */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D8D0 */ cpu->r[9] = cpu->r[9] + 0x00000FA8u;
|
|
/* 0276D8D4 */ _t10 = cpu->r[10] + 0x000012CCu;
|
|
/* 0276D8D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0276D8D8 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0276D8D8 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_0276D8DC: ; // 0x276d8dc
|
|
/* 0276D8DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 0276D8E0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D8E0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276D8E0 */ if (_t13) goto L_0276D8E4; else goto L_0276D8EC;
|
|
L_0276D8E4: ; // 0x276d8e4
|
|
/* 0276D8E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D8E8 */ goto L_0276D9A4;
|
|
L_0276D8EC: ; // 0x276d8ec
|
|
/* 0276D8EC */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D8F0 */ _t14 = cpu->r[11] + 0xFFFFDB24u;
|
|
/* 0276D8F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276D8F4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276D8F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0276D8FC */ cpu->r[9] = cpu->r[9] + 0xFFFFDB28u;
|
|
/* 0276D900 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D900 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0276D900 */ if (_t16) goto L_0276D904; else goto L_0276D91C;
|
|
L_0276D904: ; // 0x276d904
|
|
/* 0276D904 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276D908 */ cpu->r[10] = 0x00000001u;
|
|
/* 0276D90C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276D910 */ cpu->r[11] = cpu->r[11] + 0x00000F98u;
|
|
/* 0276D914 */ _t17 = cpu->r[12] + 0xFFFFDB24u;
|
|
/* 0276D914 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0276D918 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0276D918 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_0276D91C: ; // 0x276d91c
|
|
/* 0276D91C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0276D920 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D920 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276D920 */ if (_t20) goto L_0276D924; else goto L_0276D92C;
|
|
L_0276D924: ; // 0x276d924
|
|
/* 0276D924 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D928 */ goto L_0276D9A0;
|
|
L_0276D92C: ; // 0x276d92c
|
|
/* 0276D92C */ cpu->r[9] = 0x101D0000u;
|
|
/* 0276D930 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 0276D930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276D930 */ cpu->r[9] = _t21;
|
|
/* 0276D934 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D938 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276D93C */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 0276D940 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D940 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0276D940 */ if (_t23) goto L_0276D944; else goto L_0276D958;
|
|
L_0276D944: ; // 0x276d944
|
|
/* 0276D944 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276D948 */ cpu->r[11] = 0x00000001u;
|
|
/* 0276D94C */ cpu->r[0] = cpu->r[0] + 0x00000F88u;
|
|
/* 0276D950 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 0276D950 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 0276D954 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 0276D954 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_0276D958: ; // 0x276d958
|
|
/* 0276D958 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0276D95C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D95C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0276D95C */ if (_t27) goto L_0276D960; else goto L_0276D968;
|
|
L_0276D960: ; // 0x276d960
|
|
/* 0276D960 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D964 */ goto L_0276D9A0;
|
|
L_0276D968: ; // 0x276d968
|
|
/* 0276D968 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0276D96C */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 0276D96C */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276D96C */ cpu->r[10] = _t28;
|
|
/* 0276D970 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0276D974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276D978 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0276D97C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D97C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0276D97C */ if (_t30) goto L_0276D980; else goto L_0276D994;
|
|
L_0276D980: ; // 0x276d980
|
|
/* 0276D980 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276D984 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276D988 */ cpu->r[9] = cpu->r[9] + 0x00000F60u;
|
|
/* 0276D98C */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0276D98C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0276D990 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 0276D990 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0276D994: ; // 0x276d994
|
|
/* 0276D994 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0276D998 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0276D99C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0276D9A0: ; // 0x276d9a0
|
|
/* 0276D9A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0276D9A4: ; // 0x276d9a4
|
|
/* 0276D9A4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0276D9A8 */ return;
|
|
}
|
|
|
|
// fn_0276D9AC @ 0x276d9ac
|
|
void Gambit_fn_0276D9AC(CPUState* cpu) {
|
|
L_0276D9AC: ; // 0x276d9ac
|
|
/* 0276D9AC */ cpu->r[3] = 0x10100000u;
|
|
/* 0276D9B0 */ cpu->r[3] = cpu->r[3] + 0x00000FDCu;
|
|
/* 0276D9B4 */ return;
|
|
}
|
|
|
|
// fn_0276D9B8 @ 0x276d9b8
|
|
void Gambit_fn_0276D9B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_0276D9B8: ; // 0x276d9b8
|
|
/* 0276D9B8 */ cpu->r[0] = cpu->lr;
|
|
/* 0276D9BC */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 0276D9BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D9BC */ cpu->r[1] = _t0;
|
|
/* 0276D9C0 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 0276D9C0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0276D9C4 */ /* nop */
|
|
/* 0276D9C8 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0276D9C8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0276D9CC */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 0276D9CC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276D9D0 */ /* nop */
|
|
/* 0276D9D4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276D9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276D9D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D9D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276D9D8 */ if (_t5) goto L_0276D9DC; else goto L_0276D9EC;
|
|
L_0276D9DC: ; // 0x276d9dc
|
|
/* 0276D9DC */ cpu->r[3] = 0x000002E0u;
|
|
/* 0276D9E0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276D9E4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276D9E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276D9E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D9E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276D9E8 */ if (_t7) goto L_0276E154; else goto L_0276D9EC;
|
|
L_0276D9EC: ; // 0x276d9ec
|
|
/* 0276D9EC */ cpu->r[3] = cpu->r[29];
|
|
/* 0276D9F0 */ Gambit_fn_02001FA8(cpu);
|
|
/* 0276D9F4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276D9F8 */ cpu->r[31] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276D9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276D9FC */ cpu->r[0] = cpu->r[0] + 0x00001808u;
|
|
/* 0276DA00 */ cpu->r[28] = 0x00000000u;
|
|
/* 0276DA04 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 0276DA04 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0276DA08 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DA08 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276DA08 */ if (_t10) goto L_0276DA0C; else goto L_0276DA1C;
|
|
L_0276DA0C: ; // 0x276da0c
|
|
/* 0276DA0C */ cpu->r[3] = 0x00000038u;
|
|
/* 0276DA10 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276DA14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276DA14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276DA18 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DA18 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276DA18 */ if (_t12) goto L_0276DA4C; else goto L_0276DA1C;
|
|
L_0276DA1C: ; // 0x276da1c
|
|
/* 0276DA1C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276DA20 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0276DA24 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276DA28 */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0276DA28 */ rbrew_write32(cpu->mem, _t13, cpu->r[28]);
|
|
/* 0276DA2C */ cpu->r[10] = cpu->r[10] + 0x000008D4u;
|
|
/* 0276DA30 */ _t14 = cpu->r[31] + 0x00000034u;
|
|
/* 0276DA30 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 0276DA34 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0276DA34 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 0276DA38 */ _t16 = cpu->r[31] + 0x00000024u;
|
|
/* 0276DA38 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 0276DA3C */ _t17 = cpu->r[31] + 0x00000028u;
|
|
/* 0276DA3C */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 0276DA40 */ _t18 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0276DA40 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 0276DA44 */ _t19 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276DA44 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 0276DA48 */ _t20 = cpu->r[31] + 0x00000020u;
|
|
/* 0276DA48 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
L_0276DA4C: ; // 0x276da4c
|
|
/* 0276DA4C */ cpu->r[4] = 0x0000000Cu;
|
|
/* 0276DA50 */ cpu->r[6] = 0x02770000u;
|
|
/* 0276DA54 */ cpu->r[3] = cpu->r[29] + 0x00000208u;
|
|
/* 0276DA58 */ cpu->r[5] = cpu->r[4];
|
|
/* 0276DA5C */ cpu->r[6] = cpu->r[6] + 0x00000478u;
|
|
/* 0276DA60 */ _t21 = cpu->r[29] + 0x00000204u;
|
|
/* 0276DA60 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0276DA64 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0276DA68 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0276DA6C */ _t22 = cpu->r[29] + 0x00000298u;
|
|
/* 0276DA6C */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[28]);
|
|
/* 0276DA70 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276DA74 */ _t23 = cpu->r[29] + 0x000002A2u;
|
|
/* 0276DA74 */ rbrew_write16(cpu->mem, _t23, (uint16_t)cpu->r[11]);
|
|
/* 0276DA78 */ _t24 = cpu->r[10] + 0x00001608u;
|
|
/* 0276DA78 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0276DA7C */ _t25 = cpu->r[29] + 0x000002A0u;
|
|
/* 0276DA7C */ rbrew_write16(cpu->mem, _t25, (uint16_t)cpu->r[11]);
|
|
/* 0276DA80 */ cpu->r[3] = cpu->r[29] + 0x000002A8u;
|
|
/* 0276DA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DA84 */ _t26 = cpu->r[29] + 0x000002A4u;
|
|
/* 0276DA84 */ rbrew_write16(cpu->mem, _t26, (uint16_t)cpu->r[11]);
|
|
/* 0276DA88 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DA88 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0276DA88 */ if (_t28) goto L_0276DA8C; else goto L_0276DA9C;
|
|
L_0276DA8C: ; // 0x276da8c
|
|
/* 0276DA8C */ cpu->r[3] = 0x00000008u;
|
|
/* 0276DA90 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276DA94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DA98 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DA98 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0276DA98 */ if (_t30) goto L_0276DAA4; else goto L_0276DA9C;
|
|
L_0276DA9C: ; // 0x276da9c
|
|
/* 0276DA9C */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 0276DA9C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[31]);
|
|
/* 0276DAA0 */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 0276DAA0 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
L_0276DAA4: ; // 0x276daa4
|
|
/* 0276DAA4 */ cpu->r[3] = cpu->r[29] + 0x000002B4u;
|
|
/* 0276DAA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DAA8 */ _t33 = cpu->r[29] + 0x000002B0u;
|
|
/* 0276DAA8 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
/* 0276DAAC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DAAC */ _t35 = _t34 & 0x00000001u;
|
|
/* 0276DAAC */ if (_t35) goto L_0276DAB0; else goto L_0276DAC0;
|
|
L_0276DAB0: ; // 0x276dab0
|
|
/* 0276DAB0 */ cpu->r[3] = 0x00000008u;
|
|
/* 0276DAB4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276DAB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DABC */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DABC */ _t37 = _t36 & 0x00000001u;
|
|
/* 0276DABC */ if (_t37) goto L_0276DAC8; else goto L_0276DAC0;
|
|
L_0276DAC0: ; // 0x276dac0
|
|
/* 0276DAC0 */ _t38 = cpu->r[3] + 0x00000004u;
|
|
/* 0276DAC0 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 0276DAC4 */ _t39 = cpu->r[3] + 0x00000000u;
|
|
/* 0276DAC4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[31]);
|
|
L_0276DAC8: ; // 0x276dac8
|
|
/* 0276DAC8 */ _t40 = cpu->r[29] + 0x000002BCu;
|
|
/* 0276DAC8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]);
|
|
/* 0276DACC */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0276DAD0 */ _t41 = cpu->r[29] + 0x000002C4u;
|
|
/* 0276DAD0 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[28]);
|
|
/* 0276DAD4 */ _t42 = cpu->r[29] + 0x000002C8u;
|
|
/* 0276DAD4 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[4]);
|
|
/* 0276DAD8 */ _t43 = cpu->r[29] + 0x000002CAu;
|
|
/* 0276DAD8 */ rbrew_write16(cpu->mem, _t43, (uint16_t)cpu->r[4]);
|
|
/* 0276DADC */ _t44 = cpu->r[29] + 0x000002CCu;
|
|
/* 0276DADC */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[4]);
|
|
/* 0276DAE0 */ cpu->r[3] = cpu->r[29] + 0x000002D0u;
|
|
/* 0276DAE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DAE4 */ _t45 = cpu->r[29] + 0x000002C0u;
|
|
/* 0276DAE4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[31]);
|
|
/* 0276DAE8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DAE8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0276DAE8 */ if (_t47) goto L_0276DAEC; else goto L_0276DAFC;
|
|
L_0276DAEC: ; // 0x276daec
|
|
/* 0276DAEC */ cpu->r[3] = 0x00000008u;
|
|
/* 0276DAF0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276DAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DAF8 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DAF8 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0276DAF8 */ if (_t49) goto L_0276DB04; else goto L_0276DAFC;
|
|
L_0276DAFC: ; // 0x276dafc
|
|
/* 0276DAFC */ _t50 = cpu->r[3] + 0x00000004u;
|
|
/* 0276DAFC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 0276DB00 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 0276DB00 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
L_0276DB04: ; // 0x276db04
|
|
/* 0276DB04 */ _t52 = cpu->r[29] + 0x000002D8u;
|
|
/* 0276DB04 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[28]);
|
|
/* 0276DB08 */ cpu->r[0] = 0x00000006u;
|
|
/* 0276DB0C */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DB10 */ _t53 = cpu->r[29] + 0x000002DCu;
|
|
/* 0276DB10 */ rbrew_write32(cpu->mem, _t53, cpu->r[28]);
|
|
/* 0276DB14 */ cpu->r[4] = cpu->r[29];
|
|
/* 0276DB18 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DB1C */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DB20 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DB20 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[0]);
|
|
/* 0276DB24 */ Gambit_fn_02770668(cpu);
|
|
/* 0276DB28 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276DB2C */ cpu->r[4] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DB30 */ Gambit_fn_02000834(cpu);
|
|
/* 0276DB34 */ cpu->r[26] = 0x02770000u;
|
|
/* 0276DB38 */ cpu->r[7] = 0x10100000u;
|
|
/* 0276DB3C */ cpu->r[27] = 0x10100000u;
|
|
/* 0276DB40 */ cpu->r[26] = cpu->r[26] + 0x00000148u;
|
|
/* 0276DB44 */ cpu->r[27] = cpu->r[27] + 0x00001288u;
|
|
/* 0276DB48 */ cpu->ctr = cpu->r[26];
|
|
/* 0276DB4C */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DB4C */ rbrew_write32(cpu->mem, _t55, cpu->r[27]);
|
|
/* 0276DB50 */ cpu->r[7] = cpu->r[7] + 0x00001654u;
|
|
/* 0276DB54 */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DB54 */ rbrew_write32(cpu->mem, _t56, cpu->r[7]);
|
|
/* 0276DB58 */ _t57 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DB58 */ cpu->r[24] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0276DB5C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DB60 */ _t58 = cpu->r[24] + 0x00000000u;
|
|
/* 0276DB60 */ cpu->r[25] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0276DB64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DB68 */ cpu->r[31] = 0x10110000u;
|
|
/* 0276DB6C */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DB6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0276DB70 */ _t60 = cpu->r[31] + 0x00007399u;
|
|
/* 0276DB70 */ cpu->r[31] = rbrew_read8(cpu->mem, _t60);
|
|
/* 0276DB74 */ _t61 = cpu->r[12] + 0x00000000u;
|
|
/* 0276DB74 */ cpu->r[9] = rbrew_read8(cpu->mem, _t61);
|
|
/* 0276DB78 */ cpu->r[30] = 0x00000000u;
|
|
/* 0276DB7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 0276DB80 */ cpu->r[5] = 0x00080000u;
|
|
/* 0276DB84 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DB84 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0276DB84 */ if (_t63) goto L_0276DBAC; else goto L_0276DB88;
|
|
L_0276DB88: ; // 0x276db88
|
|
/* 0276DB88 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276DB8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 0276DB90 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0276DB94 */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DB94 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0276DB94 */ if (_t65) goto L_0276DBA8; else goto L_0276DB98;
|
|
L_0276DB98: ; // 0x276db98
|
|
/* 0276DB98 */ _t66 = cpu->r[12] + 0x00000000u;
|
|
/* 0276DB98 */ cpu->r[10] = rbrew_read8(cpu->mem, _t66);
|
|
/* 0276DB9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0276DBA0 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DBA0 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0276DBA0 */ if (_t68) goto L_0276DBA4; else goto L_0276DB88;
|
|
L_0276DBA4: ; // 0x276dba4
|
|
/* 0276DBA4 */ goto L_0276DBAC;
|
|
L_0276DBA8: ; // 0x276dba8
|
|
/* 0276DBA8 */ cpu->r[30] = 0x00000000u;
|
|
L_0276DBAC: ; // 0x276dbac
|
|
/* 0276DBAC */ _t69 = cpu->r[24] + 0x00000008u;
|
|
/* 0276DBAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0276DBB0 */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DBB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0276DBB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0276DBB8 */ _t71 = cpu->r[11] + 0x00000014u;
|
|
/* 0276DBB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0276DBBC */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DBBC */ _t73 = _t72 & 0x00000001u;
|
|
/* 0276DBBC */ if (_t73) goto L_0276DBC4; else goto L_0276DBC0;
|
|
L_0276DBC0: ; // 0x276dbc0
|
|
/* 0276DBC0 */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0276DBC4: ; // 0x276dbc4
|
|
/* 0276DBC4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276DBC8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DBCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DBD0 */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DBD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0276DBD4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DBD8 */ cpu->r[5] = cpu->r[30];
|
|
/* 0276DBDC */ cpu->r[3] = cpu->r[25];
|
|
/* 0276DBE0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DBE4 */ _t75 = cpu->r[25] + cpu->r[30];
|
|
/* 0276DBE4 */ rbrew_write8(cpu->mem, _t75, (uint8_t)cpu->r[31]);
|
|
/* 0276DBE8 */ cpu->r[11] = 0x02770000u;
|
|
/* 0276DBEC */ _t76 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DBEC */ rbrew_write16(cpu->mem, _t76, (uint16_t)cpu->r[28]);
|
|
/* 0276DBF0 */ cpu->r[8] = 0x02770000u;
|
|
/* 0276DBF4 */ _t77 = cpu->r[1] + 0x00000014u;
|
|
/* 0276DBF4 */ rbrew_write16(cpu->mem, _t77, (uint16_t)cpu->r[28]);
|
|
/* 0276DBF8 */ cpu->r[8] = cpu->r[8] + 0xFFFFEC40u;
|
|
/* 0276DBFC */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 0276DBFC */ rbrew_write32(cpu->mem, _t78, cpu->r[28]);
|
|
/* 0276DC00 */ cpu->r[11] = cpu->r[11] + 0xFFFFECB4u;
|
|
/* 0276DC04 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 0276DC04 */ rbrew_write32(cpu->mem, _t79, cpu->r[8]);
|
|
/* 0276DC08 */ _t80 = cpu->r[1] + 0x00000020u;
|
|
/* 0276DC08 */ rbrew_write32(cpu->mem, _t80, cpu->r[11]);
|
|
/* 0276DC0C */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0276DC10 */ _t81 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DC10 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[28]);
|
|
/* 0276DC14 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DC18 */ _t82 = cpu->r[1] + 0x00000016u;
|
|
/* 0276DC18 */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[10]);
|
|
/* 0276DC1C */ cpu->r[8] = 0x00000000u;
|
|
/* 0276DC20 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DC24 */ _t83 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276DC24 */ rbrew_write16(cpu->mem, _t83, (uint16_t)cpu->r[10]);
|
|
/* 0276DC28 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DC2C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276DC30 */ _t84 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DC30 */ rbrew_write8(cpu->mem, _t84, (uint8_t)cpu->r[8]);
|
|
/* 0276DC34 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0276DC38 */ _t85 = cpu->r[1] + 0x00000026u;
|
|
/* 0276DC38 */ rbrew_write16(cpu->mem, _t85, (uint16_t)cpu->r[28]);
|
|
/* 0276DC3C */ Gambit_fn_02770918(cpu);
|
|
/* 0276DC40 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276DC44 */ _t86 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DC44 */ rbrew_write32(cpu->mem, _t86, cpu->r[27]);
|
|
/* 0276DC48 */ cpu->r[0] = cpu->r[0] + 0x0000162Cu;
|
|
/* 0276DC4C */ _t87 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DC4C */ rbrew_write32(cpu->mem, _t87, cpu->r[0]);
|
|
/* 0276DC50 */ _t88 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276DC50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0276DC54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000001u);
|
|
/* 0276DC58 */ _t89 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DC58 */ cpu->r[25] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0276DC5C */ _t90 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DC5C */ _t91 = _t90 & 0x00000001u;
|
|
/* 0276DC5C */ if (_t91) goto L_0276DC60; else goto L_0276DC64;
|
|
L_0276DC60: ; // 0x276dc60
|
|
/* 0276DC60 */ cpu->r[25] = cpu->r[25] + 0x00000024u;
|
|
L_0276DC64: ; // 0x276dc64
|
|
/* 0276DC64 */ cpu->ctr = cpu->r[26];
|
|
/* 0276DC68 */ _t92 = cpu->r[25] + 0x00000000u;
|
|
/* 0276DC68 */ cpu->r[24] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0276DC6C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DC70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DC74 */ _t93 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DC74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0276DC78 */ _t94 = cpu->r[7] + 0x00000000u;
|
|
/* 0276DC78 */ cpu->r[12] = rbrew_read8(cpu->mem, _t94);
|
|
/* 0276DC7C */ cpu->r[30] = 0x00000000u;
|
|
/* 0276DC80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 0276DC84 */ cpu->r[0] = 0x00080000u;
|
|
/* 0276DC88 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DC88 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0276DC88 */ if (_t96) goto L_0276DCB0; else goto L_0276DC8C;
|
|
L_0276DC8C: ; // 0x276dc8c
|
|
/* 0276DC8C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276DC90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0276DC94 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0276DC98 */ _t97 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DC98 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0276DC98 */ if (_t98) goto L_0276DCAC; else goto L_0276DC9C;
|
|
L_0276DC9C: ; // 0x276dc9c
|
|
/* 0276DC9C */ _t99 = cpu->r[7] + 0x00000000u;
|
|
/* 0276DC9C */ cpu->r[5] = rbrew_read8(cpu->mem, _t99);
|
|
/* 0276DCA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0276DCA4 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DCA4 */ _t101 = _t100 & 0x00000001u;
|
|
/* 0276DCA4 */ if (_t101) goto L_0276DCA8; else goto L_0276DC8C;
|
|
L_0276DCA8: ; // 0x276dca8
|
|
/* 0276DCA8 */ goto L_0276DCB0;
|
|
L_0276DCAC: ; // 0x276dcac
|
|
/* 0276DCAC */ cpu->r[30] = 0x00000000u;
|
|
L_0276DCB0: ; // 0x276dcb0
|
|
/* 0276DCB0 */ _t102 = cpu->r[25] + 0x00000008u;
|
|
/* 0276DCB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0276DCB4 */ _t103 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DCB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0276DCB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 0276DCBC */ _t104 = cpu->r[6] + 0x00000014u;
|
|
/* 0276DCBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0276DCC0 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DCC0 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0276DCC0 */ if (_t106) goto L_0276DCC8; else goto L_0276DCC4;
|
|
L_0276DCC4: ; // 0x276dcc4
|
|
/* 0276DCC4 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0276DCC8: ; // 0x276dcc8
|
|
/* 0276DCC8 */ cpu->ctr = cpu->r[8];
|
|
/* 0276DCCC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DCD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DCD4 */ _t107 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DCD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0276DCD8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DCDC */ cpu->r[5] = cpu->r[30];
|
|
/* 0276DCE0 */ cpu->r[3] = cpu->r[24];
|
|
/* 0276DCE4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DCE8 */ _t108 = cpu->r[24] + cpu->r[30];
|
|
/* 0276DCE8 */ rbrew_write8(cpu->mem, _t108, (uint8_t)cpu->r[31]);
|
|
/* 0276DCEC */ cpu->r[6] = 0x02770000u;
|
|
/* 0276DCF0 */ _t109 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DCF0 */ rbrew_write16(cpu->mem, _t109, (uint16_t)cpu->r[28]);
|
|
/* 0276DCF4 */ cpu->r[6] = cpu->r[6] + 0xFFFFEF2Cu;
|
|
/* 0276DCF8 */ cpu->r[11] = 0x02770000u;
|
|
/* 0276DCFC */ _t110 = cpu->r[1] + 0x00000026u;
|
|
/* 0276DCFC */ rbrew_write16(cpu->mem, _t110, (uint16_t)cpu->r[28]);
|
|
/* 0276DD00 */ cpu->r[11] = cpu->r[11] + 0xFFFFEEC0u;
|
|
/* 0276DD04 */ _t111 = cpu->r[1] + 0x00000018u;
|
|
/* 0276DD04 */ rbrew_write32(cpu->mem, _t111, cpu->r[6]);
|
|
/* 0276DD08 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0276DD0C */ _t112 = cpu->r[1] + 0x00000028u;
|
|
/* 0276DD0C */ rbrew_write32(cpu->mem, _t112, cpu->r[28]);
|
|
/* 0276DD10 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276DD14 */ _t113 = cpu->r[1] + 0x00000014u;
|
|
/* 0276DD14 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[28]);
|
|
/* 0276DD18 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DD1C */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DD1C */ rbrew_write8(cpu->mem, _t114, (uint8_t)cpu->r[0]);
|
|
/* 0276DD20 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276DD24 */ _t115 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DD24 */ rbrew_write16(cpu->mem, _t115, (uint16_t)cpu->r[28]);
|
|
/* 0276DD28 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276DD2C */ _t116 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276DD2C */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[8]);
|
|
/* 0276DD30 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DD34 */ _t117 = cpu->r[1] + 0x00000020u;
|
|
/* 0276DD34 */ rbrew_write32(cpu->mem, _t117, cpu->r[11]);
|
|
/* 0276DD38 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DD3C */ _t118 = cpu->r[1] + 0x00000016u;
|
|
/* 0276DD3C */ rbrew_write16(cpu->mem, _t118, (uint16_t)cpu->r[8]);
|
|
/* 0276DD40 */ Gambit_fn_02770918(cpu);
|
|
/* 0276DD44 */ cpu->r[7] = 0x10100000u;
|
|
/* 0276DD48 */ _t119 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DD48 */ rbrew_write32(cpu->mem, _t119, cpu->r[27]);
|
|
/* 0276DD4C */ cpu->r[7] = cpu->r[7] + 0x00001638u;
|
|
/* 0276DD50 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DD50 */ rbrew_write32(cpu->mem, _t120, cpu->r[7]);
|
|
/* 0276DD54 */ _t121 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276DD54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0276DD58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000002u);
|
|
/* 0276DD5C */ _t122 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DD5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0276DD60 */ _t123 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DD60 */ _t124 = _t123 & 0x00000001u;
|
|
/* 0276DD60 */ if (_t124) goto L_0276DD64; else goto L_0276DD68;
|
|
L_0276DD64: ; // 0x276dd64
|
|
/* 0276DD64 */ cpu->r[30] = cpu->r[30] + 0x00000048u;
|
|
L_0276DD68: ; // 0x276dd68
|
|
/* 0276DD68 */ cpu->ctr = cpu->r[26];
|
|
/* 0276DD6C */ _t125 = cpu->r[30] + 0x00000000u;
|
|
/* 0276DD6C */ cpu->r[24] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0276DD70 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DD74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DD78 */ _t126 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DD78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0276DD7C */ _t127 = cpu->r[11] + 0x00000000u;
|
|
/* 0276DD7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t127);
|
|
/* 0276DD80 */ cpu->r[25] = 0x00000000u;
|
|
/* 0276DD84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0276DD88 */ cpu->r[0] = 0x00080000u;
|
|
/* 0276DD8C */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DD8C */ _t129 = _t128 & 0x00000001u;
|
|
/* 0276DD8C */ if (_t129) goto L_0276DDB4; else goto L_0276DD90;
|
|
L_0276DD90: ; // 0x276dd90
|
|
/* 0276DD90 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0276DD94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 0276DD98 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0276DD9C */ _t130 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DD9C */ _t131 = _t130 & 0x00000001u;
|
|
/* 0276DD9C */ if (_t131) goto L_0276DDB0; else goto L_0276DDA0;
|
|
L_0276DDA0: ; // 0x276dda0
|
|
/* 0276DDA0 */ _t132 = cpu->r[11] + 0x00000000u;
|
|
/* 0276DDA0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t132);
|
|
/* 0276DDA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 0276DDA8 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DDA8 */ _t134 = _t133 & 0x00000001u;
|
|
/* 0276DDA8 */ if (_t134) goto L_0276DDAC; else goto L_0276DD90;
|
|
L_0276DDAC: ; // 0x276ddac
|
|
/* 0276DDAC */ goto L_0276DDB4;
|
|
L_0276DDB0: ; // 0x276ddb0
|
|
/* 0276DDB0 */ cpu->r[25] = 0x00000000u;
|
|
L_0276DDB4: ; // 0x276ddb4
|
|
/* 0276DDB4 */ _t135 = cpu->r[30] + 0x00000008u;
|
|
/* 0276DDB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0276DDB8 */ _t136 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DDB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0276DDBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[12]);
|
|
/* 0276DDC0 */ _t137 = cpu->r[6] + 0x00000014u;
|
|
/* 0276DDC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0276DDC4 */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DDC4 */ _t139 = _t138 & 0x00000001u;
|
|
/* 0276DDC4 */ if (_t139) goto L_0276DDCC; else goto L_0276DDC8;
|
|
L_0276DDC8: ; // 0x276ddc8
|
|
/* 0276DDC8 */ cpu->r[25] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0276DDCC: ; // 0x276ddcc
|
|
/* 0276DDCC */ cpu->ctr = cpu->r[8];
|
|
/* 0276DDD0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DDD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DDD8 */ _t140 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DDD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0276DDDC */ cpu->r[3] = cpu->r[24];
|
|
/* 0276DDE0 */ cpu->r[5] = cpu->r[25];
|
|
/* 0276DDE4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DDE8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DDEC */ _t141 = cpu->r[24] + cpu->r[25];
|
|
/* 0276DDEC */ rbrew_write8(cpu->mem, _t141, (uint8_t)cpu->r[31]);
|
|
/* 0276DDF0 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276DDF4 */ _t142 = cpu->r[1] + 0x00000028u;
|
|
/* 0276DDF4 */ rbrew_write32(cpu->mem, _t142, cpu->r[28]);
|
|
/* 0276DDF8 */ cpu->r[10] = 0x02770000u;
|
|
/* 0276DDFC */ _t143 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DDFC */ rbrew_write8(cpu->mem, _t143, (uint8_t)cpu->r[0]);
|
|
/* 0276DE00 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0276DE04 */ _t144 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DE04 */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[28]);
|
|
/* 0276DE08 */ cpu->r[12] = 0x02770000u;
|
|
/* 0276DE0C */ _t145 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DE0C */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[28]);
|
|
/* 0276DE10 */ _t146 = cpu->r[1] + 0x00000026u;
|
|
/* 0276DE10 */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[28]);
|
|
/* 0276DE14 */ cpu->r[10] = cpu->r[10] + 0xFFFFEFA8u;
|
|
/* 0276DE18 */ _t147 = cpu->r[1] + 0x00000016u;
|
|
/* 0276DE18 */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[0]);
|
|
/* 0276DE1C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276DE20 */ _t148 = cpu->r[1] + 0x00000020u;
|
|
/* 0276DE20 */ rbrew_write32(cpu->mem, _t148, cpu->r[10]);
|
|
/* 0276DE24 */ cpu->r[12] = cpu->r[12] + 0xFFFFF01Cu;
|
|
/* 0276DE28 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DE2C */ _t149 = cpu->r[1] + 0x00000014u;
|
|
/* 0276DE2C */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[28]);
|
|
/* 0276DE30 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DE34 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276DE38 */ _t150 = cpu->r[1] + 0x00000018u;
|
|
/* 0276DE38 */ rbrew_write32(cpu->mem, _t150, cpu->r[12]);
|
|
/* 0276DE3C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DE40 */ _t151 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276DE40 */ rbrew_write16(cpu->mem, _t151, (uint16_t)cpu->r[0]);
|
|
/* 0276DE44 */ Gambit_fn_02770918(cpu);
|
|
/* 0276DE48 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276DE4C */ _t152 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DE4C */ rbrew_write32(cpu->mem, _t152, cpu->r[27]);
|
|
/* 0276DE50 */ cpu->r[0] = cpu->r[0] + 0x0000160Cu;
|
|
/* 0276DE54 */ _t153 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DE54 */ rbrew_write32(cpu->mem, _t153, cpu->r[0]);
|
|
/* 0276DE58 */ _t154 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276DE58 */ cpu->r[5] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0276DE5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 0276DE60 */ _t155 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DE60 */ cpu->r[25] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0276DE64 */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DE64 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0276DE64 */ if (_t157) goto L_0276DE68; else goto L_0276DE6C;
|
|
L_0276DE68: ; // 0x276de68
|
|
/* 0276DE68 */ cpu->r[25] = cpu->r[25] + 0x0000006Cu;
|
|
L_0276DE6C: ; // 0x276de6c
|
|
/* 0276DE6C */ cpu->ctr = cpu->r[26];
|
|
/* 0276DE70 */ _t158 = cpu->r[25] + 0x00000000u;
|
|
/* 0276DE70 */ cpu->r[24] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0276DE74 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DE78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DE7C */ _t159 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DE7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0276DE80 */ _t160 = cpu->r[9] + 0x00000000u;
|
|
/* 0276DE80 */ cpu->r[6] = rbrew_read8(cpu->mem, _t160);
|
|
/* 0276DE84 */ cpu->r[30] = 0x00000000u;
|
|
/* 0276DE88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0276DE8C */ cpu->r[6] = 0x00080000u;
|
|
/* 0276DE90 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DE90 */ _t162 = _t161 & 0x00000001u;
|
|
/* 0276DE90 */ if (_t162) goto L_0276DEB8; else goto L_0276DE94;
|
|
L_0276DE94: ; // 0x276de94
|
|
/* 0276DE94 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276DE98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0276DE9C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0276DEA0 */ _t163 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DEA0 */ _t164 = _t163 & 0x00000001u;
|
|
/* 0276DEA0 */ if (_t164) goto L_0276DEB4; else goto L_0276DEA4;
|
|
L_0276DEA4: ; // 0x276dea4
|
|
/* 0276DEA4 */ _t165 = cpu->r[9] + 0x00000000u;
|
|
/* 0276DEA4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t165);
|
|
/* 0276DEA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0276DEAC */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DEAC */ _t167 = _t166 & 0x00000001u;
|
|
/* 0276DEAC */ if (_t167) goto L_0276DEB0; else goto L_0276DE94;
|
|
L_0276DEB0: ; // 0x276deb0
|
|
/* 0276DEB0 */ goto L_0276DEB8;
|
|
L_0276DEB4: ; // 0x276deb4
|
|
/* 0276DEB4 */ cpu->r[30] = 0x00000000u;
|
|
L_0276DEB8: ; // 0x276deb8
|
|
/* 0276DEB8 */ _t168 = cpu->r[25] + 0x00000008u;
|
|
/* 0276DEB8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0276DEBC */ _t169 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DEBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t169);
|
|
/* 0276DEC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 0276DEC4 */ _t170 = cpu->r[8] + 0x00000014u;
|
|
/* 0276DEC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0276DEC8 */ _t171 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DEC8 */ _t172 = _t171 & 0x00000001u;
|
|
/* 0276DEC8 */ if (_t172) goto L_0276DED0; else goto L_0276DECC;
|
|
L_0276DECC: ; // 0x276decc
|
|
/* 0276DECC */ cpu->r[30] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0276DED0: ; // 0x276ded0
|
|
/* 0276DED0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276DED4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DED8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DEDC */ _t173 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DEDC */ cpu->r[4] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0276DEE0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DEE4 */ cpu->r[5] = cpu->r[30];
|
|
/* 0276DEE8 */ cpu->r[3] = cpu->r[24];
|
|
/* 0276DEEC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DEF0 */ _t174 = cpu->r[24] + cpu->r[30];
|
|
/* 0276DEF0 */ rbrew_write8(cpu->mem, _t174, (uint8_t)cpu->r[31]);
|
|
/* 0276DEF4 */ cpu->r[0] = 0x00000003u;
|
|
/* 0276DEF8 */ _t175 = cpu->r[1] + 0x00000028u;
|
|
/* 0276DEF8 */ rbrew_write32(cpu->mem, _t175, cpu->r[28]);
|
|
/* 0276DEFC */ cpu->r[10] = 0x02770000u;
|
|
/* 0276DF00 */ _t176 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DF00 */ rbrew_write8(cpu->mem, _t176, (uint8_t)cpu->r[0]);
|
|
/* 0276DF04 */ cpu->r[12] = 0x02770000u;
|
|
/* 0276DF08 */ _t177 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DF08 */ rbrew_write16(cpu->mem, _t177, (uint16_t)cpu->r[28]);
|
|
/* 0276DF0C */ cpu->r[12] = cpu->r[12] + 0xFFFFF10Cu;
|
|
/* 0276DF10 */ _t178 = cpu->r[1] + 0x00000026u;
|
|
/* 0276DF10 */ rbrew_write16(cpu->mem, _t178, (uint16_t)cpu->r[28]);
|
|
/* 0276DF14 */ _t179 = cpu->r[1] + 0x00000018u;
|
|
/* 0276DF14 */ rbrew_write32(cpu->mem, _t179, cpu->r[12]);
|
|
/* 0276DF18 */ cpu->r[10] = cpu->r[10] + 0xFFFFF078u;
|
|
/* 0276DF1C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DF20 */ _t180 = cpu->r[1] + 0x00000020u;
|
|
/* 0276DF20 */ rbrew_write32(cpu->mem, _t180, cpu->r[10]);
|
|
/* 0276DF24 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0276DF28 */ _t181 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DF28 */ rbrew_write16(cpu->mem, _t181, (uint16_t)cpu->r[28]);
|
|
/* 0276DF2C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276DF30 */ _t182 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276DF30 */ rbrew_write16(cpu->mem, _t182, (uint16_t)cpu->r[4]);
|
|
/* 0276DF34 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DF38 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276DF3C */ _t183 = cpu->r[1] + 0x00000016u;
|
|
/* 0276DF3C */ rbrew_write16(cpu->mem, _t183, (uint16_t)cpu->r[4]);
|
|
/* 0276DF40 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DF44 */ _t184 = cpu->r[1] + 0x00000014u;
|
|
/* 0276DF44 */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[28]);
|
|
/* 0276DF48 */ Gambit_fn_02770918(cpu);
|
|
/* 0276DF4C */ cpu->r[5] = 0x10100000u;
|
|
/* 0276DF50 */ _t185 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DF50 */ rbrew_write32(cpu->mem, _t185, cpu->r[27]);
|
|
/* 0276DF54 */ cpu->r[5] = cpu->r[5] + 0x0000161Cu;
|
|
/* 0276DF58 */ _t186 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DF58 */ rbrew_write32(cpu->mem, _t186, cpu->r[5]);
|
|
/* 0276DF5C */ _t187 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276DF5C */ cpu->r[6] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0276DF60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000004u);
|
|
/* 0276DF64 */ _t188 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DF64 */ cpu->r[25] = rbrew_read32(cpu->mem, _t188);
|
|
/* 0276DF68 */ _t189 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DF68 */ _t190 = _t189 & 0x00000001u;
|
|
/* 0276DF68 */ if (_t190) goto L_0276DF6C; else goto L_0276DF70;
|
|
L_0276DF6C: ; // 0x276df6c
|
|
/* 0276DF6C */ cpu->r[25] = cpu->r[25] + 0x00000090u;
|
|
L_0276DF70: ; // 0x276df70
|
|
/* 0276DF70 */ cpu->ctr = cpu->r[26];
|
|
/* 0276DF74 */ _t191 = cpu->r[25] + 0x00000000u;
|
|
/* 0276DF74 */ cpu->r[24] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0276DF78 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DF7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DF80 */ _t192 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DF80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0276DF84 */ _t193 = cpu->r[6] + 0x00000000u;
|
|
/* 0276DF84 */ cpu->r[7] = rbrew_read8(cpu->mem, _t193);
|
|
/* 0276DF88 */ cpu->r[30] = 0x00000000u;
|
|
/* 0276DF8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0276DF90 */ cpu->r[7] = 0x00080000u;
|
|
/* 0276DF94 */ _t194 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DF94 */ _t195 = _t194 & 0x00000001u;
|
|
/* 0276DF94 */ if (_t195) goto L_0276DFBC; else goto L_0276DF98;
|
|
L_0276DF98: ; // 0x276df98
|
|
/* 0276DF98 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276DF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 0276DFA0 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0276DFA4 */ _t196 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DFA4 */ _t197 = _t196 & 0x00000001u;
|
|
/* 0276DFA4 */ if (_t197) goto L_0276DFB8; else goto L_0276DFA8;
|
|
L_0276DFA8: ; // 0x276dfa8
|
|
/* 0276DFA8 */ _t198 = cpu->r[6] + 0x00000000u;
|
|
/* 0276DFA8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t198);
|
|
/* 0276DFAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0276DFB0 */ _t199 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DFB0 */ _t200 = _t199 & 0x00000001u;
|
|
/* 0276DFB0 */ if (_t200) goto L_0276DFB4; else goto L_0276DF98;
|
|
L_0276DFB4: ; // 0x276dfb4
|
|
/* 0276DFB4 */ goto L_0276DFBC;
|
|
L_0276DFB8: ; // 0x276dfb8
|
|
/* 0276DFB8 */ cpu->r[30] = 0x00000000u;
|
|
L_0276DFBC: ; // 0x276dfbc
|
|
/* 0276DFBC */ _t201 = cpu->r[25] + 0x00000008u;
|
|
/* 0276DFBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t201);
|
|
/* 0276DFC0 */ _t202 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DFC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t202);
|
|
/* 0276DFC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 0276DFC8 */ _t203 = cpu->r[9] + 0x00000014u;
|
|
/* 0276DFC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0276DFCC */ _t204 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DFCC */ _t205 = _t204 & 0x00000001u;
|
|
/* 0276DFCC */ if (_t205) goto L_0276DFD4; else goto L_0276DFD0;
|
|
L_0276DFD0: ; // 0x276dfd0
|
|
/* 0276DFD0 */ cpu->r[30] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_0276DFD4: ; // 0x276dfd4
|
|
/* 0276DFD4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276DFD8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DFDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DFE0 */ _t206 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DFE0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t206);
|
|
/* 0276DFE4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DFE8 */ cpu->r[5] = cpu->r[30];
|
|
/* 0276DFEC */ cpu->r[3] = cpu->r[24];
|
|
/* 0276DFF0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DFF4 */ _t207 = cpu->r[24] + cpu->r[30];
|
|
/* 0276DFF4 */ rbrew_write8(cpu->mem, _t207, (uint8_t)cpu->r[31]);
|
|
/* 0276DFF8 */ cpu->r[10] = 0x00000004u;
|
|
/* 0276DFFC */ _t208 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DFFC */ rbrew_write16(cpu->mem, _t208, (uint16_t)cpu->r[28]);
|
|
/* 0276E000 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0276E004 */ _t209 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E004 */ rbrew_write8(cpu->mem, _t209, (uint8_t)cpu->r[10]);
|
|
/* 0276E008 */ cpu->r[11] = 0x02770000u;
|
|
/* 0276E00C */ _t210 = cpu->r[1] + 0x00000016u;
|
|
/* 0276E00C */ rbrew_write16(cpu->mem, _t210, (uint16_t)cpu->r[12]);
|
|
/* 0276E010 */ cpu->r[0] = 0x02770000u;
|
|
/* 0276E014 */ _t211 = cpu->r[1] + 0x00000026u;
|
|
/* 0276E014 */ rbrew_write16(cpu->mem, _t211, (uint16_t)cpu->r[28]);
|
|
/* 0276E018 */ _t212 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E018 */ rbrew_write16(cpu->mem, _t212, (uint16_t)cpu->r[28]);
|
|
/* 0276E01C */ cpu->r[0] = cpu->r[0] + 0xFFFFF1B4u;
|
|
/* 0276E020 */ _t213 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276E020 */ rbrew_write16(cpu->mem, _t213, (uint16_t)cpu->r[12]);
|
|
/* 0276E024 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E028 */ _t214 = cpu->r[1] + 0x00000018u;
|
|
/* 0276E028 */ rbrew_write32(cpu->mem, _t214, cpu->r[0]);
|
|
/* 0276E02C */ cpu->r[11] = cpu->r[11] + 0xFFFFF120u;
|
|
/* 0276E030 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276E034 */ _t215 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E034 */ rbrew_write16(cpu->mem, _t215, (uint16_t)cpu->r[28]);
|
|
/* 0276E038 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276E03C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276E040 */ _t216 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E040 */ rbrew_write32(cpu->mem, _t216, cpu->r[11]);
|
|
/* 0276E044 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E048 */ _t217 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E048 */ rbrew_write32(cpu->mem, _t217, cpu->r[28]);
|
|
/* 0276E04C */ Gambit_fn_02770918(cpu);
|
|
/* 0276E050 */ cpu->r[7] = 0x10100000u;
|
|
/* 0276E054 */ _t218 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E054 */ rbrew_write32(cpu->mem, _t218, cpu->r[27]);
|
|
/* 0276E058 */ cpu->r[7] = cpu->r[7] + 0x00001644u;
|
|
/* 0276E05C */ _t219 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E05C */ rbrew_write32(cpu->mem, _t219, cpu->r[7]);
|
|
/* 0276E060 */ _t220 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276E060 */ cpu->r[8] = rbrew_read32(cpu->mem, _t220);
|
|
/* 0276E064 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000005u);
|
|
/* 0276E068 */ _t221 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276E068 */ cpu->r[27] = rbrew_read32(cpu->mem, _t221);
|
|
/* 0276E06C */ _t222 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276E06C */ _t223 = _t222 & 0x00000001u;
|
|
/* 0276E06C */ if (_t223) goto L_0276E070; else goto L_0276E074;
|
|
L_0276E070: ; // 0x276e070
|
|
/* 0276E070 */ cpu->r[27] = cpu->r[27] + 0x000000B4u;
|
|
L_0276E074: ; // 0x276e074
|
|
/* 0276E074 */ cpu->ctr = cpu->r[26];
|
|
/* 0276E078 */ _t224 = cpu->r[27] + 0x00000000u;
|
|
/* 0276E078 */ cpu->r[25] = rbrew_read32(cpu->mem, _t224);
|
|
/* 0276E07C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E080 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E084 */ _t225 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E084 */ cpu->r[10] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0276E088 */ _t226 = cpu->r[10] + 0x00000000u;
|
|
/* 0276E088 */ cpu->r[9] = rbrew_read8(cpu->mem, _t226);
|
|
/* 0276E08C */ cpu->r[30] = 0x00000000u;
|
|
/* 0276E090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 0276E094 */ cpu->r[12] = 0x00080000u;
|
|
/* 0276E098 */ _t227 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E098 */ _t228 = _t227 & 0x00000001u;
|
|
/* 0276E098 */ if (_t228) goto L_0276E0C0; else goto L_0276E09C;
|
|
L_0276E09C: ; // 0x276e09c
|
|
/* 0276E09C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276E0A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0276E0A4 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0276E0A8 */ _t229 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276E0A8 */ _t230 = _t229 & 0x00000001u;
|
|
/* 0276E0A8 */ if (_t230) goto L_0276E0BC; else goto L_0276E0AC;
|
|
L_0276E0AC: ; // 0x276e0ac
|
|
/* 0276E0AC */ _t231 = cpu->r[10] + 0x00000000u;
|
|
/* 0276E0AC */ cpu->r[11] = rbrew_read8(cpu->mem, _t231);
|
|
/* 0276E0B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 0276E0B4 */ _t232 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E0B4 */ _t233 = _t232 & 0x00000001u;
|
|
/* 0276E0B4 */ if (_t233) goto L_0276E0B8; else goto L_0276E09C;
|
|
L_0276E0B8: ; // 0x276e0b8
|
|
/* 0276E0B8 */ goto L_0276E0C0;
|
|
L_0276E0BC: ; // 0x276e0bc
|
|
/* 0276E0BC */ cpu->r[30] = 0x00000000u;
|
|
L_0276E0C0: ; // 0x276e0c0
|
|
/* 0276E0C0 */ _t234 = cpu->r[27] + 0x00000008u;
|
|
/* 0276E0C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t234);
|
|
/* 0276E0C4 */ _t235 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E0C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t235);
|
|
/* 0276E0C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0276E0CC */ _t236 = cpu->r[12] + 0x00000014u;
|
|
/* 0276E0CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t236);
|
|
/* 0276E0D0 */ _t237 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E0D0 */ _t238 = _t237 & 0x00000001u;
|
|
/* 0276E0D0 */ if (_t238) goto L_0276E0D8; else goto L_0276E0D4;
|
|
L_0276E0D4: ; // 0x276e0d4
|
|
/* 0276E0D4 */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0276E0D8: ; // 0x276e0d8
|
|
/* 0276E0D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E0DC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E0E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E0E4 */ _t239 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E0E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t239);
|
|
/* 0276E0E8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276E0EC */ cpu->r[5] = cpu->r[30];
|
|
/* 0276E0F0 */ cpu->r[3] = cpu->r[25];
|
|
/* 0276E0F4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276E0F8 */ _t240 = cpu->r[25] + cpu->r[30];
|
|
/* 0276E0F8 */ rbrew_write8(cpu->mem, _t240, (uint8_t)cpu->r[31]);
|
|
/* 0276E0FC */ cpu->r[12] = 0x00000005u;
|
|
/* 0276E100 */ _t241 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E100 */ rbrew_write32(cpu->mem, _t241, cpu->r[28]);
|
|
/* 0276E104 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0276E108 */ _t242 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E108 */ rbrew_write8(cpu->mem, _t242, (uint8_t)cpu->r[12]);
|
|
/* 0276E10C */ cpu->r[4] = 0x02770000u;
|
|
/* 0276E110 */ _t243 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276E110 */ rbrew_write16(cpu->mem, _t243, (uint16_t)cpu->r[8]);
|
|
/* 0276E114 */ cpu->r[4] = cpu->r[4] + 0xFFFFF1C8u;
|
|
/* 0276E118 */ cpu->r[0] = 0x02770000u;
|
|
/* 0276E11C */ _t244 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E11C */ rbrew_write16(cpu->mem, _t244, (uint16_t)cpu->r[28]);
|
|
/* 0276E120 */ cpu->r[0] = cpu->r[0] + 0xFFFFF228u;
|
|
/* 0276E124 */ _t245 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E124 */ rbrew_write32(cpu->mem, _t245, cpu->r[4]);
|
|
/* 0276E128 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E12C */ _t246 = cpu->r[1] + 0x00000018u;
|
|
/* 0276E12C */ rbrew_write32(cpu->mem, _t246, cpu->r[0]);
|
|
/* 0276E130 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276E134 */ _t247 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E134 */ rbrew_write16(cpu->mem, _t247, (uint16_t)cpu->r[28]);
|
|
/* 0276E138 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276E13C */ _t248 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E13C */ rbrew_write16(cpu->mem, _t248, (uint16_t)cpu->r[28]);
|
|
/* 0276E140 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E144 */ _t249 = cpu->r[1] + 0x00000026u;
|
|
/* 0276E144 */ rbrew_write16(cpu->mem, _t249, (uint16_t)cpu->r[28]);
|
|
/* 0276E148 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276E14C */ _t250 = cpu->r[1] + 0x00000016u;
|
|
/* 0276E14C */ rbrew_write16(cpu->mem, _t250, (uint16_t)cpu->r[8]);
|
|
/* 0276E150 */ Gambit_fn_02770918(cpu);
|
|
L_0276E154: ; // 0x276e154
|
|
/* 0276E154 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276E158 */ /* nop */
|
|
/* 0276E15C */ _t251 = cpu->r[1] + 0x00000058u;
|
|
/* 0276E15C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 0276E160 */ _t252 = cpu->r[1] + 0x00000050u;
|
|
/* 0276E160 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t252);
|
|
/* 0276E164 */ _t253 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E164 */ _t254 = _t253 & 0x00000001u;
|
|
/* 0276E164 */ if (_t254) goto L_0276E168; // else: addr-0 trap, fall-through
|
|
L_0276E168: ; // 0x276e168
|
|
/* 0276E168 */ _t255 = cpu->r[1] + 0x00000064u;
|
|
/* 0276E168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t255);
|
|
/* 0276E16C */ cpu->lr = cpu->r[0];
|
|
/* 0276E170 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0276E174 */ return;
|
|
}
|
|
|
|
// fn_0276D9BC @ 0x276d9bc
|
|
void Gambit_fn_0276D9BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_0276D9BC: ; // 0x276d9bc
|
|
/* 0276D9BC */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 0276D9BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276D9BC */ cpu->r[1] = _t0;
|
|
/* 0276D9C0 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 0276D9C0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0276D9C4 */ /* nop */
|
|
/* 0276D9C8 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0276D9C8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0276D9CC */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 0276D9CC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276D9D0 */ /* nop */
|
|
/* 0276D9D4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276D9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276D9D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D9D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276D9D8 */ if (_t5) goto L_0276D9DC; else goto L_0276D9EC;
|
|
L_0276D9DC: ; // 0x276d9dc
|
|
/* 0276D9DC */ cpu->r[3] = 0x000002E0u;
|
|
/* 0276D9E0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276D9E4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276D9E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276D9E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276D9E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276D9E8 */ if (_t7) goto L_0276E154; else goto L_0276D9EC;
|
|
L_0276D9EC: ; // 0x276d9ec
|
|
/* 0276D9EC */ cpu->r[3] = cpu->r[29];
|
|
/* 0276D9F0 */ Gambit_fn_02001FA8(cpu);
|
|
/* 0276D9F4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276D9F8 */ cpu->r[31] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276D9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276D9FC */ cpu->r[0] = cpu->r[0] + 0x00001808u;
|
|
/* 0276DA00 */ cpu->r[28] = 0x00000000u;
|
|
/* 0276DA04 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 0276DA04 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0276DA08 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DA08 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276DA08 */ if (_t10) goto L_0276DA0C; else goto L_0276DA1C;
|
|
L_0276DA0C: ; // 0x276da0c
|
|
/* 0276DA0C */ cpu->r[3] = 0x00000038u;
|
|
/* 0276DA10 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276DA14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276DA14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276DA18 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DA18 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276DA18 */ if (_t12) goto L_0276DA4C; else goto L_0276DA1C;
|
|
L_0276DA1C: ; // 0x276da1c
|
|
/* 0276DA1C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276DA20 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0276DA24 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276DA28 */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0276DA28 */ rbrew_write32(cpu->mem, _t13, cpu->r[28]);
|
|
/* 0276DA2C */ cpu->r[10] = cpu->r[10] + 0x000008D4u;
|
|
/* 0276DA30 */ _t14 = cpu->r[31] + 0x00000034u;
|
|
/* 0276DA30 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 0276DA34 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0276DA34 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 0276DA38 */ _t16 = cpu->r[31] + 0x00000024u;
|
|
/* 0276DA38 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 0276DA3C */ _t17 = cpu->r[31] + 0x00000028u;
|
|
/* 0276DA3C */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 0276DA40 */ _t18 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0276DA40 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 0276DA44 */ _t19 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276DA44 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 0276DA48 */ _t20 = cpu->r[31] + 0x00000020u;
|
|
/* 0276DA48 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
L_0276DA4C: ; // 0x276da4c
|
|
/* 0276DA4C */ cpu->r[4] = 0x0000000Cu;
|
|
/* 0276DA50 */ cpu->r[6] = 0x02770000u;
|
|
/* 0276DA54 */ cpu->r[3] = cpu->r[29] + 0x00000208u;
|
|
/* 0276DA58 */ cpu->r[5] = cpu->r[4];
|
|
/* 0276DA5C */ cpu->r[6] = cpu->r[6] + 0x00000478u;
|
|
/* 0276DA60 */ _t21 = cpu->r[29] + 0x00000204u;
|
|
/* 0276DA60 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0276DA64 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0276DA68 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0276DA6C */ _t22 = cpu->r[29] + 0x00000298u;
|
|
/* 0276DA6C */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[28]);
|
|
/* 0276DA70 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276DA74 */ _t23 = cpu->r[29] + 0x000002A2u;
|
|
/* 0276DA74 */ rbrew_write16(cpu->mem, _t23, (uint16_t)cpu->r[11]);
|
|
/* 0276DA78 */ _t24 = cpu->r[10] + 0x00001608u;
|
|
/* 0276DA78 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0276DA7C */ _t25 = cpu->r[29] + 0x000002A0u;
|
|
/* 0276DA7C */ rbrew_write16(cpu->mem, _t25, (uint16_t)cpu->r[11]);
|
|
/* 0276DA80 */ cpu->r[3] = cpu->r[29] + 0x000002A8u;
|
|
/* 0276DA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DA84 */ _t26 = cpu->r[29] + 0x000002A4u;
|
|
/* 0276DA84 */ rbrew_write16(cpu->mem, _t26, (uint16_t)cpu->r[11]);
|
|
/* 0276DA88 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DA88 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0276DA88 */ if (_t28) goto L_0276DA8C; else goto L_0276DA9C;
|
|
L_0276DA8C: ; // 0x276da8c
|
|
/* 0276DA8C */ cpu->r[3] = 0x00000008u;
|
|
/* 0276DA90 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276DA94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DA98 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DA98 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0276DA98 */ if (_t30) goto L_0276DAA4; else goto L_0276DA9C;
|
|
L_0276DA9C: ; // 0x276da9c
|
|
/* 0276DA9C */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 0276DA9C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[31]);
|
|
/* 0276DAA0 */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 0276DAA0 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
L_0276DAA4: ; // 0x276daa4
|
|
/* 0276DAA4 */ cpu->r[3] = cpu->r[29] + 0x000002B4u;
|
|
/* 0276DAA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DAA8 */ _t33 = cpu->r[29] + 0x000002B0u;
|
|
/* 0276DAA8 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
/* 0276DAAC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DAAC */ _t35 = _t34 & 0x00000001u;
|
|
/* 0276DAAC */ if (_t35) goto L_0276DAB0; else goto L_0276DAC0;
|
|
L_0276DAB0: ; // 0x276dab0
|
|
/* 0276DAB0 */ cpu->r[3] = 0x00000008u;
|
|
/* 0276DAB4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276DAB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DABC */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DABC */ _t37 = _t36 & 0x00000001u;
|
|
/* 0276DABC */ if (_t37) goto L_0276DAC8; else goto L_0276DAC0;
|
|
L_0276DAC0: ; // 0x276dac0
|
|
/* 0276DAC0 */ _t38 = cpu->r[3] + 0x00000004u;
|
|
/* 0276DAC0 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 0276DAC4 */ _t39 = cpu->r[3] + 0x00000000u;
|
|
/* 0276DAC4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[31]);
|
|
L_0276DAC8: ; // 0x276dac8
|
|
/* 0276DAC8 */ _t40 = cpu->r[29] + 0x000002BCu;
|
|
/* 0276DAC8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]);
|
|
/* 0276DACC */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0276DAD0 */ _t41 = cpu->r[29] + 0x000002C4u;
|
|
/* 0276DAD0 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[28]);
|
|
/* 0276DAD4 */ _t42 = cpu->r[29] + 0x000002C8u;
|
|
/* 0276DAD4 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[4]);
|
|
/* 0276DAD8 */ _t43 = cpu->r[29] + 0x000002CAu;
|
|
/* 0276DAD8 */ rbrew_write16(cpu->mem, _t43, (uint16_t)cpu->r[4]);
|
|
/* 0276DADC */ _t44 = cpu->r[29] + 0x000002CCu;
|
|
/* 0276DADC */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[4]);
|
|
/* 0276DAE0 */ cpu->r[3] = cpu->r[29] + 0x000002D0u;
|
|
/* 0276DAE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DAE4 */ _t45 = cpu->r[29] + 0x000002C0u;
|
|
/* 0276DAE4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[31]);
|
|
/* 0276DAE8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DAE8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0276DAE8 */ if (_t47) goto L_0276DAEC; else goto L_0276DAFC;
|
|
L_0276DAEC: ; // 0x276daec
|
|
/* 0276DAEC */ cpu->r[3] = 0x00000008u;
|
|
/* 0276DAF0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276DAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276DAF8 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DAF8 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0276DAF8 */ if (_t49) goto L_0276DB04; else goto L_0276DAFC;
|
|
L_0276DAFC: ; // 0x276dafc
|
|
/* 0276DAFC */ _t50 = cpu->r[3] + 0x00000004u;
|
|
/* 0276DAFC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 0276DB00 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 0276DB00 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
L_0276DB04: ; // 0x276db04
|
|
/* 0276DB04 */ _t52 = cpu->r[29] + 0x000002D8u;
|
|
/* 0276DB04 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[28]);
|
|
/* 0276DB08 */ cpu->r[0] = 0x00000006u;
|
|
/* 0276DB0C */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DB10 */ _t53 = cpu->r[29] + 0x000002DCu;
|
|
/* 0276DB10 */ rbrew_write32(cpu->mem, _t53, cpu->r[28]);
|
|
/* 0276DB14 */ cpu->r[4] = cpu->r[29];
|
|
/* 0276DB18 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DB1C */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DB20 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DB20 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[0]);
|
|
/* 0276DB24 */ Gambit_fn_02770668(cpu);
|
|
/* 0276DB28 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276DB2C */ cpu->r[4] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DB30 */ Gambit_fn_02000834(cpu);
|
|
/* 0276DB34 */ cpu->r[26] = 0x02770000u;
|
|
/* 0276DB38 */ cpu->r[7] = 0x10100000u;
|
|
/* 0276DB3C */ cpu->r[27] = 0x10100000u;
|
|
/* 0276DB40 */ cpu->r[26] = cpu->r[26] + 0x00000148u;
|
|
/* 0276DB44 */ cpu->r[27] = cpu->r[27] + 0x00001288u;
|
|
/* 0276DB48 */ cpu->ctr = cpu->r[26];
|
|
/* 0276DB4C */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DB4C */ rbrew_write32(cpu->mem, _t55, cpu->r[27]);
|
|
/* 0276DB50 */ cpu->r[7] = cpu->r[7] + 0x00001654u;
|
|
/* 0276DB54 */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DB54 */ rbrew_write32(cpu->mem, _t56, cpu->r[7]);
|
|
/* 0276DB58 */ _t57 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DB58 */ cpu->r[24] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0276DB5C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DB60 */ _t58 = cpu->r[24] + 0x00000000u;
|
|
/* 0276DB60 */ cpu->r[25] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0276DB64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DB68 */ cpu->r[31] = 0x10110000u;
|
|
/* 0276DB6C */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DB6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0276DB70 */ _t60 = cpu->r[31] + 0x00007399u;
|
|
/* 0276DB70 */ cpu->r[31] = rbrew_read8(cpu->mem, _t60);
|
|
/* 0276DB74 */ _t61 = cpu->r[12] + 0x00000000u;
|
|
/* 0276DB74 */ cpu->r[9] = rbrew_read8(cpu->mem, _t61);
|
|
/* 0276DB78 */ cpu->r[30] = 0x00000000u;
|
|
/* 0276DB7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 0276DB80 */ cpu->r[5] = 0x00080000u;
|
|
/* 0276DB84 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DB84 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0276DB84 */ if (_t63) goto L_0276DBAC; else goto L_0276DB88;
|
|
L_0276DB88: ; // 0x276db88
|
|
/* 0276DB88 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276DB8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 0276DB90 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0276DB94 */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DB94 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0276DB94 */ if (_t65) goto L_0276DBA8; else goto L_0276DB98;
|
|
L_0276DB98: ; // 0x276db98
|
|
/* 0276DB98 */ _t66 = cpu->r[12] + 0x00000000u;
|
|
/* 0276DB98 */ cpu->r[10] = rbrew_read8(cpu->mem, _t66);
|
|
/* 0276DB9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0276DBA0 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DBA0 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0276DBA0 */ if (_t68) goto L_0276DBA4; else goto L_0276DB88;
|
|
L_0276DBA4: ; // 0x276dba4
|
|
/* 0276DBA4 */ goto L_0276DBAC;
|
|
L_0276DBA8: ; // 0x276dba8
|
|
/* 0276DBA8 */ cpu->r[30] = 0x00000000u;
|
|
L_0276DBAC: ; // 0x276dbac
|
|
/* 0276DBAC */ _t69 = cpu->r[24] + 0x00000008u;
|
|
/* 0276DBAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0276DBB0 */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DBB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0276DBB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0276DBB8 */ _t71 = cpu->r[11] + 0x00000014u;
|
|
/* 0276DBB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0276DBBC */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DBBC */ _t73 = _t72 & 0x00000001u;
|
|
/* 0276DBBC */ if (_t73) goto L_0276DBC4; else goto L_0276DBC0;
|
|
L_0276DBC0: ; // 0x276dbc0
|
|
/* 0276DBC0 */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0276DBC4: ; // 0x276dbc4
|
|
/* 0276DBC4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276DBC8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DBCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DBD0 */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DBD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0276DBD4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DBD8 */ cpu->r[5] = cpu->r[30];
|
|
/* 0276DBDC */ cpu->r[3] = cpu->r[25];
|
|
/* 0276DBE0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DBE4 */ _t75 = cpu->r[25] + cpu->r[30];
|
|
/* 0276DBE4 */ rbrew_write8(cpu->mem, _t75, (uint8_t)cpu->r[31]);
|
|
/* 0276DBE8 */ cpu->r[11] = 0x02770000u;
|
|
/* 0276DBEC */ _t76 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DBEC */ rbrew_write16(cpu->mem, _t76, (uint16_t)cpu->r[28]);
|
|
/* 0276DBF0 */ cpu->r[8] = 0x02770000u;
|
|
/* 0276DBF4 */ _t77 = cpu->r[1] + 0x00000014u;
|
|
/* 0276DBF4 */ rbrew_write16(cpu->mem, _t77, (uint16_t)cpu->r[28]);
|
|
/* 0276DBF8 */ cpu->r[8] = cpu->r[8] + 0xFFFFEC40u;
|
|
/* 0276DBFC */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 0276DBFC */ rbrew_write32(cpu->mem, _t78, cpu->r[28]);
|
|
/* 0276DC00 */ cpu->r[11] = cpu->r[11] + 0xFFFFECB4u;
|
|
/* 0276DC04 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 0276DC04 */ rbrew_write32(cpu->mem, _t79, cpu->r[8]);
|
|
/* 0276DC08 */ _t80 = cpu->r[1] + 0x00000020u;
|
|
/* 0276DC08 */ rbrew_write32(cpu->mem, _t80, cpu->r[11]);
|
|
/* 0276DC0C */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0276DC10 */ _t81 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DC10 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[28]);
|
|
/* 0276DC14 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DC18 */ _t82 = cpu->r[1] + 0x00000016u;
|
|
/* 0276DC18 */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[10]);
|
|
/* 0276DC1C */ cpu->r[8] = 0x00000000u;
|
|
/* 0276DC20 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DC24 */ _t83 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276DC24 */ rbrew_write16(cpu->mem, _t83, (uint16_t)cpu->r[10]);
|
|
/* 0276DC28 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DC2C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276DC30 */ _t84 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DC30 */ rbrew_write8(cpu->mem, _t84, (uint8_t)cpu->r[8]);
|
|
/* 0276DC34 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0276DC38 */ _t85 = cpu->r[1] + 0x00000026u;
|
|
/* 0276DC38 */ rbrew_write16(cpu->mem, _t85, (uint16_t)cpu->r[28]);
|
|
/* 0276DC3C */ Gambit_fn_02770918(cpu);
|
|
/* 0276DC40 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276DC44 */ _t86 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DC44 */ rbrew_write32(cpu->mem, _t86, cpu->r[27]);
|
|
/* 0276DC48 */ cpu->r[0] = cpu->r[0] + 0x0000162Cu;
|
|
/* 0276DC4C */ _t87 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DC4C */ rbrew_write32(cpu->mem, _t87, cpu->r[0]);
|
|
/* 0276DC50 */ _t88 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276DC50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0276DC54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000001u);
|
|
/* 0276DC58 */ _t89 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DC58 */ cpu->r[25] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0276DC5C */ _t90 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DC5C */ _t91 = _t90 & 0x00000001u;
|
|
/* 0276DC5C */ if (_t91) goto L_0276DC60; else goto L_0276DC64;
|
|
L_0276DC60: ; // 0x276dc60
|
|
/* 0276DC60 */ cpu->r[25] = cpu->r[25] + 0x00000024u;
|
|
L_0276DC64: ; // 0x276dc64
|
|
/* 0276DC64 */ cpu->ctr = cpu->r[26];
|
|
/* 0276DC68 */ _t92 = cpu->r[25] + 0x00000000u;
|
|
/* 0276DC68 */ cpu->r[24] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0276DC6C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DC70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DC74 */ _t93 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DC74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0276DC78 */ _t94 = cpu->r[7] + 0x00000000u;
|
|
/* 0276DC78 */ cpu->r[12] = rbrew_read8(cpu->mem, _t94);
|
|
/* 0276DC7C */ cpu->r[30] = 0x00000000u;
|
|
/* 0276DC80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 0276DC84 */ cpu->r[0] = 0x00080000u;
|
|
/* 0276DC88 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DC88 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0276DC88 */ if (_t96) goto L_0276DCB0; else goto L_0276DC8C;
|
|
L_0276DC8C: ; // 0x276dc8c
|
|
/* 0276DC8C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276DC90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0276DC94 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0276DC98 */ _t97 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DC98 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0276DC98 */ if (_t98) goto L_0276DCAC; else goto L_0276DC9C;
|
|
L_0276DC9C: ; // 0x276dc9c
|
|
/* 0276DC9C */ _t99 = cpu->r[7] + 0x00000000u;
|
|
/* 0276DC9C */ cpu->r[5] = rbrew_read8(cpu->mem, _t99);
|
|
/* 0276DCA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0276DCA4 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DCA4 */ _t101 = _t100 & 0x00000001u;
|
|
/* 0276DCA4 */ if (_t101) goto L_0276DCA8; else goto L_0276DC8C;
|
|
L_0276DCA8: ; // 0x276dca8
|
|
/* 0276DCA8 */ goto L_0276DCB0;
|
|
L_0276DCAC: ; // 0x276dcac
|
|
/* 0276DCAC */ cpu->r[30] = 0x00000000u;
|
|
L_0276DCB0: ; // 0x276dcb0
|
|
/* 0276DCB0 */ _t102 = cpu->r[25] + 0x00000008u;
|
|
/* 0276DCB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0276DCB4 */ _t103 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DCB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0276DCB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 0276DCBC */ _t104 = cpu->r[6] + 0x00000014u;
|
|
/* 0276DCBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0276DCC0 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DCC0 */ _t106 = _t105 & 0x00000001u;
|
|
/* 0276DCC0 */ if (_t106) goto L_0276DCC8; else goto L_0276DCC4;
|
|
L_0276DCC4: ; // 0x276dcc4
|
|
/* 0276DCC4 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0276DCC8: ; // 0x276dcc8
|
|
/* 0276DCC8 */ cpu->ctr = cpu->r[8];
|
|
/* 0276DCCC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DCD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DCD4 */ _t107 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DCD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0276DCD8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DCDC */ cpu->r[5] = cpu->r[30];
|
|
/* 0276DCE0 */ cpu->r[3] = cpu->r[24];
|
|
/* 0276DCE4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DCE8 */ _t108 = cpu->r[24] + cpu->r[30];
|
|
/* 0276DCE8 */ rbrew_write8(cpu->mem, _t108, (uint8_t)cpu->r[31]);
|
|
/* 0276DCEC */ cpu->r[6] = 0x02770000u;
|
|
/* 0276DCF0 */ _t109 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DCF0 */ rbrew_write16(cpu->mem, _t109, (uint16_t)cpu->r[28]);
|
|
/* 0276DCF4 */ cpu->r[6] = cpu->r[6] + 0xFFFFEF2Cu;
|
|
/* 0276DCF8 */ cpu->r[11] = 0x02770000u;
|
|
/* 0276DCFC */ _t110 = cpu->r[1] + 0x00000026u;
|
|
/* 0276DCFC */ rbrew_write16(cpu->mem, _t110, (uint16_t)cpu->r[28]);
|
|
/* 0276DD00 */ cpu->r[11] = cpu->r[11] + 0xFFFFEEC0u;
|
|
/* 0276DD04 */ _t111 = cpu->r[1] + 0x00000018u;
|
|
/* 0276DD04 */ rbrew_write32(cpu->mem, _t111, cpu->r[6]);
|
|
/* 0276DD08 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0276DD0C */ _t112 = cpu->r[1] + 0x00000028u;
|
|
/* 0276DD0C */ rbrew_write32(cpu->mem, _t112, cpu->r[28]);
|
|
/* 0276DD10 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276DD14 */ _t113 = cpu->r[1] + 0x00000014u;
|
|
/* 0276DD14 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[28]);
|
|
/* 0276DD18 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DD1C */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DD1C */ rbrew_write8(cpu->mem, _t114, (uint8_t)cpu->r[0]);
|
|
/* 0276DD20 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276DD24 */ _t115 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DD24 */ rbrew_write16(cpu->mem, _t115, (uint16_t)cpu->r[28]);
|
|
/* 0276DD28 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276DD2C */ _t116 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276DD2C */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[8]);
|
|
/* 0276DD30 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DD34 */ _t117 = cpu->r[1] + 0x00000020u;
|
|
/* 0276DD34 */ rbrew_write32(cpu->mem, _t117, cpu->r[11]);
|
|
/* 0276DD38 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DD3C */ _t118 = cpu->r[1] + 0x00000016u;
|
|
/* 0276DD3C */ rbrew_write16(cpu->mem, _t118, (uint16_t)cpu->r[8]);
|
|
/* 0276DD40 */ Gambit_fn_02770918(cpu);
|
|
/* 0276DD44 */ cpu->r[7] = 0x10100000u;
|
|
/* 0276DD48 */ _t119 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DD48 */ rbrew_write32(cpu->mem, _t119, cpu->r[27]);
|
|
/* 0276DD4C */ cpu->r[7] = cpu->r[7] + 0x00001638u;
|
|
/* 0276DD50 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DD50 */ rbrew_write32(cpu->mem, _t120, cpu->r[7]);
|
|
/* 0276DD54 */ _t121 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276DD54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0276DD58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000002u);
|
|
/* 0276DD5C */ _t122 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DD5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0276DD60 */ _t123 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DD60 */ _t124 = _t123 & 0x00000001u;
|
|
/* 0276DD60 */ if (_t124) goto L_0276DD64; else goto L_0276DD68;
|
|
L_0276DD64: ; // 0x276dd64
|
|
/* 0276DD64 */ cpu->r[30] = cpu->r[30] + 0x00000048u;
|
|
L_0276DD68: ; // 0x276dd68
|
|
/* 0276DD68 */ cpu->ctr = cpu->r[26];
|
|
/* 0276DD6C */ _t125 = cpu->r[30] + 0x00000000u;
|
|
/* 0276DD6C */ cpu->r[24] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0276DD70 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DD74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DD78 */ _t126 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DD78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0276DD7C */ _t127 = cpu->r[11] + 0x00000000u;
|
|
/* 0276DD7C */ cpu->r[0] = rbrew_read8(cpu->mem, _t127);
|
|
/* 0276DD80 */ cpu->r[25] = 0x00000000u;
|
|
/* 0276DD84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0276DD88 */ cpu->r[0] = 0x00080000u;
|
|
/* 0276DD8C */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DD8C */ _t129 = _t128 & 0x00000001u;
|
|
/* 0276DD8C */ if (_t129) goto L_0276DDB4; else goto L_0276DD90;
|
|
L_0276DD90: ; // 0x276dd90
|
|
/* 0276DD90 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0276DD94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 0276DD98 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0276DD9C */ _t130 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DD9C */ _t131 = _t130 & 0x00000001u;
|
|
/* 0276DD9C */ if (_t131) goto L_0276DDB0; else goto L_0276DDA0;
|
|
L_0276DDA0: ; // 0x276dda0
|
|
/* 0276DDA0 */ _t132 = cpu->r[11] + 0x00000000u;
|
|
/* 0276DDA0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t132);
|
|
/* 0276DDA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 0276DDA8 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DDA8 */ _t134 = _t133 & 0x00000001u;
|
|
/* 0276DDA8 */ if (_t134) goto L_0276DDAC; else goto L_0276DD90;
|
|
L_0276DDAC: ; // 0x276ddac
|
|
/* 0276DDAC */ goto L_0276DDB4;
|
|
L_0276DDB0: ; // 0x276ddb0
|
|
/* 0276DDB0 */ cpu->r[25] = 0x00000000u;
|
|
L_0276DDB4: ; // 0x276ddb4
|
|
/* 0276DDB4 */ _t135 = cpu->r[30] + 0x00000008u;
|
|
/* 0276DDB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0276DDB8 */ _t136 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DDB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0276DDBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[12]);
|
|
/* 0276DDC0 */ _t137 = cpu->r[6] + 0x00000014u;
|
|
/* 0276DDC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0276DDC4 */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DDC4 */ _t139 = _t138 & 0x00000001u;
|
|
/* 0276DDC4 */ if (_t139) goto L_0276DDCC; else goto L_0276DDC8;
|
|
L_0276DDC8: ; // 0x276ddc8
|
|
/* 0276DDC8 */ cpu->r[25] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0276DDCC: ; // 0x276ddcc
|
|
/* 0276DDCC */ cpu->ctr = cpu->r[8];
|
|
/* 0276DDD0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DDD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DDD8 */ _t140 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DDD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0276DDDC */ cpu->r[3] = cpu->r[24];
|
|
/* 0276DDE0 */ cpu->r[5] = cpu->r[25];
|
|
/* 0276DDE4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DDE8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DDEC */ _t141 = cpu->r[24] + cpu->r[25];
|
|
/* 0276DDEC */ rbrew_write8(cpu->mem, _t141, (uint8_t)cpu->r[31]);
|
|
/* 0276DDF0 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276DDF4 */ _t142 = cpu->r[1] + 0x00000028u;
|
|
/* 0276DDF4 */ rbrew_write32(cpu->mem, _t142, cpu->r[28]);
|
|
/* 0276DDF8 */ cpu->r[10] = 0x02770000u;
|
|
/* 0276DDFC */ _t143 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DDFC */ rbrew_write8(cpu->mem, _t143, (uint8_t)cpu->r[0]);
|
|
/* 0276DE00 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0276DE04 */ _t144 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DE04 */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[28]);
|
|
/* 0276DE08 */ cpu->r[12] = 0x02770000u;
|
|
/* 0276DE0C */ _t145 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DE0C */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[28]);
|
|
/* 0276DE10 */ _t146 = cpu->r[1] + 0x00000026u;
|
|
/* 0276DE10 */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[28]);
|
|
/* 0276DE14 */ cpu->r[10] = cpu->r[10] + 0xFFFFEFA8u;
|
|
/* 0276DE18 */ _t147 = cpu->r[1] + 0x00000016u;
|
|
/* 0276DE18 */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[0]);
|
|
/* 0276DE1C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276DE20 */ _t148 = cpu->r[1] + 0x00000020u;
|
|
/* 0276DE20 */ rbrew_write32(cpu->mem, _t148, cpu->r[10]);
|
|
/* 0276DE24 */ cpu->r[12] = cpu->r[12] + 0xFFFFF01Cu;
|
|
/* 0276DE28 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DE2C */ _t149 = cpu->r[1] + 0x00000014u;
|
|
/* 0276DE2C */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[28]);
|
|
/* 0276DE30 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DE34 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276DE38 */ _t150 = cpu->r[1] + 0x00000018u;
|
|
/* 0276DE38 */ rbrew_write32(cpu->mem, _t150, cpu->r[12]);
|
|
/* 0276DE3C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DE40 */ _t151 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276DE40 */ rbrew_write16(cpu->mem, _t151, (uint16_t)cpu->r[0]);
|
|
/* 0276DE44 */ Gambit_fn_02770918(cpu);
|
|
/* 0276DE48 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276DE4C */ _t152 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DE4C */ rbrew_write32(cpu->mem, _t152, cpu->r[27]);
|
|
/* 0276DE50 */ cpu->r[0] = cpu->r[0] + 0x0000160Cu;
|
|
/* 0276DE54 */ _t153 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DE54 */ rbrew_write32(cpu->mem, _t153, cpu->r[0]);
|
|
/* 0276DE58 */ _t154 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276DE58 */ cpu->r[5] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0276DE5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 0276DE60 */ _t155 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DE60 */ cpu->r[25] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0276DE64 */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DE64 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0276DE64 */ if (_t157) goto L_0276DE68; else goto L_0276DE6C;
|
|
L_0276DE68: ; // 0x276de68
|
|
/* 0276DE68 */ cpu->r[25] = cpu->r[25] + 0x0000006Cu;
|
|
L_0276DE6C: ; // 0x276de6c
|
|
/* 0276DE6C */ cpu->ctr = cpu->r[26];
|
|
/* 0276DE70 */ _t158 = cpu->r[25] + 0x00000000u;
|
|
/* 0276DE70 */ cpu->r[24] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0276DE74 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DE78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DE7C */ _t159 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DE7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0276DE80 */ _t160 = cpu->r[9] + 0x00000000u;
|
|
/* 0276DE80 */ cpu->r[6] = rbrew_read8(cpu->mem, _t160);
|
|
/* 0276DE84 */ cpu->r[30] = 0x00000000u;
|
|
/* 0276DE88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0276DE8C */ cpu->r[6] = 0x00080000u;
|
|
/* 0276DE90 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DE90 */ _t162 = _t161 & 0x00000001u;
|
|
/* 0276DE90 */ if (_t162) goto L_0276DEB8; else goto L_0276DE94;
|
|
L_0276DE94: ; // 0x276de94
|
|
/* 0276DE94 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276DE98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0276DE9C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0276DEA0 */ _t163 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DEA0 */ _t164 = _t163 & 0x00000001u;
|
|
/* 0276DEA0 */ if (_t164) goto L_0276DEB4; else goto L_0276DEA4;
|
|
L_0276DEA4: ; // 0x276dea4
|
|
/* 0276DEA4 */ _t165 = cpu->r[9] + 0x00000000u;
|
|
/* 0276DEA4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t165);
|
|
/* 0276DEA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0276DEAC */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DEAC */ _t167 = _t166 & 0x00000001u;
|
|
/* 0276DEAC */ if (_t167) goto L_0276DEB0; else goto L_0276DE94;
|
|
L_0276DEB0: ; // 0x276deb0
|
|
/* 0276DEB0 */ goto L_0276DEB8;
|
|
L_0276DEB4: ; // 0x276deb4
|
|
/* 0276DEB4 */ cpu->r[30] = 0x00000000u;
|
|
L_0276DEB8: ; // 0x276deb8
|
|
/* 0276DEB8 */ _t168 = cpu->r[25] + 0x00000008u;
|
|
/* 0276DEB8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0276DEBC */ _t169 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DEBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t169);
|
|
/* 0276DEC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 0276DEC4 */ _t170 = cpu->r[8] + 0x00000014u;
|
|
/* 0276DEC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0276DEC8 */ _t171 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DEC8 */ _t172 = _t171 & 0x00000001u;
|
|
/* 0276DEC8 */ if (_t172) goto L_0276DED0; else goto L_0276DECC;
|
|
L_0276DECC: ; // 0x276decc
|
|
/* 0276DECC */ cpu->r[30] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0276DED0: ; // 0x276ded0
|
|
/* 0276DED0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276DED4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DED8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DEDC */ _t173 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DEDC */ cpu->r[4] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0276DEE0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DEE4 */ cpu->r[5] = cpu->r[30];
|
|
/* 0276DEE8 */ cpu->r[3] = cpu->r[24];
|
|
/* 0276DEEC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DEF0 */ _t174 = cpu->r[24] + cpu->r[30];
|
|
/* 0276DEF0 */ rbrew_write8(cpu->mem, _t174, (uint8_t)cpu->r[31]);
|
|
/* 0276DEF4 */ cpu->r[0] = 0x00000003u;
|
|
/* 0276DEF8 */ _t175 = cpu->r[1] + 0x00000028u;
|
|
/* 0276DEF8 */ rbrew_write32(cpu->mem, _t175, cpu->r[28]);
|
|
/* 0276DEFC */ cpu->r[10] = 0x02770000u;
|
|
/* 0276DF00 */ _t176 = cpu->r[1] + 0x00000008u;
|
|
/* 0276DF00 */ rbrew_write8(cpu->mem, _t176, (uint8_t)cpu->r[0]);
|
|
/* 0276DF04 */ cpu->r[12] = 0x02770000u;
|
|
/* 0276DF08 */ _t177 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DF08 */ rbrew_write16(cpu->mem, _t177, (uint16_t)cpu->r[28]);
|
|
/* 0276DF0C */ cpu->r[12] = cpu->r[12] + 0xFFFFF10Cu;
|
|
/* 0276DF10 */ _t178 = cpu->r[1] + 0x00000026u;
|
|
/* 0276DF10 */ rbrew_write16(cpu->mem, _t178, (uint16_t)cpu->r[28]);
|
|
/* 0276DF14 */ _t179 = cpu->r[1] + 0x00000018u;
|
|
/* 0276DF14 */ rbrew_write32(cpu->mem, _t179, cpu->r[12]);
|
|
/* 0276DF18 */ cpu->r[10] = cpu->r[10] + 0xFFFFF078u;
|
|
/* 0276DF1C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276DF20 */ _t180 = cpu->r[1] + 0x00000020u;
|
|
/* 0276DF20 */ rbrew_write32(cpu->mem, _t180, cpu->r[10]);
|
|
/* 0276DF24 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0276DF28 */ _t181 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DF28 */ rbrew_write16(cpu->mem, _t181, (uint16_t)cpu->r[28]);
|
|
/* 0276DF2C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276DF30 */ _t182 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276DF30 */ rbrew_write16(cpu->mem, _t182, (uint16_t)cpu->r[4]);
|
|
/* 0276DF34 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276DF38 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276DF3C */ _t183 = cpu->r[1] + 0x00000016u;
|
|
/* 0276DF3C */ rbrew_write16(cpu->mem, _t183, (uint16_t)cpu->r[4]);
|
|
/* 0276DF40 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276DF44 */ _t184 = cpu->r[1] + 0x00000014u;
|
|
/* 0276DF44 */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[28]);
|
|
/* 0276DF48 */ Gambit_fn_02770918(cpu);
|
|
/* 0276DF4C */ cpu->r[5] = 0x10100000u;
|
|
/* 0276DF50 */ _t185 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DF50 */ rbrew_write32(cpu->mem, _t185, cpu->r[27]);
|
|
/* 0276DF54 */ cpu->r[5] = cpu->r[5] + 0x0000161Cu;
|
|
/* 0276DF58 */ _t186 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DF58 */ rbrew_write32(cpu->mem, _t186, cpu->r[5]);
|
|
/* 0276DF5C */ _t187 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276DF5C */ cpu->r[6] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0276DF60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000004u);
|
|
/* 0276DF64 */ _t188 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276DF64 */ cpu->r[25] = rbrew_read32(cpu->mem, _t188);
|
|
/* 0276DF68 */ _t189 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DF68 */ _t190 = _t189 & 0x00000001u;
|
|
/* 0276DF68 */ if (_t190) goto L_0276DF6C; else goto L_0276DF70;
|
|
L_0276DF6C: ; // 0x276df6c
|
|
/* 0276DF6C */ cpu->r[25] = cpu->r[25] + 0x00000090u;
|
|
L_0276DF70: ; // 0x276df70
|
|
/* 0276DF70 */ cpu->ctr = cpu->r[26];
|
|
/* 0276DF74 */ _t191 = cpu->r[25] + 0x00000000u;
|
|
/* 0276DF74 */ cpu->r[24] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0276DF78 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DF7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DF80 */ _t192 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DF80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0276DF84 */ _t193 = cpu->r[6] + 0x00000000u;
|
|
/* 0276DF84 */ cpu->r[7] = rbrew_read8(cpu->mem, _t193);
|
|
/* 0276DF88 */ cpu->r[30] = 0x00000000u;
|
|
/* 0276DF8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0276DF90 */ cpu->r[7] = 0x00080000u;
|
|
/* 0276DF94 */ _t194 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DF94 */ _t195 = _t194 & 0x00000001u;
|
|
/* 0276DF94 */ if (_t195) goto L_0276DFBC; else goto L_0276DF98;
|
|
L_0276DF98: ; // 0x276df98
|
|
/* 0276DF98 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276DF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 0276DFA0 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0276DFA4 */ _t196 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276DFA4 */ _t197 = _t196 & 0x00000001u;
|
|
/* 0276DFA4 */ if (_t197) goto L_0276DFB8; else goto L_0276DFA8;
|
|
L_0276DFA8: ; // 0x276dfa8
|
|
/* 0276DFA8 */ _t198 = cpu->r[6] + 0x00000000u;
|
|
/* 0276DFA8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t198);
|
|
/* 0276DFAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0276DFB0 */ _t199 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276DFB0 */ _t200 = _t199 & 0x00000001u;
|
|
/* 0276DFB0 */ if (_t200) goto L_0276DFB4; else goto L_0276DF98;
|
|
L_0276DFB4: ; // 0x276dfb4
|
|
/* 0276DFB4 */ goto L_0276DFBC;
|
|
L_0276DFB8: ; // 0x276dfb8
|
|
/* 0276DFB8 */ cpu->r[30] = 0x00000000u;
|
|
L_0276DFBC: ; // 0x276dfbc
|
|
/* 0276DFBC */ _t201 = cpu->r[25] + 0x00000008u;
|
|
/* 0276DFBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t201);
|
|
/* 0276DFC0 */ _t202 = cpu->r[1] + 0x00000010u;
|
|
/* 0276DFC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t202);
|
|
/* 0276DFC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 0276DFC8 */ _t203 = cpu->r[9] + 0x00000014u;
|
|
/* 0276DFC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0276DFCC */ _t204 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276DFCC */ _t205 = _t204 & 0x00000001u;
|
|
/* 0276DFCC */ if (_t205) goto L_0276DFD4; else goto L_0276DFD0;
|
|
L_0276DFD0: ; // 0x276dfd0
|
|
/* 0276DFD0 */ cpu->r[30] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_0276DFD4: ; // 0x276dfd4
|
|
/* 0276DFD4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276DFD8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DFDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276DFE0 */ _t206 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276DFE0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t206);
|
|
/* 0276DFE4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276DFE8 */ cpu->r[5] = cpu->r[30];
|
|
/* 0276DFEC */ cpu->r[3] = cpu->r[24];
|
|
/* 0276DFF0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276DFF4 */ _t207 = cpu->r[24] + cpu->r[30];
|
|
/* 0276DFF4 */ rbrew_write8(cpu->mem, _t207, (uint8_t)cpu->r[31]);
|
|
/* 0276DFF8 */ cpu->r[10] = 0x00000004u;
|
|
/* 0276DFFC */ _t208 = cpu->r[1] + 0x00000024u;
|
|
/* 0276DFFC */ rbrew_write16(cpu->mem, _t208, (uint16_t)cpu->r[28]);
|
|
/* 0276E000 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0276E004 */ _t209 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E004 */ rbrew_write8(cpu->mem, _t209, (uint8_t)cpu->r[10]);
|
|
/* 0276E008 */ cpu->r[11] = 0x02770000u;
|
|
/* 0276E00C */ _t210 = cpu->r[1] + 0x00000016u;
|
|
/* 0276E00C */ rbrew_write16(cpu->mem, _t210, (uint16_t)cpu->r[12]);
|
|
/* 0276E010 */ cpu->r[0] = 0x02770000u;
|
|
/* 0276E014 */ _t211 = cpu->r[1] + 0x00000026u;
|
|
/* 0276E014 */ rbrew_write16(cpu->mem, _t211, (uint16_t)cpu->r[28]);
|
|
/* 0276E018 */ _t212 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E018 */ rbrew_write16(cpu->mem, _t212, (uint16_t)cpu->r[28]);
|
|
/* 0276E01C */ cpu->r[0] = cpu->r[0] + 0xFFFFF1B4u;
|
|
/* 0276E020 */ _t213 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276E020 */ rbrew_write16(cpu->mem, _t213, (uint16_t)cpu->r[12]);
|
|
/* 0276E024 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E028 */ _t214 = cpu->r[1] + 0x00000018u;
|
|
/* 0276E028 */ rbrew_write32(cpu->mem, _t214, cpu->r[0]);
|
|
/* 0276E02C */ cpu->r[11] = cpu->r[11] + 0xFFFFF120u;
|
|
/* 0276E030 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276E034 */ _t215 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E034 */ rbrew_write16(cpu->mem, _t215, (uint16_t)cpu->r[28]);
|
|
/* 0276E038 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276E03C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276E040 */ _t216 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E040 */ rbrew_write32(cpu->mem, _t216, cpu->r[11]);
|
|
/* 0276E044 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E048 */ _t217 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E048 */ rbrew_write32(cpu->mem, _t217, cpu->r[28]);
|
|
/* 0276E04C */ Gambit_fn_02770918(cpu);
|
|
/* 0276E050 */ cpu->r[7] = 0x10100000u;
|
|
/* 0276E054 */ _t218 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E054 */ rbrew_write32(cpu->mem, _t218, cpu->r[27]);
|
|
/* 0276E058 */ cpu->r[7] = cpu->r[7] + 0x00001644u;
|
|
/* 0276E05C */ _t219 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E05C */ rbrew_write32(cpu->mem, _t219, cpu->r[7]);
|
|
/* 0276E060 */ _t220 = cpu->r[29] + 0x000001E0u;
|
|
/* 0276E060 */ cpu->r[8] = rbrew_read32(cpu->mem, _t220);
|
|
/* 0276E064 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000005u);
|
|
/* 0276E068 */ _t221 = cpu->r[29] + 0x000001E4u;
|
|
/* 0276E068 */ cpu->r[27] = rbrew_read32(cpu->mem, _t221);
|
|
/* 0276E06C */ _t222 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276E06C */ _t223 = _t222 & 0x00000001u;
|
|
/* 0276E06C */ if (_t223) goto L_0276E070; else goto L_0276E074;
|
|
L_0276E070: ; // 0x276e070
|
|
/* 0276E070 */ cpu->r[27] = cpu->r[27] + 0x000000B4u;
|
|
L_0276E074: ; // 0x276e074
|
|
/* 0276E074 */ cpu->ctr = cpu->r[26];
|
|
/* 0276E078 */ _t224 = cpu->r[27] + 0x00000000u;
|
|
/* 0276E078 */ cpu->r[25] = rbrew_read32(cpu->mem, _t224);
|
|
/* 0276E07C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E080 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E084 */ _t225 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E084 */ cpu->r[10] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0276E088 */ _t226 = cpu->r[10] + 0x00000000u;
|
|
/* 0276E088 */ cpu->r[9] = rbrew_read8(cpu->mem, _t226);
|
|
/* 0276E08C */ cpu->r[30] = 0x00000000u;
|
|
/* 0276E090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 0276E094 */ cpu->r[12] = 0x00080000u;
|
|
/* 0276E098 */ _t227 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E098 */ _t228 = _t227 & 0x00000001u;
|
|
/* 0276E098 */ if (_t228) goto L_0276E0C0; else goto L_0276E09C;
|
|
L_0276E09C: ; // 0x276e09c
|
|
/* 0276E09C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0276E0A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0276E0A4 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0276E0A8 */ _t229 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276E0A8 */ _t230 = _t229 & 0x00000001u;
|
|
/* 0276E0A8 */ if (_t230) goto L_0276E0BC; else goto L_0276E0AC;
|
|
L_0276E0AC: ; // 0x276e0ac
|
|
/* 0276E0AC */ _t231 = cpu->r[10] + 0x00000000u;
|
|
/* 0276E0AC */ cpu->r[11] = rbrew_read8(cpu->mem, _t231);
|
|
/* 0276E0B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 0276E0B4 */ _t232 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E0B4 */ _t233 = _t232 & 0x00000001u;
|
|
/* 0276E0B4 */ if (_t233) goto L_0276E0B8; else goto L_0276E09C;
|
|
L_0276E0B8: ; // 0x276e0b8
|
|
/* 0276E0B8 */ goto L_0276E0C0;
|
|
L_0276E0BC: ; // 0x276e0bc
|
|
/* 0276E0BC */ cpu->r[30] = 0x00000000u;
|
|
L_0276E0C0: ; // 0x276e0c0
|
|
/* 0276E0C0 */ _t234 = cpu->r[27] + 0x00000008u;
|
|
/* 0276E0C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t234);
|
|
/* 0276E0C4 */ _t235 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E0C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t235);
|
|
/* 0276E0C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0276E0CC */ _t236 = cpu->r[12] + 0x00000014u;
|
|
/* 0276E0CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t236);
|
|
/* 0276E0D0 */ _t237 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E0D0 */ _t238 = _t237 & 0x00000001u;
|
|
/* 0276E0D0 */ if (_t238) goto L_0276E0D8; else goto L_0276E0D4;
|
|
L_0276E0D4: ; // 0x276e0d4
|
|
/* 0276E0D4 */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0276E0D8: ; // 0x276e0d8
|
|
/* 0276E0D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E0DC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E0E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E0E4 */ _t239 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E0E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t239);
|
|
/* 0276E0E8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276E0EC */ cpu->r[5] = cpu->r[30];
|
|
/* 0276E0F0 */ cpu->r[3] = cpu->r[25];
|
|
/* 0276E0F4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276E0F8 */ _t240 = cpu->r[25] + cpu->r[30];
|
|
/* 0276E0F8 */ rbrew_write8(cpu->mem, _t240, (uint8_t)cpu->r[31]);
|
|
/* 0276E0FC */ cpu->r[12] = 0x00000005u;
|
|
/* 0276E100 */ _t241 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E100 */ rbrew_write32(cpu->mem, _t241, cpu->r[28]);
|
|
/* 0276E104 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0276E108 */ _t242 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E108 */ rbrew_write8(cpu->mem, _t242, (uint8_t)cpu->r[12]);
|
|
/* 0276E10C */ cpu->r[4] = 0x02770000u;
|
|
/* 0276E110 */ _t243 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0276E110 */ rbrew_write16(cpu->mem, _t243, (uint16_t)cpu->r[8]);
|
|
/* 0276E114 */ cpu->r[4] = cpu->r[4] + 0xFFFFF1C8u;
|
|
/* 0276E118 */ cpu->r[0] = 0x02770000u;
|
|
/* 0276E11C */ _t244 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E11C */ rbrew_write16(cpu->mem, _t244, (uint16_t)cpu->r[28]);
|
|
/* 0276E120 */ cpu->r[0] = cpu->r[0] + 0xFFFFF228u;
|
|
/* 0276E124 */ _t245 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E124 */ rbrew_write32(cpu->mem, _t245, cpu->r[4]);
|
|
/* 0276E128 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E12C */ _t246 = cpu->r[1] + 0x00000018u;
|
|
/* 0276E12C */ rbrew_write32(cpu->mem, _t246, cpu->r[0]);
|
|
/* 0276E130 */ cpu->r[3] = cpu->r[29] + 0x000001CCu;
|
|
/* 0276E134 */ _t247 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E134 */ rbrew_write16(cpu->mem, _t247, (uint16_t)cpu->r[28]);
|
|
/* 0276E138 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0276E13C */ _t248 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E13C */ rbrew_write16(cpu->mem, _t248, (uint16_t)cpu->r[28]);
|
|
/* 0276E140 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E144 */ _t249 = cpu->r[1] + 0x00000026u;
|
|
/* 0276E144 */ rbrew_write16(cpu->mem, _t249, (uint16_t)cpu->r[28]);
|
|
/* 0276E148 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0276E14C */ _t250 = cpu->r[1] + 0x00000016u;
|
|
/* 0276E14C */ rbrew_write16(cpu->mem, _t250, (uint16_t)cpu->r[8]);
|
|
/* 0276E150 */ Gambit_fn_02770918(cpu);
|
|
L_0276E154: ; // 0x276e154
|
|
/* 0276E154 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276E158 */ /* nop */
|
|
/* 0276E15C */ _t251 = cpu->r[1] + 0x00000058u;
|
|
/* 0276E15C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 0276E160 */ _t252 = cpu->r[1] + 0x00000050u;
|
|
/* 0276E160 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t252);
|
|
/* 0276E164 */ _t253 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E164 */ _t254 = _t253 & 0x00000001u;
|
|
/* 0276E164 */ if (_t254) goto L_0276E168; // else: addr-0 trap, fall-through
|
|
L_0276E168: ; // 0x276e168
|
|
/* 0276E168 */ _t255 = cpu->r[1] + 0x00000064u;
|
|
/* 0276E168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t255);
|
|
/* 0276E16C */ cpu->lr = cpu->r[0];
|
|
/* 0276E170 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 0276E174 */ return;
|
|
}
|
|
|
|
// fn_0276E178 @ 0x276e178
|
|
void Gambit_fn_0276E178(CPUState* cpu) {
|
|
uint32_t _t0, _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_0276E178: ; // 0x276e178
|
|
/* 0276E178 */ cpu->r[0] = cpu->lr;
|
|
/* 0276E17C */ _t0 = cpu->r[1] + 0xFFFFFEE0u;
|
|
/* 0276E17C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E17C */ cpu->r[1] = _t0;
|
|
/* 0276E180 */ _t1 = cpu->r[1] + 0x00000118u;
|
|
/* 0276E180 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276E184 */ _t2 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0276E184 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276E188 */ cpu->r[31] = cpu->r[4];
|
|
/* 0276E188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276E18C */ cpu->r[30] = cpu->r[3];
|
|
/* 0276E190 */ _t3 = cpu->r[1] + 0x00000124u;
|
|
/* 0276E190 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276E194 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E194 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276E194 */ if (_t5) goto L_0276E240; else goto L_0276E198;
|
|
L_0276E198: ; // 0x276e198
|
|
/* 0276E198 */ cpu->r[4] = 0x10100000u;
|
|
/* 0276E19C */ cpu->r[5] = 0x10100000u;
|
|
/* 0276E1A0 */ cpu->r[6] = cpu->r[31];
|
|
/* 0276E1A4 */ cpu->r[4] = cpu->r[4] + 0x00001668u;
|
|
/* 0276E1A8 */ cpu->r[5] = cpu->r[5] + 0x0000169Cu;
|
|
/* 0276E1AC */ cpu->r[3] = cpu->r[30] + 0x00000440u;
|
|
/* 0276E1B0 */ _t6 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0276E1B0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276E1B0 */ if (_t7) goto L_0276E1B4; // else: addr-0 trap, fall-through
|
|
L_0276E1B4: ; // 0x276e1b4
|
|
/* 0276E1B4 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0276E1B8 */ _t8 = cpu->r[30] + 0x00000444u;
|
|
/* 0276E1B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276E1BC */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 0276E1BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276E1C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E1C4 */ cpu->r[3] = cpu->r[30] + 0x00000440u;
|
|
/* 0276E1C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E1CC */ _t10 = cpu->r[30] + 0x00000440u;
|
|
/* 0276E1CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276E1D0 */ cpu->r[12] = 0x10110000u;
|
|
/* 0276E1D4 */ cpu->r[11] = cpu->r[1] + 0x00000014u;
|
|
/* 0276E1D8 */ cpu->r[4] = 0x10100000u;
|
|
/* 0276E1DC */ _t11 = cpu->r[30] + 0x000000ACu;
|
|
/* 0276E1DC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0276E1E0 */ cpu->r[8] = 0x00000100u;
|
|
/* 0276E1E4 */ _t12 = cpu->r[12] + 0x00007399u;
|
|
/* 0276E1E4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0276E1E8 */ cpu->r[4] = cpu->r[4] + 0x00001688u;
|
|
/* 0276E1EC */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E1EC */ rbrew_write32(cpu->mem, _t13, cpu->r[8]);
|
|
/* 0276E1F0 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E1F0 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[12]);
|
|
/* 0276E1F4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276E1F8 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E1F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 0276E1FC */ cpu->r[0] = cpu->r[0] + 0x00001360u;
|
|
/* 0276E200 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E204 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E204 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276E208 */ cpu->r[5] = cpu->r[31];
|
|
/* 0276E20C */ _t17 = cpu->r[1] + 0x00000113u;
|
|
/* 0276E20C */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[12]);
|
|
/* 0276E210 */ _t18 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0276E210 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0276E210 */ if (_t19) goto L_0276E214; // else: addr-0 trap, fall-through
|
|
L_0276E214: ; // 0x276e214
|
|
/* 0276E214 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0276E218 */ cpu->r[5] = 0x00000000u;
|
|
/* 0276E21C */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E220 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E224 */ Gambit_fn_027F85F4(cpu);
|
|
/* 0276E228 */ cpu->r[4] = 0x10100000u;
|
|
/* 0276E22C */ cpu->r[5] = cpu->r[31];
|
|
/* 0276E230 */ cpu->r[4] = cpu->r[4] + 0x00001664u;
|
|
/* 0276E234 */ cpu->r[3] = cpu->r[30] + 0x000000B0u;
|
|
/* 0276E238 */ _t20 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0276E238 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0276E238 */ if (_t21) goto L_0276E23C; // else: addr-0 trap, fall-through
|
|
L_0276E23C: ; // 0x276e23c
|
|
/* 0276E23C */ Gambit_fn_0282A5F4(cpu);
|
|
L_0276E240: ; // 0x276e240
|
|
/* 0276E240 */ _t22 = cpu->r[1] + 0x00000124u;
|
|
/* 0276E240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276E244 */ _t23 = cpu->r[1] + 0x00000118u;
|
|
/* 0276E244 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0276E248 */ cpu->lr = cpu->r[0];
|
|
/* 0276E24C */ _t24 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0276E24C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0276E250 */ cpu->r[1] = cpu->r[1] + 0x00000120u;
|
|
/* 0276E254 */ return;
|
|
}
|
|
|
|
// fn_0276E17C @ 0x276e17c
|
|
void Gambit_fn_0276E17C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0276E17C: ; // 0x276e17c
|
|
/* 0276E17C */ _t0 = cpu->r[1] + 0xFFFFFEE0u;
|
|
/* 0276E17C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E17C */ cpu->r[1] = _t0;
|
|
/* 0276E180 */ _t1 = cpu->r[1] + 0x00000118u;
|
|
/* 0276E180 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276E184 */ _t2 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0276E184 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276E188 */ cpu->r[31] = cpu->r[4];
|
|
/* 0276E188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276E18C */ cpu->r[30] = cpu->r[3];
|
|
/* 0276E190 */ _t3 = cpu->r[1] + 0x00000124u;
|
|
/* 0276E190 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276E194 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E194 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0276E194 */ if (_t5) goto L_0276E240; else goto L_0276E198;
|
|
L_0276E198: ; // 0x276e198
|
|
/* 0276E198 */ cpu->r[4] = 0x10100000u;
|
|
/* 0276E19C */ cpu->r[5] = 0x10100000u;
|
|
/* 0276E1A0 */ cpu->r[6] = cpu->r[31];
|
|
/* 0276E1A4 */ cpu->r[4] = cpu->r[4] + 0x00001668u;
|
|
/* 0276E1A8 */ cpu->r[5] = cpu->r[5] + 0x0000169Cu;
|
|
/* 0276E1AC */ cpu->r[3] = cpu->r[30] + 0x00000440u;
|
|
/* 0276E1B0 */ _t6 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0276E1B0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276E1B0 */ if (_t7) goto L_0276E1B4; // else: addr-0 trap, fall-through
|
|
L_0276E1B4: ; // 0x276e1b4
|
|
/* 0276E1B4 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0276E1B8 */ _t8 = cpu->r[30] + 0x00000444u;
|
|
/* 0276E1B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276E1BC */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 0276E1BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276E1C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E1C4 */ cpu->r[3] = cpu->r[30] + 0x00000440u;
|
|
/* 0276E1C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E1CC */ _t10 = cpu->r[30] + 0x00000440u;
|
|
/* 0276E1CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276E1D0 */ cpu->r[12] = 0x10110000u;
|
|
/* 0276E1D4 */ cpu->r[11] = cpu->r[1] + 0x00000014u;
|
|
/* 0276E1D8 */ cpu->r[4] = 0x10100000u;
|
|
/* 0276E1DC */ _t11 = cpu->r[30] + 0x000000ACu;
|
|
/* 0276E1DC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0276E1E0 */ cpu->r[8] = 0x00000100u;
|
|
/* 0276E1E4 */ _t12 = cpu->r[12] + 0x00007399u;
|
|
/* 0276E1E4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0276E1E8 */ cpu->r[4] = cpu->r[4] + 0x00001688u;
|
|
/* 0276E1EC */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E1EC */ rbrew_write32(cpu->mem, _t13, cpu->r[8]);
|
|
/* 0276E1F0 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E1F0 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[12]);
|
|
/* 0276E1F4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276E1F8 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E1F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 0276E1FC */ cpu->r[0] = cpu->r[0] + 0x00001360u;
|
|
/* 0276E200 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E204 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E204 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276E208 */ cpu->r[5] = cpu->r[31];
|
|
/* 0276E20C */ _t17 = cpu->r[1] + 0x00000113u;
|
|
/* 0276E20C */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[12]);
|
|
/* 0276E210 */ _t18 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0276E210 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0276E210 */ if (_t19) goto L_0276E214; // else: addr-0 trap, fall-through
|
|
L_0276E214: ; // 0x276e214
|
|
/* 0276E214 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0276E218 */ cpu->r[5] = 0x00000000u;
|
|
/* 0276E21C */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E220 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E224 */ Gambit_fn_027F85F4(cpu);
|
|
/* 0276E228 */ cpu->r[4] = 0x10100000u;
|
|
/* 0276E22C */ cpu->r[5] = cpu->r[31];
|
|
/* 0276E230 */ cpu->r[4] = cpu->r[4] + 0x00001664u;
|
|
/* 0276E234 */ cpu->r[3] = cpu->r[30] + 0x000000B0u;
|
|
/* 0276E238 */ _t20 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0276E238 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0276E238 */ if (_t21) goto L_0276E23C; // else: addr-0 trap, fall-through
|
|
L_0276E23C: ; // 0x276e23c
|
|
/* 0276E23C */ Gambit_fn_0282A5F4(cpu);
|
|
L_0276E240: ; // 0x276e240
|
|
/* 0276E240 */ _t22 = cpu->r[1] + 0x00000124u;
|
|
/* 0276E240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276E244 */ _t23 = cpu->r[1] + 0x00000118u;
|
|
/* 0276E244 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0276E248 */ cpu->lr = cpu->r[0];
|
|
/* 0276E24C */ _t24 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0276E24C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0276E250 */ cpu->r[1] = cpu->r[1] + 0x00000120u;
|
|
/* 0276E254 */ return;
|
|
}
|
|
|
|
// fn_0276E258 @ 0x276e258
|
|
void Gambit_fn_0276E258(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66;
|
|
|
|
L_0276E258: ; // 0x276e258
|
|
/* 0276E258 */ cpu->r[0] = cpu->lr;
|
|
/* 0276E25C */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0276E25C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E25C */ cpu->r[1] = _t0;
|
|
/* 0276E260 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276E260 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0276E264 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 0276E264 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276E268 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 0276E268 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0276E26C */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0276E26C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276E270 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0276E270 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276E274 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276E278 */ _t6 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0276E278 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276E27C */ _t7 = cpu->r[12] + 0x00000204u;
|
|
/* 0276E27C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276E280 */ cpu->ctr = cpu->r[8];
|
|
/* 0276E284 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276E288 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E28C */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E28C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276E290 */ _t9 = cpu->r[9] + 0x0000020Cu;
|
|
/* 0276E290 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276E294 */ cpu->ctr = cpu->r[10];
|
|
/* 0276E298 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E29C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2A0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E2A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276E2A4 */ _t11 = cpu->r[11] + 0x00000214u;
|
|
/* 0276E2A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276E2A8 */ cpu->ctr = cpu->r[12];
|
|
/* 0276E2AC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E2B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2B4 */ _t12 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276E2B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276E2B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E2BC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E2BC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0276E2BC */ if (_t14) goto L_0276E308; else goto L_0276E2C0;
|
|
L_0276E2C0: ; // 0x276e2c0
|
|
/* 0276E2C0 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E2C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276E2C4 */ _t16 = cpu->r[8] + 0x0000021Cu;
|
|
/* 0276E2C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276E2C8 */ cpu->ctr = cpu->r[9];
|
|
/* 0276E2CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E2D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2D4 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E2D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276E2D8 */ _t18 = cpu->r[10] + 0x0000021Cu;
|
|
/* 0276E2D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276E2DC */ cpu->ctr = cpu->r[0];
|
|
/* 0276E2E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E2E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2E8 */ _t19 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E2E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276E2EC */ _t20 = cpu->r[12] + 0x0000021Cu;
|
|
/* 0276E2EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0276E2F0 */ cpu->ctr = cpu->r[8];
|
|
/* 0276E2F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E2F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2FC */ cpu->r[4] = cpu->r[3];
|
|
/* 0276E300 */ _t21 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276E300 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276E304 */ Gambit_fn_0276E178(cpu);
|
|
L_0276E308: ; // 0x276e308
|
|
/* 0276E308 */ _t22 = cpu->r[31] + 0x000002C4u;
|
|
/* 0276E308 */ cpu->r[9] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0276E30C */ cpu->r[29] = 0x10100000u;
|
|
/* 0276E310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276E314 */ cpu->r[29] = cpu->r[29] + 0x00001288u;
|
|
/* 0276E318 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E318 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0276E318 */ if (_t24) goto L_0276E374; else goto L_0276E31C;
|
|
L_0276E31C: ; // 0x276e31c
|
|
/* 0276E31C */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E31C */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 0276E320 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276E324 */ _t26 = cpu->r[31] + 0x00000008u;
|
|
/* 0276E324 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0276E328 */ cpu->r[10] = cpu->r[10] + 0x000016ACu;
|
|
/* 0276E32C */ cpu->r[0] = 0x10100000u;
|
|
/* 0276E330 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E330 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 0276E334 */ cpu->r[0] = cpu->r[0] + 0x000016BCu;
|
|
/* 0276E338 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E338 */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
/* 0276E33C */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E340 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E344 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0276E344 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0276E348 */ Gambit_fn_02980A18(cpu);
|
|
/* 0276E34C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E350 */ _t30 = cpu->r[1] + 0x00000040u;
|
|
/* 0276E350 */ rbrew_write32(cpu->mem, _t30, cpu->r[3]);
|
|
/* 0276E354 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0276E358 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E358 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 0276E35C */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E360 */ Gambit_fn_02980AB0(cpu);
|
|
/* 0276E364 */ _t32 = cpu->r[1] + 0x00000030u;
|
|
/* 0276E364 */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 0276E368 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 0276E368 */ rbrew_write32(cpu->mem, _t33, cpu->r[4]);
|
|
/* 0276E36C */ _t34 = cpu->r[31] + 0x000002A0u;
|
|
/* 0276E36C */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 0276E370 */ _t35 = cpu->r[31] + 0x000002A4u;
|
|
/* 0276E370 */ rbrew_write32(cpu->mem, _t35, cpu->r[4]);
|
|
L_0276E374: ; // 0x276e374
|
|
/* 0276E374 */ _t36 = cpu->r[31] + 0x000002D8u;
|
|
/* 0276E374 */ cpu->r[9] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0276E378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276E37C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E37C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0276E37C */ if (_t38) goto L_0276E3D8; else goto L_0276E380;
|
|
L_0276E380: ; // 0x276e380
|
|
/* 0276E380 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276E380 */ rbrew_write32(cpu->mem, _t39, cpu->r[29]);
|
|
/* 0276E384 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276E388 */ _t40 = cpu->r[31] + 0x00000008u;
|
|
/* 0276E388 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0276E38C */ cpu->r[10] = cpu->r[10] + 0x000016B4u;
|
|
/* 0276E390 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276E394 */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E394 */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
/* 0276E398 */ cpu->r[0] = cpu->r[0] + 0x000016C8u;
|
|
/* 0276E39C */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E39C */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 0276E3A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E3A4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0276E3A8 */ _t43 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E3A8 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 0276E3AC */ Gambit_fn_02980A18(cpu);
|
|
/* 0276E3B0 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E3B4 */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 0276E3B4 */ rbrew_write32(cpu->mem, _t44, cpu->r[3]);
|
|
/* 0276E3B8 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0276E3BC */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E3BC */ rbrew_write32(cpu->mem, _t45, cpu->r[3]);
|
|
/* 0276E3C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E3C4 */ Gambit_fn_02980AB0(cpu);
|
|
/* 0276E3C8 */ _t46 = cpu->r[1] + 0x00000038u;
|
|
/* 0276E3C8 */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 0276E3CC */ _t47 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0276E3CC */ rbrew_write32(cpu->mem, _t47, cpu->r[4]);
|
|
/* 0276E3D0 */ _t48 = cpu->r[31] + 0x000002C8u;
|
|
/* 0276E3D0 */ rbrew_write32(cpu->mem, _t48, cpu->r[3]);
|
|
/* 0276E3D4 */ _t49 = cpu->r[31] + 0x000002CCu;
|
|
/* 0276E3D4 */ rbrew_write32(cpu->mem, _t49, cpu->r[4]);
|
|
L_0276E3D8: ; // 0x276e3d8
|
|
/* 0276E3D8 */ cpu->r[0] = 0x0000000Cu;
|
|
/* 0276E3DC */ cpu->r[7] = 0x101F0000u;
|
|
/* 0276E3E0 */ cpu->r[6] = cpu->r[31] + 0x000001FCu;
|
|
/* 0276E3E4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E3E8 */ cpu->r[7] = cpu->r[7] + 0x00001C1Cu;
|
|
/* 0276E3EC */ cpu->r[12] = 0x00000000u;
|
|
L_0276E3F0: ; // 0x276e3f0
|
|
/* 0276E3F0 */ _t50 = cpu->r[7] + 0x00000008u;
|
|
/* 0276E3F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0276E3F0 */ cpu->r[7] = _t50;
|
|
/* 0276E3F4 */ _t51 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0276E3F4 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 0276E3F4 */ cpu->r[6] = _t51;
|
|
/* 0276E3F8 */ _t52 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276E3F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0276E3FC */ _t53 = cpu->r[8] + 0x00000378u;
|
|
/* 0276E3FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0276E400 */ cpu->r[11] = 0x00000000u;
|
|
/* 0276E404 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[9]);
|
|
/* 0276E408 */ cpu->r[8] = cpu->r[8] + 0x0000027Cu;
|
|
/* 0276E40C */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E40C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0276E40C */ if (_t55) goto L_0276E410; else goto L_0276E41C;
|
|
L_0276E410: ; // 0x276e410
|
|
/* 0276E410 */ _t56 = cpu->r[8] + 0x00000104u;
|
|
/* 0276E410 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0276E414 */ cpu->r[10] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E418 */ _t57 = cpu->r[10] + cpu->r[0];
|
|
/* 0276E418 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
L_0276E41C: ; // 0x276e41c
|
|
/* 0276E41C */ _t58 = cpu->r[11] + 0x00000054u;
|
|
/* 0276E41C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0276E420 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0276E424 */ _t59 = cpu->r[6] + 0x00000008u;
|
|
/* 0276E424 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 0276E428 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0276E428 */ _t60 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0276E428 */ _t61 = _t60 >> (0x00000002u & 31u);
|
|
/* 0276E428 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0276E428 */ if (_t62) goto L_0276E3F0; else goto L_0276E42C;
|
|
L_0276E42C: ; // 0x276e42c
|
|
/* 0276E42C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E430 */ cpu->r[4] = cpu->r[31] + 0x00000208u;
|
|
/* 0276E434 */ Gambit_fn_02002684(cpu);
|
|
/* 0276E438 */ _t63 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276E438 */ cpu->r[29] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0276E43C */ _t64 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0276E43C */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0276E440 */ _t65 = cpu->r[1] + 0x00000050u;
|
|
/* 0276E440 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0276E444 */ cpu->lr = cpu->r[0];
|
|
/* 0276E448 */ _t66 = cpu->r[1] + 0x00000054u;
|
|
/* 0276E448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0276E44C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0276E450 */ return;
|
|
}
|
|
|
|
// fn_0276E25C @ 0x276e25c
|
|
void Gambit_fn_0276E25C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66;
|
|
|
|
L_0276E25C: ; // 0x276e25c
|
|
/* 0276E25C */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0276E25C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E25C */ cpu->r[1] = _t0;
|
|
/* 0276E260 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276E260 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0276E264 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 0276E264 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276E268 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 0276E268 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0276E26C */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0276E26C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276E270 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0276E270 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276E274 */ cpu->r[0] = 0x00000002u;
|
|
/* 0276E278 */ _t6 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0276E278 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276E27C */ _t7 = cpu->r[12] + 0x00000204u;
|
|
/* 0276E27C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276E280 */ cpu->ctr = cpu->r[8];
|
|
/* 0276E284 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276E288 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E28C */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E28C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276E290 */ _t9 = cpu->r[9] + 0x0000020Cu;
|
|
/* 0276E290 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276E294 */ cpu->ctr = cpu->r[10];
|
|
/* 0276E298 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E29C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2A0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E2A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276E2A4 */ _t11 = cpu->r[11] + 0x00000214u;
|
|
/* 0276E2A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276E2A8 */ cpu->ctr = cpu->r[12];
|
|
/* 0276E2AC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E2B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2B4 */ _t12 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276E2B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276E2B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E2BC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E2BC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0276E2BC */ if (_t14) goto L_0276E308; else goto L_0276E2C0;
|
|
L_0276E2C0: ; // 0x276e2c0
|
|
/* 0276E2C0 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E2C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276E2C4 */ _t16 = cpu->r[8] + 0x0000021Cu;
|
|
/* 0276E2C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276E2C8 */ cpu->ctr = cpu->r[9];
|
|
/* 0276E2CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E2D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2D4 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E2D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276E2D8 */ _t18 = cpu->r[10] + 0x0000021Cu;
|
|
/* 0276E2D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276E2DC */ cpu->ctr = cpu->r[0];
|
|
/* 0276E2E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E2E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2E8 */ _t19 = cpu->r[31] + 0x00000004u;
|
|
/* 0276E2E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276E2EC */ _t20 = cpu->r[12] + 0x0000021Cu;
|
|
/* 0276E2EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0276E2F0 */ cpu->ctr = cpu->r[8];
|
|
/* 0276E2F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E2F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E2FC */ cpu->r[4] = cpu->r[3];
|
|
/* 0276E300 */ _t21 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276E300 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276E304 */ Gambit_fn_0276E178(cpu);
|
|
L_0276E308: ; // 0x276e308
|
|
/* 0276E308 */ _t22 = cpu->r[31] + 0x000002C4u;
|
|
/* 0276E308 */ cpu->r[9] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0276E30C */ cpu->r[29] = 0x10100000u;
|
|
/* 0276E310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276E314 */ cpu->r[29] = cpu->r[29] + 0x00001288u;
|
|
/* 0276E318 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E318 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0276E318 */ if (_t24) goto L_0276E374; else goto L_0276E31C;
|
|
L_0276E31C: ; // 0x276e31c
|
|
/* 0276E31C */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E31C */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 0276E320 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276E324 */ _t26 = cpu->r[31] + 0x00000008u;
|
|
/* 0276E324 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0276E328 */ cpu->r[10] = cpu->r[10] + 0x000016ACu;
|
|
/* 0276E32C */ cpu->r[0] = 0x10100000u;
|
|
/* 0276E330 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E330 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 0276E334 */ cpu->r[0] = cpu->r[0] + 0x000016BCu;
|
|
/* 0276E338 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E338 */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
/* 0276E33C */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E340 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E344 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0276E344 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0276E348 */ Gambit_fn_02980A18(cpu);
|
|
/* 0276E34C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E350 */ _t30 = cpu->r[1] + 0x00000040u;
|
|
/* 0276E350 */ rbrew_write32(cpu->mem, _t30, cpu->r[3]);
|
|
/* 0276E354 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0276E358 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E358 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 0276E35C */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E360 */ Gambit_fn_02980AB0(cpu);
|
|
/* 0276E364 */ _t32 = cpu->r[1] + 0x00000030u;
|
|
/* 0276E364 */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 0276E368 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 0276E368 */ rbrew_write32(cpu->mem, _t33, cpu->r[4]);
|
|
/* 0276E36C */ _t34 = cpu->r[31] + 0x000002A0u;
|
|
/* 0276E36C */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 0276E370 */ _t35 = cpu->r[31] + 0x000002A4u;
|
|
/* 0276E370 */ rbrew_write32(cpu->mem, _t35, cpu->r[4]);
|
|
L_0276E374: ; // 0x276e374
|
|
/* 0276E374 */ _t36 = cpu->r[31] + 0x000002D8u;
|
|
/* 0276E374 */ cpu->r[9] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0276E378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276E37C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E37C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0276E37C */ if (_t38) goto L_0276E3D8; else goto L_0276E380;
|
|
L_0276E380: ; // 0x276e380
|
|
/* 0276E380 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276E380 */ rbrew_write32(cpu->mem, _t39, cpu->r[29]);
|
|
/* 0276E384 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276E388 */ _t40 = cpu->r[31] + 0x00000008u;
|
|
/* 0276E388 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0276E38C */ cpu->r[10] = cpu->r[10] + 0x000016B4u;
|
|
/* 0276E390 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276E394 */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E394 */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
/* 0276E398 */ cpu->r[0] = cpu->r[0] + 0x000016C8u;
|
|
/* 0276E39C */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E39C */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 0276E3A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E3A4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0276E3A8 */ _t43 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E3A8 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 0276E3AC */ Gambit_fn_02980A18(cpu);
|
|
/* 0276E3B0 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E3B4 */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 0276E3B4 */ rbrew_write32(cpu->mem, _t44, cpu->r[3]);
|
|
/* 0276E3B8 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0276E3BC */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E3BC */ rbrew_write32(cpu->mem, _t45, cpu->r[3]);
|
|
/* 0276E3C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E3C4 */ Gambit_fn_02980AB0(cpu);
|
|
/* 0276E3C8 */ _t46 = cpu->r[1] + 0x00000038u;
|
|
/* 0276E3C8 */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 0276E3CC */ _t47 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0276E3CC */ rbrew_write32(cpu->mem, _t47, cpu->r[4]);
|
|
/* 0276E3D0 */ _t48 = cpu->r[31] + 0x000002C8u;
|
|
/* 0276E3D0 */ rbrew_write32(cpu->mem, _t48, cpu->r[3]);
|
|
/* 0276E3D4 */ _t49 = cpu->r[31] + 0x000002CCu;
|
|
/* 0276E3D4 */ rbrew_write32(cpu->mem, _t49, cpu->r[4]);
|
|
L_0276E3D8: ; // 0x276e3d8
|
|
/* 0276E3D8 */ cpu->r[0] = 0x0000000Cu;
|
|
/* 0276E3DC */ cpu->r[7] = 0x101F0000u;
|
|
/* 0276E3E0 */ cpu->r[6] = cpu->r[31] + 0x000001FCu;
|
|
/* 0276E3E4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E3E8 */ cpu->r[7] = cpu->r[7] + 0x00001C1Cu;
|
|
/* 0276E3EC */ cpu->r[12] = 0x00000000u;
|
|
L_0276E3F0: ; // 0x276e3f0
|
|
/* 0276E3F0 */ _t50 = cpu->r[7] + 0x00000008u;
|
|
/* 0276E3F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0276E3F0 */ cpu->r[7] = _t50;
|
|
/* 0276E3F4 */ _t51 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0276E3F4 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 0276E3F4 */ cpu->r[6] = _t51;
|
|
/* 0276E3F8 */ _t52 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276E3F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0276E3FC */ _t53 = cpu->r[8] + 0x00000378u;
|
|
/* 0276E3FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0276E400 */ cpu->r[11] = 0x00000000u;
|
|
/* 0276E404 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[9]);
|
|
/* 0276E408 */ cpu->r[8] = cpu->r[8] + 0x0000027Cu;
|
|
/* 0276E40C */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E40C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0276E40C */ if (_t55) goto L_0276E410; else goto L_0276E41C;
|
|
L_0276E410: ; // 0x276e410
|
|
/* 0276E410 */ _t56 = cpu->r[8] + 0x00000104u;
|
|
/* 0276E410 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0276E414 */ cpu->r[10] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E418 */ _t57 = cpu->r[10] + cpu->r[0];
|
|
/* 0276E418 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
L_0276E41C: ; // 0x276e41c
|
|
/* 0276E41C */ _t58 = cpu->r[11] + 0x00000054u;
|
|
/* 0276E41C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0276E420 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0276E424 */ _t59 = cpu->r[6] + 0x00000008u;
|
|
/* 0276E424 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 0276E428 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0276E428 */ _t60 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0276E428 */ _t61 = _t60 >> (0x00000002u & 31u);
|
|
/* 0276E428 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0276E428 */ if (_t62) goto L_0276E3F0; else goto L_0276E42C;
|
|
L_0276E42C: ; // 0x276e42c
|
|
/* 0276E42C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E430 */ cpu->r[4] = cpu->r[31] + 0x00000208u;
|
|
/* 0276E434 */ Gambit_fn_02002684(cpu);
|
|
/* 0276E438 */ _t63 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276E438 */ cpu->r[29] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0276E43C */ _t64 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0276E43C */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0276E440 */ _t65 = cpu->r[1] + 0x00000050u;
|
|
/* 0276E440 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0276E444 */ cpu->lr = cpu->r[0];
|
|
/* 0276E448 */ _t66 = cpu->r[1] + 0x00000054u;
|
|
/* 0276E448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0276E44C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0276E450 */ return;
|
|
}
|
|
|
|
// fn_0276E454 @ 0x276e454
|
|
void Gambit_fn_0276E454(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276C6F8: ; // 0x276c6f8
|
|
/* 0276C6F8 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C6FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C6FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C6FC */ cpu->r[1] = _t0;
|
|
/* 0276C700 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C700 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276C704 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C704 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276C708 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276C70C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C70C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276C710 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0276C710 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0276C714 */ /* nop */
|
|
/* 0276C718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0276C71C */ cpu->r[31] = cpu->r[4];
|
|
/* 0276C720 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C720 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C720 */ if (_t6) goto L_0276C724; else goto L_0276C738;
|
|
L_0276C724: ; // 0x276c724
|
|
/* 0276C724 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0276C724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C728 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0276C728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276C72C */ cpu->ctr = cpu->r[0];
|
|
/* 0276C730 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C738: ; // 0x276c738
|
|
/* 0276C738 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C73C */ cpu->r[4] = cpu->r[31];
|
|
/* 0276C740 */ Gambit_fn_0276C670(cpu);
|
|
/* 0276C744 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C748 */ /* nop */
|
|
/* 0276C74C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C750 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C754 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276C758 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C75C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C75C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C760 */ cpu->lr = cpu->r[0];
|
|
/* 0276C764 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C768 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C76C */ return;
|
|
L_0276E454: ; // 0x276e454
|
|
/* 0276E454 */ cpu->r[3] = cpu->r[3] + 0x000001CCu;
|
|
/* 0276E458 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276E45C */ goto L_0276C6F8;
|
|
}
|
|
|
|
// fn_0276E460 @ 0x276e460
|
|
void Gambit_fn_0276E460(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0276E460: ; // 0x276e460
|
|
/* 0276E460 */ cpu->r[0] = cpu->lr;
|
|
/* 0276E464 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276E464 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E464 */ cpu->r[1] = _t0;
|
|
/* 0276E468 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E468 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276E46C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276E470 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E470 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276E474 */ _t3 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276E474 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276E478 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276E47C */ _t4 = cpu->r[12] + 0x00000250u;
|
|
/* 0276E47C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276E480 */ Gambit_fn_0209CF00(cpu);
|
|
/* 0276E484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276E488 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E488 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276E488 */ if (_t6) goto L_0276E494; else goto L_0276E48C;
|
|
L_0276E48C: ; // 0x276e48c
|
|
/* 0276E48C */ cpu->r[0] = 0x00000000u;
|
|
/* 0276E490 */ _t7 = cpu->r[31] + 0x00000298u;
|
|
/* 0276E490 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
L_0276E494: ; // 0x276e494
|
|
/* 0276E494 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276E498 */ Gambit_fn_0276C578(cpu);
|
|
/* 0276E49C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E49C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276E4A0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E4A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276E4A4 */ cpu->lr = cpu->r[0];
|
|
/* 0276E4A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E4AC */ return;
|
|
}
|
|
|
|
// fn_0276E464 @ 0x276e464
|
|
void Gambit_fn_0276E464(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0276E464: ; // 0x276e464
|
|
/* 0276E464 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276E464 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E464 */ cpu->r[1] = _t0;
|
|
/* 0276E468 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E468 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276E46C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276E470 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E470 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276E474 */ _t3 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276E474 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276E478 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276E47C */ _t4 = cpu->r[12] + 0x00000250u;
|
|
/* 0276E47C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276E480 */ Gambit_fn_0209CF00(cpu);
|
|
/* 0276E484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276E488 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E488 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276E488 */ if (_t6) goto L_0276E494; else goto L_0276E48C;
|
|
L_0276E48C: ; // 0x276e48c
|
|
/* 0276E48C */ cpu->r[0] = 0x00000000u;
|
|
/* 0276E490 */ _t7 = cpu->r[31] + 0x00000298u;
|
|
/* 0276E490 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
L_0276E494: ; // 0x276e494
|
|
/* 0276E494 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276E498 */ Gambit_fn_0276C578(cpu);
|
|
/* 0276E49C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E49C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276E4A0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E4A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276E4A4 */ cpu->lr = cpu->r[0];
|
|
/* 0276E4A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E4AC */ return;
|
|
}
|
|
|
|
// fn_0276E4B0 @ 0x276e4b0
|
|
void Gambit_fn_0276E4B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276E4B0: ; // 0x276e4b0
|
|
/* 0276E4B0 */ cpu->r[0] = cpu->lr;
|
|
/* 0276E4B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276E4B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E4B4 */ cpu->r[1] = _t0;
|
|
/* 0276E4B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E4B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276E4BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0276E4C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E4C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276E4C4 */ _t3 = cpu->r[31] + 0x00000204u;
|
|
/* 0276E4C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276E4C8 */ _t4 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0276E4C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0276E4CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E4D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E4D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276E4D0 */ if (_t6) goto L_0276E4D4; else goto L_0276E4F0;
|
|
L_0276E4D4: ; // 0x276e4d4
|
|
/* 0276E4D4 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 0276E4D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276E4D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276E4DC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E4DC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276E4DC */ if (_t9) goto L_0276E4F0; else goto L_0276E4E0;
|
|
L_0276E4E0: ; // 0x276e4e0
|
|
/* 0276E4E0 */ _t10 = cpu->r[31] + 0x00000080u;
|
|
/* 0276E4E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276E4E4 */ Gambit_fn_0239859C(cpu);
|
|
/* 0276E4E8 */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 0276E4E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276E4EC */ Gambit_fn_02980318(cpu);
|
|
L_0276E4F0: ; // 0x276e4f0
|
|
/* 0276E4F0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E4F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276E4F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E4F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276E4F8 */ cpu->lr = cpu->r[0];
|
|
/* 0276E4FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E500 */ return;
|
|
}
|
|
|
|
// fn_0276E4B4 @ 0x276e4b4
|
|
void Gambit_fn_0276E4B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276E4B4: ; // 0x276e4b4
|
|
/* 0276E4B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276E4B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E4B4 */ cpu->r[1] = _t0;
|
|
/* 0276E4B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E4B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276E4BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0276E4C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E4C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276E4C4 */ _t3 = cpu->r[31] + 0x00000204u;
|
|
/* 0276E4C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276E4C8 */ _t4 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0276E4C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0276E4CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E4D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E4D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276E4D0 */ if (_t6) goto L_0276E4D4; else goto L_0276E4F0;
|
|
L_0276E4D4: ; // 0x276e4d4
|
|
/* 0276E4D4 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 0276E4D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276E4D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276E4DC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E4DC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276E4DC */ if (_t9) goto L_0276E4F0; else goto L_0276E4E0;
|
|
L_0276E4E0: ; // 0x276e4e0
|
|
/* 0276E4E0 */ _t10 = cpu->r[31] + 0x00000080u;
|
|
/* 0276E4E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276E4E4 */ Gambit_fn_0239859C(cpu);
|
|
/* 0276E4E8 */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 0276E4E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276E4EC */ Gambit_fn_02980318(cpu);
|
|
L_0276E4F0: ; // 0x276e4f0
|
|
/* 0276E4F0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E4F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276E4F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E4F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276E4F8 */ cpu->lr = cpu->r[0];
|
|
/* 0276E4FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E500 */ return;
|
|
}
|
|
|
|
// fn_0276E504 @ 0x276e504
|
|
void Gambit_fn_0276E504(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0276E504: ; // 0x276e504
|
|
/* 0276E504 */ _t0 = cpu->r[3] + 0x000002DCu;
|
|
/* 0276E504 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276E508 */ _t1 = cpu->r[12] + 0x00000150u;
|
|
/* 0276E508 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0276E50C */ _t2 = cpu->r[12] + 0x00000210u;
|
|
/* 0276E50C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0276E510 */ _t3 = cpu->r[12] + 0x000001B0u;
|
|
/* 0276E510 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0276E514 */ _t4 = cpu->r[3] + 0x0000007Cu;
|
|
/* 0276E514 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 0276E518 */ _t5 = cpu->r[3] + 0x00000074u;
|
|
/* 0276E518 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[12]);
|
|
/* 0276E51C */ _t6 = cpu->r[3] + 0x00000078u;
|
|
/* 0276E51C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 0276E520 */ return;
|
|
}
|
|
|
|
// fn_0276E524 @ 0x276e524
|
|
void Gambit_fn_0276E524(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276E524: ; // 0x276e524
|
|
/* 0276E524 */ _t0 = cpu->r[3] + 0x000002DCu;
|
|
/* 0276E524 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276E528 */ _t1 = cpu->r[12] + 0x00000270u;
|
|
/* 0276E528 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0276E52C */ return;
|
|
}
|
|
|
|
// fn_0276E530 @ 0x276e530
|
|
void Gambit_fn_0276E530(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_0276E530: ; // 0x276e530
|
|
/* 0276E530 */ cpu->r[0] = cpu->lr;
|
|
/* 0276E534 */ _t0 = cpu->r[1] + 0xFFFFFE90u;
|
|
/* 0276E534 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E534 */ cpu->r[1] = _t0;
|
|
/* 0276E538 */ _t1 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0276E538 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276E53C */ _t2 = cpu->r[1] + 0x00000140u;
|
|
/* 0276E53C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0276E540 */ _t3 = cpu->r[1] + 0x00000150u;
|
|
/* 0276E540 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0276E544 */ _t4 = cpu->r[1] + 0x00000160u;
|
|
/* 0276E544 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0276E548 */ /* nop */
|
|
/* 0276E54C */ _t5 = cpu->r[1] + 0x00000148u;
|
|
/* 0276E54C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0276E550 */ _t6 = cpu->r[1] + 0x00000174u;
|
|
/* 0276E550 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276E554 */ /* nop */
|
|
/* 0276E558 */ _t7 = cpu->r[1] + 0x00000158u;
|
|
/* 0276E558 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 0276E55C */ _t8 = cpu->r[1] + 0x00000168u;
|
|
/* 0276E55C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 0276E560 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276E564 */ _t9 = cpu->r[1] + 0x00000144u;
|
|
/* 0276E564 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0276E568 */ _t10 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276E56C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E570 */ cpu->r[31] = cpu->r[4];
|
|
/* 0276E574 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E574 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276E574 */ if (_t12) goto L_0276EA80; else goto L_0276E578;
|
|
L_0276E578: ; // 0x276e578
|
|
/* 0276E578 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E57C */ Gambit_fn_0276E504(cpu);
|
|
/* 0276E580 */ cpu->r[10] = 0x00000003u;
|
|
/* 0276E584 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0276E588 */ cpu->r[9] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276E58C */ cpu->ctr = cpu->r[10];
|
|
/* 0276E590 */ cpu->r[11] = cpu->r[11] + 0x00005E2Cu;
|
|
L_0276E594: ; // 0x276e594
|
|
/* 0276E594 */ _t13 = cpu->r[11] + 0x00000004u;
|
|
/* 0276E594 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276E598 */ _t14 = cpu->r[9] + 0x00000004u;
|
|
/* 0276E598 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0276E59C */ _t15 = cpu->r[11] + 0x00000008u;
|
|
/* 0276E59C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276E5A0 */ _t16 = cpu->r[9] + 0x00000008u;
|
|
/* 0276E5A0 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276E5A4 */ _t17 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0276E5A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276E5A8 */ _t18 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0276E5A8 */ rbrew_write32(cpu->mem, _t18, cpu->r[6]);
|
|
/* 0276E5AC */ _t19 = cpu->r[11] + 0x00000010u;
|
|
/* 0276E5AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276E5AC */ cpu->r[11] = _t19;
|
|
/* 0276E5B0 */ _t20 = cpu->r[9] + 0x00000010u;
|
|
/* 0276E5B0 */ rbrew_write32(cpu->mem, _t20, cpu->r[7]);
|
|
/* 0276E5B0 */ cpu->r[9] = _t20;
|
|
/* 0276E5B4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0276E5B4 */ _t21 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0276E5B4 */ _t22 = _t21 >> (0x00000002u & 31u);
|
|
/* 0276E5B4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0276E5B4 */ if (_t23) goto L_0276E594; else goto L_0276E5B8;
|
|
L_0276E5B8: ; // 0x276e5b8
|
|
/* 0276E5B8 */ cpu->r[0] = cpu->r[1] + 0x000000E4u;
|
|
/* 0276E5BC */ cpu->r[11] = 0x00000020u;
|
|
/* 0276E5C0 */ _t24 = cpu->r[1] + 0x000000D8u;
|
|
/* 0276E5C0 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0276E5C4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276E5C8 */ cpu->r[12] = 0x10110000u;
|
|
/* 0276E5CC */ _t25 = cpu->r[1] + 0x000000E0u;
|
|
/* 0276E5CC */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 0276E5D0 */ cpu->r[0] = cpu->r[0] + 0x00001300u;
|
|
/* 0276E5D4 */ _t26 = cpu->r[12] + 0x00007399u;
|
|
/* 0276E5D4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0276E5D8 */ _t27 = cpu->r[1] + 0x000000DCu;
|
|
/* 0276E5D8 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0276E5DC */ _t28 = cpu->r[30] + 0x00000204u;
|
|
/* 0276E5DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276E5E0 */ _t29 = cpu->r[1] + 0x00000103u;
|
|
/* 0276E5E0 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[12]);
|
|
/* 0276E5E4 */ _t30 = cpu->r[1] + 0x000000E4u;
|
|
/* 0276E5E4 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[12]);
|
|
/* 0276E5E8 */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 0276E5E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0276E5EC */ _t32 = cpu->r[12] + 0x000001FCu;
|
|
/* 0276E5EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0276E5F0 */ cpu->ctr = cpu->r[6];
|
|
/* 0276E5F4 */ cpu->r[4] = cpu->r[1] + 0x000000D8u;
|
|
/* 0276E5F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E5FC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E600 */ cpu->r[4] = cpu->r[1] + 0x000000D8u;
|
|
/* 0276E604 */ Gambit_fn_029807A8(cpu);
|
|
/* 0276E608 */ cpu->r[28] = cpu->r[3];
|
|
/* 0276E60C */ /* nop */
|
|
/* 0276E610 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E614 */ cpu->r[4] = cpu->r[29];
|
|
/* 0276E618 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276E61C */ _t33 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276E61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0276E620 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0276E624 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276E628 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E628 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0276E628 */ if (_t35) goto L_0276E62C; else goto L_0276E638;
|
|
L_0276E62C: ; // 0x276e62c
|
|
/* 0276E62C */ _t36 = cpu->r[31] + 0x00000024u;
|
|
/* 0276E62C */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0276E630 */ cpu->r[7] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E634 */ _t37 = cpu->r[7] + cpu->r[8];
|
|
/* 0276E634 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
L_0276E638: ; // 0x276e638
|
|
/* 0276E638 */ _t38 = cpu->r[6] + 0x00000000u;
|
|
/* 0276E638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0276E63C */ _t39 = cpu->r[3] + 0x00000088u;
|
|
/* 0276E63C */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0276E640 */ _t40 = cpu->r[10] + 0x00000074u;
|
|
/* 0276E640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0276E644 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E648 */ /* nop */
|
|
/* 0276E64C */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 0276E650 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E654 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E658 */ Gambit_fn_0276E524(cpu);
|
|
/* 0276E65C */ cpu->r[11] = 0x10100000u;
|
|
/* 0276E660 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0276E664 */ _t41 = cpu->r[11] + 0x000016D8u;
|
|
/* 0276E664 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0276E668 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 0276E66C */ cpu->f[9] = cpu->f[1] * cpu->f[13];
|
|
/* 0276E670 */ /* nop */
|
|
/* 0276E674 */ _t42 = cpu->r[10] + 0x00000008u;
|
|
/* 0276E674 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0276E678 */ /* nop */
|
|
/* 0276E67C */ /* nop */
|
|
/* 0276E680 */ _t43 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0276E680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0276E684 */ cpu->f[10] = cpu->f[11] * cpu->f[9];
|
|
/* 0276E688 */ _t44 = cpu->r[1] + 0x00000040u;
|
|
/* 0276E688 */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0276E68C */ _t45 = cpu->r[1] + 0x00000104u;
|
|
/* 0276E68C */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 0276E690 */ cpu->r[4] = cpu->r[1] + 0x00000104u;
|
|
/* 0276E694 */ _t46 = cpu->r[1] + 0x00000044u;
|
|
/* 0276E694 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[10]);
|
|
/* 0276E698 */ _t47 = cpu->r[1] + 0x00000044u;
|
|
/* 0276E698 */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0276E69C */ cpu->r[3] = cpu->r[1] + 0x00000110u;
|
|
/* 0276E6A0 */ _t48 = cpu->r[1] + 0x00000108u;
|
|
/* 0276E6A0 */ rbrew_write32(cpu->mem, _t48, cpu->r[7]);
|
|
/* 0276E6A4 */ cpu->r[5] = cpu->r[30] + 0x00000074u;
|
|
/* 0276E6A8 */ _t49 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0276E6A8 */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 0276E6AC */ Gambit_fn_023D860C(cpu);
|
|
/* 0276E6B0 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 0276E6B4 */ cpu->r[4] = cpu->r[1] + 0x00000110u;
|
|
/* 0276E6B8 */ cpu->r[5] = cpu->r[3];
|
|
/* 0276E6BC */ Gambit_fn_02C69544(cpu);
|
|
/* 0276E6C0 */ _t50 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0276E6C0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0276E6C4 */ _t51 = cpu->r[1] + 0x00000058u;
|
|
/* 0276E6C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0276E6C8 */ _t52 = cpu->r[1] + 0x00000064u;
|
|
/* 0276E6C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0276E6CC */ _t53 = cpu->r[30] + 0x00000068u;
|
|
/* 0276E6CC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[10]);
|
|
/* 0276E6D0 */ _t54 = cpu->r[30] + 0x00000060u;
|
|
/* 0276E6D0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[13]);
|
|
/* 0276E6D4 */ _t55 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0276E6D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0276E6D8 */ _t56 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0276E6D8 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[9]);
|
|
/* 0276E6DC */ _t57 = cpu->r[1] + 0x00000054u;
|
|
/* 0276E6DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0276E6E0 */ _t58 = cpu->r[1] + 0x00000050u;
|
|
/* 0276E6E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0276E6E4 */ _t59 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0276E6E4 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 0276E6E8 */ _t60 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E6E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0276E6EC */ _t61 = cpu->r[1] + 0x00000074u;
|
|
/* 0276E6EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0276E6F0 */ _t62 = cpu->r[1] + 0x00000068u;
|
|
/* 0276E6F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0276E6F4 */ _t63 = cpu->r[30] + 0x00000050u;
|
|
/* 0276E6F4 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[9]);
|
|
/* 0276E6F8 */ _t64 = cpu->r[1] + 0x00000078u;
|
|
/* 0276E6F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0276E6FC */ _t65 = cpu->r[30] + 0x00000074u;
|
|
/* 0276E6FC */ rbrew_write_f32(cpu->mem, _t65, cpu->f[10]);
|
|
/* 0276E700 */ _t66 = cpu->r[1] + 0x00000060u;
|
|
/* 0276E700 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0276E704 */ _t67 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0276E704 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0276E708 */ _t68 = cpu->r[30] + 0x00000054u;
|
|
/* 0276E708 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[10]);
|
|
/* 0276E70C */ _t69 = cpu->r[30] + 0x00000078u;
|
|
/* 0276E70C */ rbrew_write_f32(cpu->mem, _t69, cpu->f[13]);
|
|
/* 0276E710 */ _t70 = cpu->r[30] + 0x00000064u;
|
|
/* 0276E710 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[11]);
|
|
/* 0276E714 */ _t71 = cpu->r[1] + 0x00000070u;
|
|
/* 0276E714 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0276E718 */ _t72 = cpu->r[30] + 0x00000070u;
|
|
/* 0276E718 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 0276E71C */ _t73 = cpu->r[30] + 0x00000058u;
|
|
/* 0276E71C */ rbrew_write_f32(cpu->mem, _t73, cpu->f[11]);
|
|
/* 0276E720 */ _t74 = cpu->r[30] + 0x0000006Cu;
|
|
/* 0276E720 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[12]);
|
|
/* 0276E724 */ _t75 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0276E724 */ cpu->r[9] = rbrew_read8(cpu->mem, _t75);
|
|
/* 0276E728 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 0276E72C */ cpu->r[9] = cpu->r[9] | 0x00000001u;
|
|
/* 0276E730 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 0276E734 */ _t76 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0276E734 */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[9]);
|
|
/* 0276E738 */ Gambit_fn_02C69510(cpu);
|
|
/* 0276E73C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E740 */ Gambit_fn_02980378(cpu);
|
|
/* 0276E744 */ _t77 = cpu->r[30] + 0x000002C4u;
|
|
/* 0276E744 */ cpu->r[0] = rbrew_read8(cpu->mem, _t77);
|
|
/* 0276E748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E74C */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E74C */ _t79 = _t78 & 0x00000001u;
|
|
/* 0276E74C */ if (_t79) goto L_0276E750; else goto L_0276E75C;
|
|
L_0276E750: ; // 0x276e750
|
|
/* 0276E750 */ _t80 = cpu->r[30] + 0x000002D8u;
|
|
/* 0276E750 */ cpu->r[9] = rbrew_read8(cpu->mem, _t80);
|
|
/* 0276E754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276E758 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E758 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0276E758 */ if (_t82) goto L_0276EA80; else goto L_0276E75C;
|
|
L_0276E75C: ; // 0x276e75c
|
|
/* 0276E75C */ cpu->r[8] = 0x10100000u;
|
|
/* 0276E760 */ _t83 = cpu->r[30] + 0x000002BCu;
|
|
/* 0276E760 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 0276E764 */ _t84 = cpu->r[8] + 0x00001608u;
|
|
/* 0276E764 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0276E768 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0276E76C */ _t85 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276E76C */ _t86 = _t85 & 0x00000001u;
|
|
/* 0276E76C */ if (_t86) goto L_0276E770; else goto L_0276EA80;
|
|
L_0276E770: ; // 0x276e770
|
|
/* 0276E770 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276E774 */ _t87 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E774 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 0276E778 */ _t88 = cpu->r[10] + 0x000016DCu;
|
|
/* 0276E778 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0276E77C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 0276E780 */ _t89 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E780 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0276E780 */ if (_t90) goto L_0276E784; else goto L_0276EA80;
|
|
L_0276E784: ; // 0x276e784
|
|
/* 0276E784 */ cpu->f[12] = cpu->f[7] + cpu->f[13];
|
|
/* 0276E788 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 0276E78C */ _t91 = cpu->r[30] + 0x000002C4u;
|
|
/* 0276E78C */ cpu->r[10] = rbrew_read8(cpu->mem, _t91);
|
|
/* 0276E790 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E790 */ _t93 = _t92 & 0x00000001u;
|
|
/* 0276E790 */ if (_t93) goto L_0276E794; else goto L_0276E7A4;
|
|
L_0276E794: ; // 0x276e794
|
|
/* 0276E794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276E798 */ _t94 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E798 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[0]);
|
|
/* 0276E79C */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E79C */ _t96 = _t95 & 0x00000001u;
|
|
/* 0276E79C */ if (_t96) goto L_0276E958; else goto L_0276E7A0;
|
|
L_0276E7A0: ; // 0x276e7a0
|
|
/* 0276E7A0 */ goto L_0276E7BC;
|
|
L_0276E7A4: ; // 0x276e7a4
|
|
/* 0276E7A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0276E7A8 */ _t97 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276E7A8 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0276E7A8 */ if (_t98) goto L_0276E7AC; else goto L_0276E7B0;
|
|
L_0276E7AC: ; // 0x276e7ac
|
|
/* 0276E7AC */ cpu->f[12] = cpu->f[31];
|
|
L_0276E7B0: ; // 0x276e7b0
|
|
/* 0276E7B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276E7B4 */ _t99 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E7B4 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[12]);
|
|
/* 0276E7B8 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E7B8 */ _t101 = _t100 & 0x00000001u;
|
|
/* 0276E7B8 */ if (_t101) goto L_0276E958; else goto L_0276E7BC;
|
|
L_0276E7BC: ; // 0x276e7bc
|
|
/* 0276E7BC */ _t102 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E7BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0276E7C0 */ _t103 = cpu->r[30] + 0x000002A0u;
|
|
/* 0276E7C0 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t103);
|
|
/* 0276E7C4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276E7C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276E7CC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276E7D0 */ _t104 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0276E7D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0276E7D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0276E7D8 */ cpu->r[7] = 0x00000000u;
|
|
/* 0276E7DC */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E7DC */ _t106 = _t105 & 0x00000001u;
|
|
/* 0276E7DC */ if (_t106) goto L_0276E7E0; else goto L_0276E7EC;
|
|
L_0276E7E0: ; // 0x276e7e0
|
|
/* 0276E7E0 */ _t107 = cpu->r[29] + 0x00000024u;
|
|
/* 0276E7E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0276E7E4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E7E8 */ _t108 = cpu->r[12] + cpu->r[6];
|
|
/* 0276E7E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t108);
|
|
L_0276E7EC: ; // 0x276e7ec
|
|
/* 0276E7EC */ _t109 = cpu->r[7] + 0x00000000u;
|
|
/* 0276E7EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0276E7F0 */ _t110 = cpu->r[3] + 0x00000088u;
|
|
/* 0276E7F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0276E7F4 */ _t111 = cpu->r[7] + 0x0000016Cu;
|
|
/* 0276E7F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0276E7F8 */ _t112 = cpu->r[30] + 0x000002A4u;
|
|
/* 0276E7F8 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t112);
|
|
/* 0276E7FC */ cpu->ctr = cpu->r[0];
|
|
/* 0276E800 */ _t113 = cpu->r[30] + 0x000002A2u;
|
|
/* 0276E800 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t113);
|
|
/* 0276E804 */ cpu->r[7] = cpu->r[1] + 0x00000020u;
|
|
/* 0276E808 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E80C */ cpu->r[8] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E810 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E814 */ _t114 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E814 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 0276E818 */ /* nop */
|
|
/* 0276E81C */ /* nop */
|
|
/* 0276E820 */ /* nop */
|
|
/* 0276E824 */ _t115 = cpu->r[30] + 0x000002B0u;
|
|
/* 0276E824 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0276E828 */ /* nop */
|
|
/* 0276E82C */ _t116 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E82C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0276E830 */ cpu->f[8] = cpu->f[31] - cpu->f[7];
|
|
/* 0276E834 */ /* nop */
|
|
/* 0276E838 */ _t117 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0276E838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0276E83C */ /* nop */
|
|
/* 0276E840 */ _t118 = cpu->r[1] + 0x00000088u;
|
|
/* 0276E840 */ cpu->r[10] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0276E844 */ /* nop */
|
|
/* 0276E848 */ _t119 = cpu->r[1] + 0x00000084u;
|
|
/* 0276E848 */ cpu->r[7] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0276E84C */ _t120 = cpu->r[1] + 0x00000030u;
|
|
/* 0276E84C */ rbrew_write32(cpu->mem, _t120, cpu->r[0]);
|
|
/* 0276E850 */ _t121 = cpu->r[1] + 0x00000080u;
|
|
/* 0276E850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0276E854 */ _t122 = cpu->r[1] + 0x00000038u;
|
|
/* 0276E854 */ rbrew_write32(cpu->mem, _t122, cpu->r[7]);
|
|
/* 0276E858 */ /* nop */
|
|
/* 0276E85C */ _t123 = cpu->r[1] + 0x00000034u;
|
|
/* 0276E85C */ rbrew_write32(cpu->mem, _t123, cpu->r[0]);
|
|
/* 0276E860 */ /* nop */
|
|
/* 0276E864 */ _t124 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276E864 */ rbrew_write32(cpu->mem, _t124, cpu->r[10]);
|
|
/* 0276E868 */ /* nop */
|
|
/* 0276E86C */ /* nop */
|
|
/* 0276E870 */ _t125 = cpu->r[1] + 0x00000098u;
|
|
/* 0276E870 */ cpu->r[6] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0276E874 */ /* nop */
|
|
/* 0276E878 */ cpu->f[9] = cpu->f[11] * cpu->f[7];
|
|
/* 0276E87C */ /* nop */
|
|
/* 0276E880 */ _t126 = cpu->r[1] + 0x00000090u;
|
|
/* 0276E880 */ cpu->r[8] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0276E884 */ /* nop */
|
|
/* 0276E888 */ cpu->f[30] = fma(cpu->f[13], cpu->f[8], cpu->f[9]);
|
|
/* 0276E88C */ _t127 = cpu->r[30] + 0x000002A0u;
|
|
/* 0276E88C */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t127);
|
|
/* 0276E890 */ _t128 = cpu->r[1] + 0x00000034u;
|
|
/* 0276E890 */ rbrew_write32(cpu->mem, _t128, cpu->r[6]);
|
|
/* 0276E894 */ /* nop */
|
|
/* 0276E898 */ _t129 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E898 */ rbrew_write32(cpu->mem, _t129, cpu->r[8]);
|
|
/* 0276E89C */ /* nop */
|
|
/* 0276E8A0 */ _t130 = cpu->r[1] + 0x000000A0u;
|
|
/* 0276E8A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0276E8A4 */ _t131 = cpu->r[1] + 0x00000094u;
|
|
/* 0276E8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0276E8A8 */ _t132 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E8A8 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[30]);
|
|
/* 0276E8AC */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E8AC */ rbrew_write32(cpu->mem, _t133, cpu->r[0]);
|
|
/* 0276E8B0 */ _t134 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E8B0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0276E8B4 */ _t135 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E8B4 */ rbrew_write32(cpu->mem, _t135, cpu->r[9]);
|
|
/* 0276E8B8 */ _t136 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0276E8B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0276E8BC */ _t137 = cpu->r[1] + 0x000000A4u;
|
|
/* 0276E8BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0276E8C0 */ _t138 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E8C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0276E8C4 */ _t139 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E8C4 */ rbrew_write32(cpu->mem, _t139, cpu->r[0]);
|
|
/* 0276E8C8 */ /* nop */
|
|
/* 0276E8CC */ _t140 = cpu->r[1] + 0x00000038u;
|
|
/* 0276E8CC */ rbrew_write32(cpu->mem, _t140, cpu->r[11]);
|
|
/* 0276E8D0 */ /* nop */
|
|
/* 0276E8D4 */ _t141 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E8D4 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[9]);
|
|
/* 0276E8D8 */ /* nop */
|
|
/* 0276E8DC */ _t142 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E8DC */ rbrew_write_f32(cpu->mem, _t142, cpu->f[0]);
|
|
/* 0276E8E0 */ /* nop */
|
|
/* 0276E8E4 */ _t143 = cpu->r[1] + 0x000000A8u;
|
|
/* 0276E8E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0276E8E8 */ _t144 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E8E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0276E8EC */ _t145 = cpu->r[1] + 0x000000ACu;
|
|
/* 0276E8EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0276E8F0 */ _t146 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276E8F0 */ rbrew_write32(cpu->mem, _t146, cpu->r[0]);
|
|
/* 0276E8F4 */ _t147 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276E8F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 0276E8F8 */ _t148 = cpu->r[1] + 0x00000030u;
|
|
/* 0276E8F8 */ rbrew_write32(cpu->mem, _t148, cpu->r[6]);
|
|
/* 0276E8FC */ _t149 = cpu->r[1] + 0x00000030u;
|
|
/* 0276E8FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 0276E900 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276E904 */ _t150 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E904 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[12]);
|
|
/* 0276E908 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276E90C */ _t151 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E90C */ rbrew_write_f32(cpu->mem, _t151, cpu->f[11]);
|
|
/* 0276E910 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276E914 */ _t152 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0276E914 */ cpu->r[8] = rbrew_read32(cpu->mem, _t152);
|
|
/* 0276E918 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 0276E91C */ cpu->r[7] = 0x00000000u;
|
|
/* 0276E920 */ _t153 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E920 */ _t154 = _t153 & 0x00000001u;
|
|
/* 0276E920 */ if (_t154) goto L_0276E924; else goto L_0276E930;
|
|
L_0276E924: ; // 0x276e924
|
|
/* 0276E924 */ _t155 = cpu->r[29] + 0x00000024u;
|
|
/* 0276E924 */ cpu->r[10] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0276E928 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E92C */ _t156 = cpu->r[9] + cpu->r[10];
|
|
/* 0276E92C */ cpu->r[7] = rbrew_read32(cpu->mem, _t156);
|
|
L_0276E930: ; // 0x276e930
|
|
/* 0276E930 */ _t157 = cpu->r[7] + 0x00000000u;
|
|
/* 0276E930 */ cpu->r[3] = rbrew_read32(cpu->mem, _t157);
|
|
/* 0276E934 */ _t158 = cpu->r[3] + 0x00000088u;
|
|
/* 0276E934 */ cpu->r[11] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0276E938 */ _t159 = cpu->r[11] + 0x00000174u;
|
|
/* 0276E938 */ cpu->r[12] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0276E93C */ cpu->f[1] = cpu->f[30];
|
|
/* 0276E940 */ _t160 = cpu->r[30] + 0x000002A2u;
|
|
/* 0276E940 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t160);
|
|
/* 0276E944 */ cpu->ctr = cpu->r[12];
|
|
/* 0276E948 */ _t161 = cpu->r[30] + 0x000002A4u;
|
|
/* 0276E948 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t161);
|
|
/* 0276E94C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E950 */ cpu->r[7] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E954 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276E958: ; // 0x276e958
|
|
/* 0276E958 */ _t162 = cpu->r[30] + 0x000002D8u;
|
|
/* 0276E958 */ cpu->r[0] = rbrew_read8(cpu->mem, _t162);
|
|
/* 0276E95C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E960 */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E960 */ _t164 = _t163 & 0x00000001u;
|
|
/* 0276E960 */ if (_t164) goto L_0276EA80; else goto L_0276E964;
|
|
L_0276E964: ; // 0x276e964
|
|
/* 0276E964 */ _t165 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E964 */ cpu->r[29] = rbrew_read32(cpu->mem, _t165);
|
|
/* 0276E968 */ _t166 = cpu->r[30] + 0x000002C8u;
|
|
/* 0276E968 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t166);
|
|
/* 0276E96C */ cpu->r[3] = cpu->r[29];
|
|
/* 0276E970 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276E974 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276E978 */ _t167 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0276E978 */ cpu->r[6] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0276E97C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[6]);
|
|
/* 0276E980 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276E984 */ _t168 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E984 */ _t169 = _t168 & 0x00000001u;
|
|
/* 0276E984 */ if (_t169) goto L_0276E988; else goto L_0276E994;
|
|
L_0276E988: ; // 0x276e988
|
|
/* 0276E988 */ _t170 = cpu->r[29] + 0x00000024u;
|
|
/* 0276E988 */ cpu->r[8] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0276E98C */ cpu->r[7] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E990 */ _t171 = cpu->r[7] + cpu->r[8];
|
|
/* 0276E990 */ cpu->r[12] = rbrew_read32(cpu->mem, _t171);
|
|
L_0276E994: ; // 0x276e994
|
|
/* 0276E994 */ _t172 = cpu->r[12] + 0x00000000u;
|
|
/* 0276E994 */ cpu->r[3] = rbrew_read32(cpu->mem, _t172);
|
|
/* 0276E998 */ _t173 = cpu->r[3] + 0x00000088u;
|
|
/* 0276E998 */ cpu->r[9] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0276E99C */ _t174 = cpu->r[9] + 0x0000011Cu;
|
|
/* 0276E99C */ cpu->r[0] = rbrew_read32(cpu->mem, _t174);
|
|
/* 0276E9A0 */ _t175 = cpu->r[30] + 0x000002CCu;
|
|
/* 0276E9A0 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t175);
|
|
/* 0276E9A4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E9A8 */ _t176 = cpu->r[30] + 0x000002CAu;
|
|
/* 0276E9A8 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t176);
|
|
/* 0276E9AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E9B0 */ _t177 = cpu->r[3] + 0x00000000u;
|
|
/* 0276E9B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0276E9B4 */ _t178 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E9B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 0276E9B8 */ _t179 = cpu->r[1] + 0x00000018u;
|
|
/* 0276E9B8 */ rbrew_write32(cpu->mem, _t179, cpu->r[12]);
|
|
/* 0276E9BC */ _t180 = cpu->r[3] + 0x00000004u;
|
|
/* 0276E9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t180);
|
|
/* 0276E9C0 */ cpu->f[12] = cpu->f[31] - cpu->f[7];
|
|
/* 0276E9C4 */ /* nop */
|
|
/* 0276E9C8 */ _t181 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E9C8 */ rbrew_write32(cpu->mem, _t181, cpu->r[0]);
|
|
/* 0276E9CC */ /* nop */
|
|
/* 0276E9D0 */ /* nop */
|
|
/* 0276E9D4 */ /* nop */
|
|
/* 0276E9D8 */ /* nop */
|
|
/* 0276E9DC */ _t182 = cpu->r[1] + 0x000000C0u;
|
|
/* 0276E9DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t182);
|
|
/* 0276E9E0 */ /* nop */
|
|
/* 0276E9E4 */ _t183 = cpu->r[1] + 0x000000C8u;
|
|
/* 0276E9E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0276E9E8 */ _t184 = cpu->r[1] + 0x000000CCu;
|
|
/* 0276E9E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0276E9EC */ _t185 = cpu->r[1] + 0x000000B8u;
|
|
/* 0276E9EC */ rbrew_write32(cpu->mem, _t185, cpu->r[0]);
|
|
/* 0276E9F0 */ _t186 = cpu->r[1] + 0x000000BCu;
|
|
/* 0276E9F0 */ rbrew_write32(cpu->mem, _t186, cpu->r[11]);
|
|
/* 0276E9F4 */ /* nop */
|
|
/* 0276E9F8 */ _t187 = cpu->r[1] + 0x000000C4u;
|
|
/* 0276E9F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0276E9FC */ _t188 = cpu->r[1] + 0x000000B0u;
|
|
/* 0276E9FC */ rbrew_write32(cpu->mem, _t188, cpu->r[9]);
|
|
/* 0276EA00 */ _t189 = cpu->r[1] + 0x000000B4u;
|
|
/* 0276EA00 */ rbrew_write32(cpu->mem, _t189, cpu->r[10]);
|
|
/* 0276EA04 */ /* nop */
|
|
/* 0276EA08 */ _t190 = cpu->r[30] + 0x00000008u;
|
|
/* 0276EA08 */ cpu->r[29] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0276EA0C */ /* nop */
|
|
/* 0276EA10 */ /* nop */
|
|
/* 0276EA14 */ _t191 = cpu->r[1] + 0x000000D0u;
|
|
/* 0276EA14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0276EA18 */ _t192 = cpu->r[1] + 0x000000D4u;
|
|
/* 0276EA18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0276EA1C */ _t193 = cpu->r[1] + 0x00000048u;
|
|
/* 0276EA1C */ rbrew_write32(cpu->mem, _t193, cpu->r[8]);
|
|
/* 0276EA20 */ _t194 = cpu->r[1] + 0x00000048u;
|
|
/* 0276EA20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 0276EA24 */ _t195 = cpu->r[30] + 0x000002C8u;
|
|
/* 0276EA24 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t195);
|
|
/* 0276EA28 */ _t196 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276EA28 */ rbrew_write32(cpu->mem, _t196, cpu->r[0]);
|
|
/* 0276EA2C */ _t197 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276EA2C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 0276EA30 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276EA34 */ _t198 = cpu->r[1] + 0x00000018u;
|
|
/* 0276EA34 */ rbrew_write_f32(cpu->mem, _t198, cpu->f[0]);
|
|
/* 0276EA38 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276EA3C */ _t199 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276EA3C */ rbrew_write_f32(cpu->mem, _t199, cpu->f[9]);
|
|
/* 0276EA40 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276EA44 */ _t200 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0276EA44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t200);
|
|
/* 0276EA48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0276EA4C */ cpu->r[11] = 0x00000000u;
|
|
/* 0276EA50 */ _t201 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276EA50 */ _t202 = _t201 & 0x00000001u;
|
|
/* 0276EA50 */ if (_t202) goto L_0276EA54; else goto L_0276EA60;
|
|
L_0276EA54: ; // 0x276ea54
|
|
/* 0276EA54 */ _t203 = cpu->r[29] + 0x00000024u;
|
|
/* 0276EA54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0276EA58 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276EA5C */ _t204 = cpu->r[12] + cpu->r[0];
|
|
/* 0276EA5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t204);
|
|
L_0276EA60: ; // 0x276ea60
|
|
/* 0276EA60 */ _t205 = cpu->r[11] + 0x00000000u;
|
|
/* 0276EA60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0276EA64 */ _t206 = cpu->r[3] + 0x00000088u;
|
|
/* 0276EA64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t206);
|
|
/* 0276EA68 */ _t207 = cpu->r[10] + 0x00000124u;
|
|
/* 0276EA68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t207);
|
|
/* 0276EA6C */ _t208 = cpu->r[30] + 0x000002CAu;
|
|
/* 0276EA6C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t208);
|
|
/* 0276EA70 */ cpu->ctr = cpu->r[0];
|
|
/* 0276EA74 */ _t209 = cpu->r[30] + 0x000002CCu;
|
|
/* 0276EA74 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t209);
|
|
/* 0276EA78 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 0276EA7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276EA80: ; // 0x276ea80
|
|
/* 0276EA80 */ _t210 = cpu->r[1] + 0x00000140u;
|
|
/* 0276EA80 */ cpu->r[28] = rbrew_read32(cpu->mem, _t210);
|
|
/* 0276EA84 */ _t211 = cpu->r[1] + 0x00000144u;
|
|
/* 0276EA84 */ cpu->r[29] = rbrew_read32(cpu->mem, _t211);
|
|
/* 0276EA88 */ _t212 = cpu->r[1] + 0x00000168u;
|
|
/* 0276EA88 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t212);
|
|
/* 0276EA8C */ _t213 = cpu->r[1] + 0x00000158u;
|
|
/* 0276EA8C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t213);
|
|
/* 0276EA90 */ _t214 = cpu->r[1] + 0x00000160u;
|
|
/* 0276EA90 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t214);
|
|
/* 0276EA94 */ _t215 = cpu->r[1] + 0x00000150u;
|
|
/* 0276EA94 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t215);
|
|
/* 0276EA98 */ _t216 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0276EA98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t216);
|
|
/* 0276EA9C */ _t217 = cpu->r[1] + 0x00000148u;
|
|
/* 0276EA9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t217);
|
|
/* 0276EAA0 */ _t218 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276EAA0 */ _t219 = _t218 & 0x00000001u;
|
|
/* 0276EAA0 */ if (_t219) goto L_0276EAA4; // else: addr-0 trap, fall-through
|
|
L_0276EAA4: ; // 0x276eaa4
|
|
/* 0276EAA4 */ _t220 = cpu->r[1] + 0x00000174u;
|
|
/* 0276EAA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t220);
|
|
/* 0276EAA8 */ cpu->lr = cpu->r[0];
|
|
/* 0276EAAC */ cpu->r[1] = cpu->r[1] + 0x00000170u;
|
|
/* 0276EAB0 */ return;
|
|
}
|
|
|
|
// fn_0276E534 @ 0x276e534
|
|
void Gambit_fn_0276E534(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_0276E534: ; // 0x276e534
|
|
/* 0276E534 */ _t0 = cpu->r[1] + 0xFFFFFE90u;
|
|
/* 0276E534 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276E534 */ cpu->r[1] = _t0;
|
|
/* 0276E538 */ _t1 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0276E538 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276E53C */ _t2 = cpu->r[1] + 0x00000140u;
|
|
/* 0276E53C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0276E540 */ _t3 = cpu->r[1] + 0x00000150u;
|
|
/* 0276E540 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0276E544 */ _t4 = cpu->r[1] + 0x00000160u;
|
|
/* 0276E544 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0276E548 */ /* nop */
|
|
/* 0276E54C */ _t5 = cpu->r[1] + 0x00000148u;
|
|
/* 0276E54C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0276E550 */ _t6 = cpu->r[1] + 0x00000174u;
|
|
/* 0276E550 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0276E554 */ /* nop */
|
|
/* 0276E558 */ _t7 = cpu->r[1] + 0x00000158u;
|
|
/* 0276E558 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 0276E55C */ _t8 = cpu->r[1] + 0x00000168u;
|
|
/* 0276E55C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 0276E560 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276E564 */ _t9 = cpu->r[1] + 0x00000144u;
|
|
/* 0276E564 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0276E568 */ _t10 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276E56C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E570 */ cpu->r[31] = cpu->r[4];
|
|
/* 0276E574 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E574 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276E574 */ if (_t12) goto L_0276EA80; else goto L_0276E578;
|
|
L_0276E578: ; // 0x276e578
|
|
/* 0276E578 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E57C */ Gambit_fn_0276E504(cpu);
|
|
/* 0276E580 */ cpu->r[10] = 0x00000003u;
|
|
/* 0276E584 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0276E588 */ cpu->r[9] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276E58C */ cpu->ctr = cpu->r[10];
|
|
/* 0276E590 */ cpu->r[11] = cpu->r[11] + 0x00005E2Cu;
|
|
L_0276E594: ; // 0x276e594
|
|
/* 0276E594 */ _t13 = cpu->r[11] + 0x00000004u;
|
|
/* 0276E594 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276E598 */ _t14 = cpu->r[9] + 0x00000004u;
|
|
/* 0276E598 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0276E59C */ _t15 = cpu->r[11] + 0x00000008u;
|
|
/* 0276E59C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276E5A0 */ _t16 = cpu->r[9] + 0x00000008u;
|
|
/* 0276E5A0 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0276E5A4 */ _t17 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0276E5A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276E5A8 */ _t18 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0276E5A8 */ rbrew_write32(cpu->mem, _t18, cpu->r[6]);
|
|
/* 0276E5AC */ _t19 = cpu->r[11] + 0x00000010u;
|
|
/* 0276E5AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276E5AC */ cpu->r[11] = _t19;
|
|
/* 0276E5B0 */ _t20 = cpu->r[9] + 0x00000010u;
|
|
/* 0276E5B0 */ rbrew_write32(cpu->mem, _t20, cpu->r[7]);
|
|
/* 0276E5B0 */ cpu->r[9] = _t20;
|
|
/* 0276E5B4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0276E5B4 */ _t21 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0276E5B4 */ _t22 = _t21 >> (0x00000002u & 31u);
|
|
/* 0276E5B4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0276E5B4 */ if (_t23) goto L_0276E594; else goto L_0276E5B8;
|
|
L_0276E5B8: ; // 0x276e5b8
|
|
/* 0276E5B8 */ cpu->r[0] = cpu->r[1] + 0x000000E4u;
|
|
/* 0276E5BC */ cpu->r[11] = 0x00000020u;
|
|
/* 0276E5C0 */ _t24 = cpu->r[1] + 0x000000D8u;
|
|
/* 0276E5C0 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0276E5C4 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276E5C8 */ cpu->r[12] = 0x10110000u;
|
|
/* 0276E5CC */ _t25 = cpu->r[1] + 0x000000E0u;
|
|
/* 0276E5CC */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 0276E5D0 */ cpu->r[0] = cpu->r[0] + 0x00001300u;
|
|
/* 0276E5D4 */ _t26 = cpu->r[12] + 0x00007399u;
|
|
/* 0276E5D4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0276E5D8 */ _t27 = cpu->r[1] + 0x000000DCu;
|
|
/* 0276E5D8 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0276E5DC */ _t28 = cpu->r[30] + 0x00000204u;
|
|
/* 0276E5DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276E5E0 */ _t29 = cpu->r[1] + 0x00000103u;
|
|
/* 0276E5E0 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[12]);
|
|
/* 0276E5E4 */ _t30 = cpu->r[1] + 0x000000E4u;
|
|
/* 0276E5E4 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[12]);
|
|
/* 0276E5E8 */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 0276E5E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0276E5EC */ _t32 = cpu->r[12] + 0x000001FCu;
|
|
/* 0276E5EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0276E5F0 */ cpu->ctr = cpu->r[6];
|
|
/* 0276E5F4 */ cpu->r[4] = cpu->r[1] + 0x000000D8u;
|
|
/* 0276E5F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E5FC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E600 */ cpu->r[4] = cpu->r[1] + 0x000000D8u;
|
|
/* 0276E604 */ Gambit_fn_029807A8(cpu);
|
|
/* 0276E608 */ cpu->r[28] = cpu->r[3];
|
|
/* 0276E60C */ /* nop */
|
|
/* 0276E610 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E614 */ cpu->r[4] = cpu->r[29];
|
|
/* 0276E618 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276E61C */ _t33 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0276E61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0276E620 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 0276E624 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276E628 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E628 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0276E628 */ if (_t35) goto L_0276E62C; else goto L_0276E638;
|
|
L_0276E62C: ; // 0x276e62c
|
|
/* 0276E62C */ _t36 = cpu->r[31] + 0x00000024u;
|
|
/* 0276E62C */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0276E630 */ cpu->r[7] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E634 */ _t37 = cpu->r[7] + cpu->r[8];
|
|
/* 0276E634 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
L_0276E638: ; // 0x276e638
|
|
/* 0276E638 */ _t38 = cpu->r[6] + 0x00000000u;
|
|
/* 0276E638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0276E63C */ _t39 = cpu->r[3] + 0x00000088u;
|
|
/* 0276E63C */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0276E640 */ _t40 = cpu->r[10] + 0x00000074u;
|
|
/* 0276E640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0276E644 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E648 */ /* nop */
|
|
/* 0276E64C */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 0276E650 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E654 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276E658 */ Gambit_fn_0276E524(cpu);
|
|
/* 0276E65C */ cpu->r[11] = 0x10100000u;
|
|
/* 0276E660 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0276E664 */ _t41 = cpu->r[11] + 0x000016D8u;
|
|
/* 0276E664 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0276E668 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 0276E66C */ cpu->f[9] = cpu->f[1] * cpu->f[13];
|
|
/* 0276E670 */ /* nop */
|
|
/* 0276E674 */ _t42 = cpu->r[10] + 0x00000008u;
|
|
/* 0276E674 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0276E678 */ /* nop */
|
|
/* 0276E67C */ /* nop */
|
|
/* 0276E680 */ _t43 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0276E680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0276E684 */ cpu->f[10] = cpu->f[11] * cpu->f[9];
|
|
/* 0276E688 */ _t44 = cpu->r[1] + 0x00000040u;
|
|
/* 0276E688 */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0276E68C */ _t45 = cpu->r[1] + 0x00000104u;
|
|
/* 0276E68C */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 0276E690 */ cpu->r[4] = cpu->r[1] + 0x00000104u;
|
|
/* 0276E694 */ _t46 = cpu->r[1] + 0x00000044u;
|
|
/* 0276E694 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[10]);
|
|
/* 0276E698 */ _t47 = cpu->r[1] + 0x00000044u;
|
|
/* 0276E698 */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0276E69C */ cpu->r[3] = cpu->r[1] + 0x00000110u;
|
|
/* 0276E6A0 */ _t48 = cpu->r[1] + 0x00000108u;
|
|
/* 0276E6A0 */ rbrew_write32(cpu->mem, _t48, cpu->r[7]);
|
|
/* 0276E6A4 */ cpu->r[5] = cpu->r[30] + 0x00000074u;
|
|
/* 0276E6A8 */ _t49 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0276E6A8 */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 0276E6AC */ Gambit_fn_023D860C(cpu);
|
|
/* 0276E6B0 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 0276E6B4 */ cpu->r[4] = cpu->r[1] + 0x00000110u;
|
|
/* 0276E6B8 */ cpu->r[5] = cpu->r[3];
|
|
/* 0276E6BC */ Gambit_fn_02C69544(cpu);
|
|
/* 0276E6C0 */ _t50 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0276E6C0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0276E6C4 */ _t51 = cpu->r[1] + 0x00000058u;
|
|
/* 0276E6C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0276E6C8 */ _t52 = cpu->r[1] + 0x00000064u;
|
|
/* 0276E6C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0276E6CC */ _t53 = cpu->r[30] + 0x00000068u;
|
|
/* 0276E6CC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[10]);
|
|
/* 0276E6D0 */ _t54 = cpu->r[30] + 0x00000060u;
|
|
/* 0276E6D0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[13]);
|
|
/* 0276E6D4 */ _t55 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0276E6D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0276E6D8 */ _t56 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0276E6D8 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[9]);
|
|
/* 0276E6DC */ _t57 = cpu->r[1] + 0x00000054u;
|
|
/* 0276E6DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0276E6E0 */ _t58 = cpu->r[1] + 0x00000050u;
|
|
/* 0276E6E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0276E6E4 */ _t59 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0276E6E4 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 0276E6E8 */ _t60 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E6E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0276E6EC */ _t61 = cpu->r[1] + 0x00000074u;
|
|
/* 0276E6EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0276E6F0 */ _t62 = cpu->r[1] + 0x00000068u;
|
|
/* 0276E6F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0276E6F4 */ _t63 = cpu->r[30] + 0x00000050u;
|
|
/* 0276E6F4 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[9]);
|
|
/* 0276E6F8 */ _t64 = cpu->r[1] + 0x00000078u;
|
|
/* 0276E6F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0276E6FC */ _t65 = cpu->r[30] + 0x00000074u;
|
|
/* 0276E6FC */ rbrew_write_f32(cpu->mem, _t65, cpu->f[10]);
|
|
/* 0276E700 */ _t66 = cpu->r[1] + 0x00000060u;
|
|
/* 0276E700 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0276E704 */ _t67 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0276E704 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0276E708 */ _t68 = cpu->r[30] + 0x00000054u;
|
|
/* 0276E708 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[10]);
|
|
/* 0276E70C */ _t69 = cpu->r[30] + 0x00000078u;
|
|
/* 0276E70C */ rbrew_write_f32(cpu->mem, _t69, cpu->f[13]);
|
|
/* 0276E710 */ _t70 = cpu->r[30] + 0x00000064u;
|
|
/* 0276E710 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[11]);
|
|
/* 0276E714 */ _t71 = cpu->r[1] + 0x00000070u;
|
|
/* 0276E714 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0276E718 */ _t72 = cpu->r[30] + 0x00000070u;
|
|
/* 0276E718 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 0276E71C */ _t73 = cpu->r[30] + 0x00000058u;
|
|
/* 0276E71C */ rbrew_write_f32(cpu->mem, _t73, cpu->f[11]);
|
|
/* 0276E720 */ _t74 = cpu->r[30] + 0x0000006Cu;
|
|
/* 0276E720 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[12]);
|
|
/* 0276E724 */ _t75 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0276E724 */ cpu->r[9] = rbrew_read8(cpu->mem, _t75);
|
|
/* 0276E728 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 0276E72C */ cpu->r[9] = cpu->r[9] | 0x00000001u;
|
|
/* 0276E730 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 0276E734 */ _t76 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0276E734 */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[9]);
|
|
/* 0276E738 */ Gambit_fn_02C69510(cpu);
|
|
/* 0276E73C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276E740 */ Gambit_fn_02980378(cpu);
|
|
/* 0276E744 */ _t77 = cpu->r[30] + 0x000002C4u;
|
|
/* 0276E744 */ cpu->r[0] = rbrew_read8(cpu->mem, _t77);
|
|
/* 0276E748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E74C */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E74C */ _t79 = _t78 & 0x00000001u;
|
|
/* 0276E74C */ if (_t79) goto L_0276E750; else goto L_0276E75C;
|
|
L_0276E750: ; // 0x276e750
|
|
/* 0276E750 */ _t80 = cpu->r[30] + 0x000002D8u;
|
|
/* 0276E750 */ cpu->r[9] = rbrew_read8(cpu->mem, _t80);
|
|
/* 0276E754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0276E758 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E758 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0276E758 */ if (_t82) goto L_0276EA80; else goto L_0276E75C;
|
|
L_0276E75C: ; // 0x276e75c
|
|
/* 0276E75C */ cpu->r[8] = 0x10100000u;
|
|
/* 0276E760 */ _t83 = cpu->r[30] + 0x000002BCu;
|
|
/* 0276E760 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 0276E764 */ _t84 = cpu->r[8] + 0x00001608u;
|
|
/* 0276E764 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0276E768 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0276E76C */ _t85 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276E76C */ _t86 = _t85 & 0x00000001u;
|
|
/* 0276E76C */ if (_t86) goto L_0276E770; else goto L_0276EA80;
|
|
L_0276E770: ; // 0x276e770
|
|
/* 0276E770 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276E774 */ _t87 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E774 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 0276E778 */ _t88 = cpu->r[10] + 0x000016DCu;
|
|
/* 0276E778 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0276E77C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 0276E780 */ _t89 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E780 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0276E780 */ if (_t90) goto L_0276E784; else goto L_0276EA80;
|
|
L_0276E784: ; // 0x276e784
|
|
/* 0276E784 */ cpu->f[12] = cpu->f[7] + cpu->f[13];
|
|
/* 0276E788 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 0276E78C */ _t91 = cpu->r[30] + 0x000002C4u;
|
|
/* 0276E78C */ cpu->r[10] = rbrew_read8(cpu->mem, _t91);
|
|
/* 0276E790 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E790 */ _t93 = _t92 & 0x00000001u;
|
|
/* 0276E790 */ if (_t93) goto L_0276E794; else goto L_0276E7A4;
|
|
L_0276E794: ; // 0x276e794
|
|
/* 0276E794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276E798 */ _t94 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E798 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[0]);
|
|
/* 0276E79C */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E79C */ _t96 = _t95 & 0x00000001u;
|
|
/* 0276E79C */ if (_t96) goto L_0276E958; else goto L_0276E7A0;
|
|
L_0276E7A0: ; // 0x276e7a0
|
|
/* 0276E7A0 */ goto L_0276E7BC;
|
|
L_0276E7A4: ; // 0x276e7a4
|
|
/* 0276E7A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0276E7A8 */ _t97 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276E7A8 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0276E7A8 */ if (_t98) goto L_0276E7AC; else goto L_0276E7B0;
|
|
L_0276E7AC: ; // 0x276e7ac
|
|
/* 0276E7AC */ cpu->f[12] = cpu->f[31];
|
|
L_0276E7B0: ; // 0x276e7b0
|
|
/* 0276E7B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0276E7B4 */ _t99 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E7B4 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[12]);
|
|
/* 0276E7B8 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E7B8 */ _t101 = _t100 & 0x00000001u;
|
|
/* 0276E7B8 */ if (_t101) goto L_0276E958; else goto L_0276E7BC;
|
|
L_0276E7BC: ; // 0x276e7bc
|
|
/* 0276E7BC */ _t102 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E7BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0276E7C0 */ _t103 = cpu->r[30] + 0x000002A0u;
|
|
/* 0276E7C0 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t103);
|
|
/* 0276E7C4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276E7C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276E7CC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276E7D0 */ _t104 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0276E7D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0276E7D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0276E7D8 */ cpu->r[7] = 0x00000000u;
|
|
/* 0276E7DC */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E7DC */ _t106 = _t105 & 0x00000001u;
|
|
/* 0276E7DC */ if (_t106) goto L_0276E7E0; else goto L_0276E7EC;
|
|
L_0276E7E0: ; // 0x276e7e0
|
|
/* 0276E7E0 */ _t107 = cpu->r[29] + 0x00000024u;
|
|
/* 0276E7E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0276E7E4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E7E8 */ _t108 = cpu->r[12] + cpu->r[6];
|
|
/* 0276E7E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t108);
|
|
L_0276E7EC: ; // 0x276e7ec
|
|
/* 0276E7EC */ _t109 = cpu->r[7] + 0x00000000u;
|
|
/* 0276E7EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0276E7F0 */ _t110 = cpu->r[3] + 0x00000088u;
|
|
/* 0276E7F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0276E7F4 */ _t111 = cpu->r[7] + 0x0000016Cu;
|
|
/* 0276E7F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0276E7F8 */ _t112 = cpu->r[30] + 0x000002A4u;
|
|
/* 0276E7F8 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t112);
|
|
/* 0276E7FC */ cpu->ctr = cpu->r[0];
|
|
/* 0276E800 */ _t113 = cpu->r[30] + 0x000002A2u;
|
|
/* 0276E800 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t113);
|
|
/* 0276E804 */ cpu->r[7] = cpu->r[1] + 0x00000020u;
|
|
/* 0276E808 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E80C */ cpu->r[8] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E810 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E814 */ _t114 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E814 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 0276E818 */ /* nop */
|
|
/* 0276E81C */ /* nop */
|
|
/* 0276E820 */ /* nop */
|
|
/* 0276E824 */ _t115 = cpu->r[30] + 0x000002B0u;
|
|
/* 0276E824 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0276E828 */ /* nop */
|
|
/* 0276E82C */ _t116 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E82C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0276E830 */ cpu->f[8] = cpu->f[31] - cpu->f[7];
|
|
/* 0276E834 */ /* nop */
|
|
/* 0276E838 */ _t117 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0276E838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0276E83C */ /* nop */
|
|
/* 0276E840 */ _t118 = cpu->r[1] + 0x00000088u;
|
|
/* 0276E840 */ cpu->r[10] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0276E844 */ /* nop */
|
|
/* 0276E848 */ _t119 = cpu->r[1] + 0x00000084u;
|
|
/* 0276E848 */ cpu->r[7] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0276E84C */ _t120 = cpu->r[1] + 0x00000030u;
|
|
/* 0276E84C */ rbrew_write32(cpu->mem, _t120, cpu->r[0]);
|
|
/* 0276E850 */ _t121 = cpu->r[1] + 0x00000080u;
|
|
/* 0276E850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0276E854 */ _t122 = cpu->r[1] + 0x00000038u;
|
|
/* 0276E854 */ rbrew_write32(cpu->mem, _t122, cpu->r[7]);
|
|
/* 0276E858 */ /* nop */
|
|
/* 0276E85C */ _t123 = cpu->r[1] + 0x00000034u;
|
|
/* 0276E85C */ rbrew_write32(cpu->mem, _t123, cpu->r[0]);
|
|
/* 0276E860 */ /* nop */
|
|
/* 0276E864 */ _t124 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276E864 */ rbrew_write32(cpu->mem, _t124, cpu->r[10]);
|
|
/* 0276E868 */ /* nop */
|
|
/* 0276E86C */ /* nop */
|
|
/* 0276E870 */ _t125 = cpu->r[1] + 0x00000098u;
|
|
/* 0276E870 */ cpu->r[6] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0276E874 */ /* nop */
|
|
/* 0276E878 */ cpu->f[9] = cpu->f[11] * cpu->f[7];
|
|
/* 0276E87C */ /* nop */
|
|
/* 0276E880 */ _t126 = cpu->r[1] + 0x00000090u;
|
|
/* 0276E880 */ cpu->r[8] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0276E884 */ /* nop */
|
|
/* 0276E888 */ cpu->f[30] = fma(cpu->f[13], cpu->f[8], cpu->f[9]);
|
|
/* 0276E88C */ _t127 = cpu->r[30] + 0x000002A0u;
|
|
/* 0276E88C */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t127);
|
|
/* 0276E890 */ _t128 = cpu->r[1] + 0x00000034u;
|
|
/* 0276E890 */ rbrew_write32(cpu->mem, _t128, cpu->r[6]);
|
|
/* 0276E894 */ /* nop */
|
|
/* 0276E898 */ _t129 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E898 */ rbrew_write32(cpu->mem, _t129, cpu->r[8]);
|
|
/* 0276E89C */ /* nop */
|
|
/* 0276E8A0 */ _t130 = cpu->r[1] + 0x000000A0u;
|
|
/* 0276E8A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0276E8A4 */ _t131 = cpu->r[1] + 0x00000094u;
|
|
/* 0276E8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0276E8A8 */ _t132 = cpu->r[1] + 0x00000020u;
|
|
/* 0276E8A8 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[30]);
|
|
/* 0276E8AC */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E8AC */ rbrew_write32(cpu->mem, _t133, cpu->r[0]);
|
|
/* 0276E8B0 */ _t134 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E8B0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0276E8B4 */ _t135 = cpu->r[1] + 0x00000024u;
|
|
/* 0276E8B4 */ rbrew_write32(cpu->mem, _t135, cpu->r[9]);
|
|
/* 0276E8B8 */ _t136 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0276E8B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0276E8BC */ _t137 = cpu->r[1] + 0x000000A4u;
|
|
/* 0276E8BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0276E8C0 */ _t138 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E8C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0276E8C4 */ _t139 = cpu->r[1] + 0x00000028u;
|
|
/* 0276E8C4 */ rbrew_write32(cpu->mem, _t139, cpu->r[0]);
|
|
/* 0276E8C8 */ /* nop */
|
|
/* 0276E8CC */ _t140 = cpu->r[1] + 0x00000038u;
|
|
/* 0276E8CC */ rbrew_write32(cpu->mem, _t140, cpu->r[11]);
|
|
/* 0276E8D0 */ /* nop */
|
|
/* 0276E8D4 */ _t141 = cpu->r[1] + 0x00000008u;
|
|
/* 0276E8D4 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[9]);
|
|
/* 0276E8D8 */ /* nop */
|
|
/* 0276E8DC */ _t142 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276E8DC */ rbrew_write_f32(cpu->mem, _t142, cpu->f[0]);
|
|
/* 0276E8E0 */ /* nop */
|
|
/* 0276E8E4 */ _t143 = cpu->r[1] + 0x000000A8u;
|
|
/* 0276E8E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0276E8E8 */ _t144 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E8E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0276E8EC */ _t145 = cpu->r[1] + 0x000000ACu;
|
|
/* 0276E8EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0276E8F0 */ _t146 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276E8F0 */ rbrew_write32(cpu->mem, _t146, cpu->r[0]);
|
|
/* 0276E8F4 */ _t147 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0276E8F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 0276E8F8 */ _t148 = cpu->r[1] + 0x00000030u;
|
|
/* 0276E8F8 */ rbrew_write32(cpu->mem, _t148, cpu->r[6]);
|
|
/* 0276E8FC */ _t149 = cpu->r[1] + 0x00000030u;
|
|
/* 0276E8FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 0276E900 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276E904 */ _t150 = cpu->r[1] + 0x00000010u;
|
|
/* 0276E904 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[12]);
|
|
/* 0276E908 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276E90C */ _t151 = cpu->r[1] + 0x00000014u;
|
|
/* 0276E90C */ rbrew_write_f32(cpu->mem, _t151, cpu->f[11]);
|
|
/* 0276E910 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276E914 */ _t152 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0276E914 */ cpu->r[8] = rbrew_read32(cpu->mem, _t152);
|
|
/* 0276E918 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 0276E91C */ cpu->r[7] = 0x00000000u;
|
|
/* 0276E920 */ _t153 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E920 */ _t154 = _t153 & 0x00000001u;
|
|
/* 0276E920 */ if (_t154) goto L_0276E924; else goto L_0276E930;
|
|
L_0276E924: ; // 0x276e924
|
|
/* 0276E924 */ _t155 = cpu->r[29] + 0x00000024u;
|
|
/* 0276E924 */ cpu->r[10] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0276E928 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E92C */ _t156 = cpu->r[9] + cpu->r[10];
|
|
/* 0276E92C */ cpu->r[7] = rbrew_read32(cpu->mem, _t156);
|
|
L_0276E930: ; // 0x276e930
|
|
/* 0276E930 */ _t157 = cpu->r[7] + 0x00000000u;
|
|
/* 0276E930 */ cpu->r[3] = rbrew_read32(cpu->mem, _t157);
|
|
/* 0276E934 */ _t158 = cpu->r[3] + 0x00000088u;
|
|
/* 0276E934 */ cpu->r[11] = rbrew_read32(cpu->mem, _t158);
|
|
/* 0276E938 */ _t159 = cpu->r[11] + 0x00000174u;
|
|
/* 0276E938 */ cpu->r[12] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0276E93C */ cpu->f[1] = cpu->f[30];
|
|
/* 0276E940 */ _t160 = cpu->r[30] + 0x000002A2u;
|
|
/* 0276E940 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t160);
|
|
/* 0276E944 */ cpu->ctr = cpu->r[12];
|
|
/* 0276E948 */ _t161 = cpu->r[30] + 0x000002A4u;
|
|
/* 0276E948 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t161);
|
|
/* 0276E94C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0276E950 */ cpu->r[7] = cpu->r[1] + 0x00000010u;
|
|
/* 0276E954 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276E958: ; // 0x276e958
|
|
/* 0276E958 */ _t162 = cpu->r[30] + 0x000002D8u;
|
|
/* 0276E958 */ cpu->r[0] = rbrew_read8(cpu->mem, _t162);
|
|
/* 0276E95C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276E960 */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276E960 */ _t164 = _t163 & 0x00000001u;
|
|
/* 0276E960 */ if (_t164) goto L_0276EA80; else goto L_0276E964;
|
|
L_0276E964: ; // 0x276e964
|
|
/* 0276E964 */ _t165 = cpu->r[30] + 0x00000008u;
|
|
/* 0276E964 */ cpu->r[29] = rbrew_read32(cpu->mem, _t165);
|
|
/* 0276E968 */ _t166 = cpu->r[30] + 0x000002C8u;
|
|
/* 0276E968 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t166);
|
|
/* 0276E96C */ cpu->r[3] = cpu->r[29];
|
|
/* 0276E970 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276E974 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276E978 */ _t167 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0276E978 */ cpu->r[6] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0276E97C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[6]);
|
|
/* 0276E980 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276E984 */ _t168 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276E984 */ _t169 = _t168 & 0x00000001u;
|
|
/* 0276E984 */ if (_t169) goto L_0276E988; else goto L_0276E994;
|
|
L_0276E988: ; // 0x276e988
|
|
/* 0276E988 */ _t170 = cpu->r[29] + 0x00000024u;
|
|
/* 0276E988 */ cpu->r[8] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0276E98C */ cpu->r[7] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276E990 */ _t171 = cpu->r[7] + cpu->r[8];
|
|
/* 0276E990 */ cpu->r[12] = rbrew_read32(cpu->mem, _t171);
|
|
L_0276E994: ; // 0x276e994
|
|
/* 0276E994 */ _t172 = cpu->r[12] + 0x00000000u;
|
|
/* 0276E994 */ cpu->r[3] = rbrew_read32(cpu->mem, _t172);
|
|
/* 0276E998 */ _t173 = cpu->r[3] + 0x00000088u;
|
|
/* 0276E998 */ cpu->r[9] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0276E99C */ _t174 = cpu->r[9] + 0x0000011Cu;
|
|
/* 0276E99C */ cpu->r[0] = rbrew_read32(cpu->mem, _t174);
|
|
/* 0276E9A0 */ _t175 = cpu->r[30] + 0x000002CCu;
|
|
/* 0276E9A0 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t175);
|
|
/* 0276E9A4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276E9A8 */ _t176 = cpu->r[30] + 0x000002CAu;
|
|
/* 0276E9A8 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t176);
|
|
/* 0276E9AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276E9B0 */ _t177 = cpu->r[3] + 0x00000000u;
|
|
/* 0276E9B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t177);
|
|
/* 0276E9B4 */ _t178 = cpu->r[30] + 0x000002C0u;
|
|
/* 0276E9B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 0276E9B8 */ _t179 = cpu->r[1] + 0x00000018u;
|
|
/* 0276E9B8 */ rbrew_write32(cpu->mem, _t179, cpu->r[12]);
|
|
/* 0276E9BC */ _t180 = cpu->r[3] + 0x00000004u;
|
|
/* 0276E9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t180);
|
|
/* 0276E9C0 */ cpu->f[12] = cpu->f[31] - cpu->f[7];
|
|
/* 0276E9C4 */ /* nop */
|
|
/* 0276E9C8 */ _t181 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276E9C8 */ rbrew_write32(cpu->mem, _t181, cpu->r[0]);
|
|
/* 0276E9CC */ /* nop */
|
|
/* 0276E9D0 */ /* nop */
|
|
/* 0276E9D4 */ /* nop */
|
|
/* 0276E9D8 */ /* nop */
|
|
/* 0276E9DC */ _t182 = cpu->r[1] + 0x000000C0u;
|
|
/* 0276E9DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t182);
|
|
/* 0276E9E0 */ /* nop */
|
|
/* 0276E9E4 */ _t183 = cpu->r[1] + 0x000000C8u;
|
|
/* 0276E9E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0276E9E8 */ _t184 = cpu->r[1] + 0x000000CCu;
|
|
/* 0276E9E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0276E9EC */ _t185 = cpu->r[1] + 0x000000B8u;
|
|
/* 0276E9EC */ rbrew_write32(cpu->mem, _t185, cpu->r[0]);
|
|
/* 0276E9F0 */ _t186 = cpu->r[1] + 0x000000BCu;
|
|
/* 0276E9F0 */ rbrew_write32(cpu->mem, _t186, cpu->r[11]);
|
|
/* 0276E9F4 */ /* nop */
|
|
/* 0276E9F8 */ _t187 = cpu->r[1] + 0x000000C4u;
|
|
/* 0276E9F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0276E9FC */ _t188 = cpu->r[1] + 0x000000B0u;
|
|
/* 0276E9FC */ rbrew_write32(cpu->mem, _t188, cpu->r[9]);
|
|
/* 0276EA00 */ _t189 = cpu->r[1] + 0x000000B4u;
|
|
/* 0276EA00 */ rbrew_write32(cpu->mem, _t189, cpu->r[10]);
|
|
/* 0276EA04 */ /* nop */
|
|
/* 0276EA08 */ _t190 = cpu->r[30] + 0x00000008u;
|
|
/* 0276EA08 */ cpu->r[29] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0276EA0C */ /* nop */
|
|
/* 0276EA10 */ /* nop */
|
|
/* 0276EA14 */ _t191 = cpu->r[1] + 0x000000D0u;
|
|
/* 0276EA14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0276EA18 */ _t192 = cpu->r[1] + 0x000000D4u;
|
|
/* 0276EA18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0276EA1C */ _t193 = cpu->r[1] + 0x00000048u;
|
|
/* 0276EA1C */ rbrew_write32(cpu->mem, _t193, cpu->r[8]);
|
|
/* 0276EA20 */ _t194 = cpu->r[1] + 0x00000048u;
|
|
/* 0276EA20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 0276EA24 */ _t195 = cpu->r[30] + 0x000002C8u;
|
|
/* 0276EA24 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t195);
|
|
/* 0276EA28 */ _t196 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276EA28 */ rbrew_write32(cpu->mem, _t196, cpu->r[0]);
|
|
/* 0276EA2C */ _t197 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0276EA2C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 0276EA30 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276EA34 */ _t198 = cpu->r[1] + 0x00000018u;
|
|
/* 0276EA34 */ rbrew_write_f32(cpu->mem, _t198, cpu->f[0]);
|
|
/* 0276EA38 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276EA3C */ _t199 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276EA3C */ rbrew_write_f32(cpu->mem, _t199, cpu->f[9]);
|
|
/* 0276EA40 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276EA44 */ _t200 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0276EA44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t200);
|
|
/* 0276EA48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0276EA4C */ cpu->r[11] = 0x00000000u;
|
|
/* 0276EA50 */ _t201 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276EA50 */ _t202 = _t201 & 0x00000001u;
|
|
/* 0276EA50 */ if (_t202) goto L_0276EA54; else goto L_0276EA60;
|
|
L_0276EA54: ; // 0x276ea54
|
|
/* 0276EA54 */ _t203 = cpu->r[29] + 0x00000024u;
|
|
/* 0276EA54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0276EA58 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276EA5C */ _t204 = cpu->r[12] + cpu->r[0];
|
|
/* 0276EA5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t204);
|
|
L_0276EA60: ; // 0x276ea60
|
|
/* 0276EA60 */ _t205 = cpu->r[11] + 0x00000000u;
|
|
/* 0276EA60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t205);
|
|
/* 0276EA64 */ _t206 = cpu->r[3] + 0x00000088u;
|
|
/* 0276EA64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t206);
|
|
/* 0276EA68 */ _t207 = cpu->r[10] + 0x00000124u;
|
|
/* 0276EA68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t207);
|
|
/* 0276EA6C */ _t208 = cpu->r[30] + 0x000002CAu;
|
|
/* 0276EA6C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t208);
|
|
/* 0276EA70 */ cpu->ctr = cpu->r[0];
|
|
/* 0276EA74 */ _t209 = cpu->r[30] + 0x000002CCu;
|
|
/* 0276EA74 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t209);
|
|
/* 0276EA78 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 0276EA7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276EA80: ; // 0x276ea80
|
|
/* 0276EA80 */ _t210 = cpu->r[1] + 0x00000140u;
|
|
/* 0276EA80 */ cpu->r[28] = rbrew_read32(cpu->mem, _t210);
|
|
/* 0276EA84 */ _t211 = cpu->r[1] + 0x00000144u;
|
|
/* 0276EA84 */ cpu->r[29] = rbrew_read32(cpu->mem, _t211);
|
|
/* 0276EA88 */ _t212 = cpu->r[1] + 0x00000168u;
|
|
/* 0276EA88 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t212);
|
|
/* 0276EA8C */ _t213 = cpu->r[1] + 0x00000158u;
|
|
/* 0276EA8C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t213);
|
|
/* 0276EA90 */ _t214 = cpu->r[1] + 0x00000160u;
|
|
/* 0276EA90 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t214);
|
|
/* 0276EA94 */ _t215 = cpu->r[1] + 0x00000150u;
|
|
/* 0276EA94 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t215);
|
|
/* 0276EA98 */ _t216 = cpu->r[1] + 0x0000014Cu;
|
|
/* 0276EA98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t216);
|
|
/* 0276EA9C */ _t217 = cpu->r[1] + 0x00000148u;
|
|
/* 0276EA9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t217);
|
|
/* 0276EAA0 */ _t218 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276EAA0 */ _t219 = _t218 & 0x00000001u;
|
|
/* 0276EAA0 */ if (_t219) goto L_0276EAA4; // else: addr-0 trap, fall-through
|
|
L_0276EAA4: ; // 0x276eaa4
|
|
/* 0276EAA4 */ _t220 = cpu->r[1] + 0x00000174u;
|
|
/* 0276EAA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t220);
|
|
/* 0276EAA8 */ cpu->lr = cpu->r[0];
|
|
/* 0276EAAC */ cpu->r[1] = cpu->r[1] + 0x00000170u;
|
|
/* 0276EAB0 */ return;
|
|
}
|
|
|
|
// fn_0276EAB4 @ 0x276eab4
|
|
void Gambit_fn_0276EAB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276C6F8: ; // 0x276c6f8
|
|
/* 0276C6F8 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C6FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C6FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C6FC */ cpu->r[1] = _t0;
|
|
/* 0276C700 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C700 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0276C704 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C704 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0276C708 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276C70C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C70C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276C710 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0276C710 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0276C714 */ /* nop */
|
|
/* 0276C718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0276C71C */ cpu->r[31] = cpu->r[4];
|
|
/* 0276C720 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C720 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C720 */ if (_t6) goto L_0276C724; else goto L_0276C738;
|
|
L_0276C724: ; // 0x276c724
|
|
/* 0276C724 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0276C724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276C728 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0276C728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276C72C */ cpu->ctr = cpu->r[0];
|
|
/* 0276C730 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C738: ; // 0x276c738
|
|
/* 0276C738 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C73C */ cpu->r[4] = cpu->r[31];
|
|
/* 0276C740 */ Gambit_fn_0276C670(cpu);
|
|
/* 0276C744 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C748 */ /* nop */
|
|
/* 0276C74C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0276C750 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276C754 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0276C758 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276C75C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0276C75C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C760 */ cpu->lr = cpu->r[0];
|
|
/* 0276C764 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C768 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C76C */ return;
|
|
L_0276EAB4: ; // 0x276eab4
|
|
/* 0276EAB4 */ cpu->r[3] = cpu->r[3] + 0x000001CCu;
|
|
/* 0276EAB8 */ cpu->r[4] = 0x00000005u;
|
|
/* 0276EABC */ goto L_0276C6F8;
|
|
}
|
|
|
|
// fn_0276EAC0 @ 0x276eac0
|
|
void Gambit_fn_0276EAC0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0276EAC0: ; // 0x276eac0
|
|
/* 0276EAC0 */ _t0 = cpu->r[3] + 0x000001D8u;
|
|
/* 0276EAC0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0276EAC4 */ /* nop */
|
|
/* 0276EAC8 */ cpu->r[0] = cpu->r[0] ^ 0x00000005u;
|
|
/* 0276EACC */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0276EAD0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0276EAD4 */ return;
|
|
}
|
|
|
|
// fn_0276EAD8 @ 0x276ead8
|
|
void Gambit_fn_0276EAD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_0276EAD8: ; // 0x276ead8
|
|
/* 0276EAD8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0276EAD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276EAD8 */ cpu->r[1] = _t0;
|
|
/* 0276EADC */ /* nop */
|
|
/* 0276EAE0 */ cpu->r[0] = cpu->lr;
|
|
/* 0276EAE4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0276EAE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0276EAE8 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276EAEC */ _t2 = cpu->r[29] + 0x000002C4u;
|
|
/* 0276EAEC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0276EAF0 */ cpu->r[30] = cpu->r[4];
|
|
/* 0276EAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276EAF8 */ cpu->r[31] = cpu->r[5];
|
|
/* 0276EAFC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EAFC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276EAFC */ if (_t4) goto L_0276EB00; else goto L_0276EB0C;
|
|
L_0276EB00: ; // 0x276eb00
|
|
/* 0276EB00 */ _t5 = cpu->r[29] + 0x000002D8u;
|
|
/* 0276EB00 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0276EB04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276EB08 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EB08 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276EB08 */ if (_t7) goto L_0276EC1C; else goto L_0276EB0C;
|
|
L_0276EB0C: ; // 0x276eb0c
|
|
/* 0276EB0C */ cpu->r[10] = 0x10100000u;
|
|
/* 0276EB10 */ _t8 = cpu->r[10] + 0x00001608u;
|
|
/* 0276EB10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0276EB14 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000000Cu);
|
|
/* 0276EB18 */ cpu->r[12] = cpu->r[29] + cpu->r[10];
|
|
/* 0276EB1C */ _t9 = cpu->r[12] + 0x00000210u;
|
|
/* 0276EB1C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0276EB20 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276EB24 */ _t10 = cpu->r[29] + 0x000002C4u;
|
|
/* 0276EB24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0276EB28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0276EB2C */ _t11 = cpu->r[9] + 0x000016DCu;
|
|
/* 0276EB2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0276EB30 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276EB30 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276EB30 */ if (_t13) goto L_0276EB34; else goto L_0276EB4C;
|
|
L_0276EB34: ; // 0x276eb34
|
|
/* 0276EB34 */ cpu->f[12] = cpu->f[0] / cpu->f[12];
|
|
/* 0276EB38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276EB3C */ _t14 = cpu->r[29] + 0x000002C0u;
|
|
/* 0276EB3C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 0276EB40 */ _t15 = cpu->r[29] + 0x000002BCu;
|
|
/* 0276EB40 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 0276EB44 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EB44 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0276EB44 */ if (_t17) goto L_0276EBB4; else goto L_0276EB48;
|
|
L_0276EB48: ; // 0x276eb48
|
|
/* 0276EB48 */ goto L_0276EB5C;
|
|
L_0276EB4C: ; // 0x276eb4c
|
|
/* 0276EB4C */ _t18 = cpu->r[29] + 0x000002BCu;
|
|
/* 0276EB4C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 0276EB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276EB54 */ _t19 = cpu->r[29] + 0x000002C0u;
|
|
/* 0276EB54 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 0276EB58 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EB58 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0276EB58 */ if (_t21) goto L_0276EBB4; else goto L_0276EB5C;
|
|
L_0276EB5C: ; // 0x276eb5c
|
|
/* 0276EB5C */ _t22 = cpu->r[29] + 0x00000008u;
|
|
/* 0276EB5C */ cpu->r[27] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276EB60 */ _t23 = cpu->r[29] + 0x000002A0u;
|
|
/* 0276EB60 */ cpu->r[28] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t23);
|
|
/* 0276EB64 */ cpu->r[3] = cpu->r[27];
|
|
/* 0276EB68 */ cpu->r[4] = cpu->r[28];
|
|
/* 0276EB6C */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276EB70 */ _t24 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0276EB70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0276EB74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 0276EB78 */ cpu->r[11] = 0x00000000u;
|
|
/* 0276EB7C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276EB7C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0276EB7C */ if (_t26) goto L_0276EB80; else goto L_0276EB8C;
|
|
L_0276EB80: ; // 0x276eb80
|
|
/* 0276EB80 */ _t27 = cpu->r[27] + 0x00000024u;
|
|
/* 0276EB80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0276EB84 */ cpu->r[7] = rbrew_rlwinm(cpu->r[28], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276EB88 */ _t28 = cpu->r[7] + cpu->r[0];
|
|
/* 0276EB88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
L_0276EB8C: ; // 0x276eb8c
|
|
/* 0276EB8C */ _t29 = cpu->r[11] + 0x00000000u;
|
|
/* 0276EB8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0276EB90 */ _t30 = cpu->r[3] + 0x00000088u;
|
|
/* 0276EB90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0276EB94 */ _t31 = cpu->r[9] + 0x0000016Cu;
|
|
/* 0276EB94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0276EB98 */ _t32 = cpu->r[29] + 0x000002A2u;
|
|
/* 0276EB98 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t32);
|
|
/* 0276EB9C */ cpu->ctr = cpu->r[10];
|
|
/* 0276EBA0 */ _t33 = cpu->r[29] + 0x000002A4u;
|
|
/* 0276EBA0 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t33);
|
|
/* 0276EBA4 */ cpu->r[6] = cpu->r[29] + 0x000002A8u;
|
|
/* 0276EBA8 */ cpu->r[7] = cpu->r[29] + 0x000002B0u;
|
|
/* 0276EBAC */ cpu->r[8] = cpu->r[29] + 0x000002B4u;
|
|
/* 0276EBB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276EBB4: ; // 0x276ebb4
|
|
/* 0276EBB4 */ _t34 = cpu->r[29] + 0x000002D8u;
|
|
/* 0276EBB4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0276EBB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276EBBC */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EBBC */ _t36 = _t35 & 0x00000001u;
|
|
/* 0276EBBC */ if (_t36) goto L_0276EC1C; else goto L_0276EBC0;
|
|
L_0276EBC0: ; // 0x276ebc0
|
|
/* 0276EBC0 */ _t37 = cpu->r[29] + 0x00000008u;
|
|
/* 0276EBC0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0276EBC4 */ _t38 = cpu->r[29] + 0x000002C8u;
|
|
/* 0276EBC4 */ cpu->r[28] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t38);
|
|
/* 0276EBC8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0276EBCC */ cpu->r[4] = cpu->r[28];
|
|
/* 0276EBD0 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0276EBD4 */ _t39 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0276EBD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0276EBD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 0276EBDC */ cpu->r[11] = 0x00000000u;
|
|
/* 0276EBE0 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276EBE0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0276EBE0 */ if (_t41) goto L_0276EBE4; else goto L_0276EBF0;
|
|
L_0276EBE4: ; // 0x276ebe4
|
|
/* 0276EBE4 */ _t42 = cpu->r[27] + 0x00000024u;
|
|
/* 0276EBE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0276EBE8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[28], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276EBEC */ _t43 = cpu->r[7] + cpu->r[8];
|
|
/* 0276EBEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t43);
|
|
L_0276EBF0: ; // 0x276ebf0
|
|
/* 0276EBF0 */ _t44 = cpu->r[11] + 0x00000000u;
|
|
/* 0276EBF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0276EBF4 */ _t45 = cpu->r[3] + 0x00000088u;
|
|
/* 0276EBF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0276EBF8 */ _t46 = cpu->r[11] + 0x0000011Cu;
|
|
/* 0276EBF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0276EBFC */ _t47 = cpu->r[29] + 0x000002CAu;
|
|
/* 0276EBFC */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t47);
|
|
/* 0276EC00 */ cpu->ctr = cpu->r[0];
|
|
/* 0276EC04 */ _t48 = cpu->r[29] + 0x000002CCu;
|
|
/* 0276EC04 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t48);
|
|
/* 0276EC08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276EC0C */ _t49 = cpu->r[3] + 0x00000000u;
|
|
/* 0276EC0C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0276EC10 */ _t50 = cpu->r[29] + 0x000002D0u;
|
|
/* 0276EC10 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[12]);
|
|
/* 0276EC14 */ _t51 = cpu->r[3] + 0x00000004u;
|
|
/* 0276EC14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0276EC18 */ _t52 = cpu->r[29] + 0x000002D4u;
|
|
/* 0276EC18 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[0]);
|
|
L_0276EC1C: ; // 0x276ec1c
|
|
/* 0276EC1C */ cpu->r[5] = cpu->r[31];
|
|
/* 0276EC20 */ cpu->r[4] = cpu->r[30];
|
|
/* 0276EC24 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276EC28 */ Gambit_fn_02002728(cpu);
|
|
/* 0276EC2C */ /* nop */
|
|
/* 0276EC30 */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 0276EC30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0276EC34 */ cpu->lr = cpu->r[0];
|
|
/* 0276EC38 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0276EC3C */ return;
|
|
}
|
|
|
|
// fn_0276EC44 @ 0x276ec44
|
|
void Gambit_fn_0276EC44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0276EC44: ; // 0x276ec44
|
|
/* 0276EC44 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276EC44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276EC44 */ cpu->r[1] = _t0;
|
|
/* 0276EC48 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276EC48 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276EC4C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276EC50 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EC50 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276EC54 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 0276EC54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276EC58 */ _t4 = cpu->r[10] + 0x000000A4u;
|
|
/* 0276EC58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276EC5C */ cpu->r[4] = cpu->r[31] + 0x00000220u;
|
|
/* 0276EC60 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276EC64 */ /* nop */
|
|
/* 0276EC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276EC6C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EC6C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276EC6C */ if (_t6) goto L_0276EC8C; else goto L_0276EC70;
|
|
L_0276EC70: ; // 0x276ec70
|
|
/* 0276EC70 */ /* nop */
|
|
/* 0276EC74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276EC78 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EC78 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276EC78 */ if (_t8) goto L_0276EC8C; else goto L_0276EC7C;
|
|
L_0276EC7C: ; // 0x276ec7c
|
|
/* 0276EC7C */ cpu->r[5] = 0x00000000u;
|
|
/* 0276EC80 */ cpu->r[4] = 0x00000002u;
|
|
/* 0276EC84 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276EC88 */ Gambit_fn_0276EAD8(cpu);
|
|
L_0276EC8C: ; // 0x276ec8c
|
|
/* 0276EC8C */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0276EC8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276EC90 */ _t10 = cpu->r[11] + 0x00000224u;
|
|
/* 0276EC90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276EC94 */ cpu->ctr = cpu->r[12];
|
|
/* 0276EC98 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276EC9C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276ECA0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0276ECA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276ECA4 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276ECA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276ECA8 */ cpu->lr = cpu->r[0];
|
|
/* 0276ECAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276ECB0 */ return;
|
|
}
|
|
|
|
// fn_0276ECC4 @ 0x276ecc4
|
|
void Gambit_fn_0276ECC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73;
|
|
|
|
L_0276ECC4: ; // 0x276ecc4
|
|
/* 0276ECC4 */ cpu->r[0] = cpu->lr;
|
|
/* 0276ECC8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0276ECC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276ECC8 */ cpu->r[1] = _t0;
|
|
/* 0276ECCC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276ECCC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0276ECD0 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0276ECD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276ECD4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276ECD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0276ECD8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276ECDC */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0276ECDC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276ECE0 */ _t5 = cpu->r[31] + 0x00000298u;
|
|
/* 0276ECE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0276ECE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276ECE8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ECE8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276ECE8 */ if (_t7) goto L_0276ECEC; else goto L_0276ED60;
|
|
L_0276ECEC: ; // 0x276ecec
|
|
/* 0276ECEC */ cpu->r[30] = 0x101D0000u;
|
|
/* 0276ECF0 */ _t8 = cpu->r[30] + 0xFFFF8FC4u;
|
|
/* 0276ECF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276ECF0 */ cpu->r[30] = _t8;
|
|
/* 0276ECF4 */ _t9 = cpu->r[8] + 0x00000250u;
|
|
/* 0276ECF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276ECF8 */ Gambit_fn_0209CF00(cpu);
|
|
/* 0276ECFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276ED00 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ED00 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276ED00 */ if (_t11) goto L_0276ED04; else goto L_0276ED60;
|
|
L_0276ED04: ; // 0x276ed04
|
|
/* 0276ED04 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 0276ED04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276ED08 */ cpu->r[29] = 0x101D0000u;
|
|
/* 0276ED0C */ _t13 = cpu->r[29] + 0xFFFF8FC8u;
|
|
/* 0276ED0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276ED0C */ cpu->r[29] = _t13;
|
|
/* 0276ED10 */ cpu->r[12] = cpu->r[11] + cpu->r[9];
|
|
/* 0276ED14 */ _t14 = cpu->r[12] + 0x00000104u;
|
|
/* 0276ED14 */ cpu->r[8] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0276ED18 */ _t15 = cpu->r[11] + 0x00000030u;
|
|
/* 0276ED18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276ED1C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276ED20 */ _t16 = cpu->r[10] + cpu->r[0];
|
|
/* 0276ED20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276ED24 */ _t17 = cpu->r[12] + 0x00000004u;
|
|
/* 0276ED24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276ED28 */ _t18 = cpu->r[8] + 0x00000000u;
|
|
/* 0276ED28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276ED2C */ Gambit_fn_0277CE64(cpu);
|
|
/* 0276ED30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276ED34 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ED34 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276ED34 */ if (_t20) goto L_0276ED80; else goto L_0276ED38;
|
|
L_0276ED38: ; // 0x276ed38
|
|
/* 0276ED38 */ _t21 = cpu->r[31] + 0x00000008u;
|
|
/* 0276ED38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276ED3C */ _t22 = cpu->r[10] + 0x000000A4u;
|
|
/* 0276ED3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276ED40 */ cpu->r[4] = cpu->r[31] + 0x00000220u;
|
|
/* 0276ED44 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276ED48 */ /* nop */
|
|
/* 0276ED4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 0276ED50 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ED50 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0276ED50 */ if (_t24) goto L_0276EE8C; else goto L_0276ED54;
|
|
L_0276ED54: ; // 0x276ed54
|
|
/* 0276ED54 */ /* nop */
|
|
/* 0276ED58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276ED5C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ED5C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0276ED5C */ if (_t26) goto L_0276EE8C; else goto L_0276ED60;
|
|
L_0276ED60: ; // 0x276ed60
|
|
/* 0276ED60 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0276ED60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0276ED64 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 0276ED64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276ED68 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0276ED68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0276ED6C */ cpu->lr = cpu->r[0];
|
|
/* 0276ED70 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276ED70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0276ED74 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0276ED78 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276ED7C */ return;
|
|
L_0276ED80: ; // 0x276ed80
|
|
/* 0276ED80 */ _t31 = cpu->r[29] + 0x00000000u;
|
|
/* 0276ED80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0276ED84 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 0276ED84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0276ED88 */ cpu->r[10] = cpu->r[11] + cpu->r[0];
|
|
/* 0276ED8C */ _t33 = cpu->r[10] + 0x00000104u;
|
|
/* 0276ED8C */ cpu->r[0] = rbrew_read8(cpu->mem, _t33);
|
|
/* 0276ED90 */ _t34 = cpu->r[11] + 0x00000030u;
|
|
/* 0276ED90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0276ED94 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276ED98 */ _t35 = cpu->r[12] + cpu->r[8];
|
|
/* 0276ED98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0276ED9C */ _t36 = cpu->r[9] + 0x00000004u;
|
|
/* 0276ED9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0276EDA0 */ _t37 = cpu->r[10] + 0x00000000u;
|
|
/* 0276EDA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0276EDA4 */ Gambit_fn_0277CEBC(cpu);
|
|
/* 0276EDA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276EDAC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EDAC */ _t39 = _t38 & 0x00000001u;
|
|
/* 0276EDAC */ if (_t39) goto L_0276EDE4; else goto L_0276EDB0;
|
|
L_0276EDB0: ; // 0x276edb0
|
|
/* 0276EDB0 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276EDB4 */ cpu->r[4] = 0x00000003u;
|
|
/* 0276EDB8 */ Gambit_fn_0276C6F8(cpu);
|
|
/* 0276EDBC */ cpu->r[0] = 0x00000001u;
|
|
/* 0276EDC0 */ _t40 = cpu->r[31] + 0x00000298u;
|
|
/* 0276EDC0 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[0]);
|
|
/* 0276EDC4 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EDC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0276EDC8 */ cpu->r[3] = cpu->r[0];
|
|
/* 0276EDCC */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 0276EDCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0276EDD0 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 0276EDD0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0276EDD4 */ cpu->lr = cpu->r[0];
|
|
/* 0276EDD8 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276EDD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0276EDDC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0276EDE0 */ return;
|
|
L_0276EDE4: ; // 0x276ede4
|
|
/* 0276EDE4 */ _t45 = cpu->r[29] + 0x00000000u;
|
|
/* 0276EDE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0276EDE8 */ _t46 = cpu->r[30] + 0x00000000u;
|
|
/* 0276EDE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0276EDEC */ cpu->r[12] = cpu->r[11] + cpu->r[8];
|
|
/* 0276EDF0 */ _t47 = cpu->r[12] + 0x00000104u;
|
|
/* 0276EDF0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t47);
|
|
/* 0276EDF4 */ _t48 = cpu->r[11] + 0x00000030u;
|
|
/* 0276EDF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0276EDF8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276EDFC */ _t49 = cpu->r[9] + cpu->r[0];
|
|
/* 0276EDFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0276EE00 */ _t50 = cpu->r[11] + 0x00000004u;
|
|
/* 0276EE00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0276EE04 */ _t51 = cpu->r[12] + 0x00000000u;
|
|
/* 0276EE04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0276EE08 */ Gambit_fn_0277CF14(cpu);
|
|
/* 0276EE0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276EE10 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EE10 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0276EE10 */ if (_t53) goto L_0276EE48; else goto L_0276EE14;
|
|
L_0276EE14: ; // 0x276ee14
|
|
/* 0276EE14 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276EE18 */ cpu->r[4] = 0x00000004u;
|
|
/* 0276EE1C */ Gambit_fn_0276C6F8(cpu);
|
|
/* 0276EE20 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276EE24 */ _t54 = cpu->r[31] + 0x00000298u;
|
|
/* 0276EE24 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[0]);
|
|
/* 0276EE28 */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EE28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0276EE2C */ cpu->r[3] = cpu->r[0];
|
|
/* 0276EE30 */ _t56 = cpu->r[1] + 0x00000024u;
|
|
/* 0276EE30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0276EE34 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0276EE34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0276EE38 */ cpu->lr = cpu->r[0];
|
|
/* 0276EE3C */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276EE3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0276EE40 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0276EE44 */ return;
|
|
L_0276EE48: ; // 0x276ee48
|
|
/* 0276EE48 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276EE4C */ Gambit_fn_02002700(cpu);
|
|
/* 0276EE50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276EE54 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EE54 */ _t60 = _t59 & 0x00000001u;
|
|
/* 0276EE54 */ if (_t60) goto L_0276EE58; else goto L_0276EE8C;
|
|
L_0276EE58: ; // 0x276ee58
|
|
/* 0276EE58 */ _t61 = cpu->r[31] + 0x000001D4u;
|
|
/* 0276EE58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0276EE5C */ cpu->r[12] = 0x10100000u;
|
|
/* 0276EE60 */ _t62 = cpu->r[12] + 0x000016E0u;
|
|
/* 0276EE60 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 0276EE64 */ cpu->r[11] = 0x43300000u;
|
|
/* 0276EE68 */ cpu->r[12] = cpu->r[9] ^ 0x80000000u;
|
|
/* 0276EE6C */ _t63 = cpu->r[1] + 0x00000008u;
|
|
/* 0276EE6C */ rbrew_write32(cpu->mem, _t63, cpu->r[11]);
|
|
/* 0276EE70 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276EE70 */ rbrew_write32(cpu->mem, _t64, cpu->r[12]);
|
|
/* 0276EE74 */ _t65 = cpu->r[1] + 0x00000008u;
|
|
/* 0276EE74 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t65);
|
|
/* 0276EE78 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0276EE7C */ cpu->f[13] = (double)(float)cpu->f[0];
|
|
/* 0276EE80 */ _t66 = cpu->r[31] + 0x00000210u;
|
|
/* 0276EE80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0276EE84 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0276EE88 */ _t67 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276EE88 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0276EE88 */ if (_t68) goto L_0276ED60; else goto L_0276EE8C;
|
|
L_0276EE8C: ; // 0x276ee8c
|
|
/* 0276EE8C */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276EE90 */ cpu->r[4] = 0x00000002u;
|
|
/* 0276EE94 */ Gambit_fn_0276C6F8(cpu);
|
|
/* 0276EE98 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276EE9C */ _t69 = cpu->r[31] + 0x00000298u;
|
|
/* 0276EE9C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]);
|
|
/* 0276EEA0 */ _t70 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EEA0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0276EEA4 */ cpu->r[3] = cpu->r[0];
|
|
/* 0276EEA8 */ _t71 = cpu->r[1] + 0x00000024u;
|
|
/* 0276EEA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0276EEAC */ _t72 = cpu->r[1] + 0x00000018u;
|
|
/* 0276EEAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0276EEB0 */ cpu->lr = cpu->r[0];
|
|
/* 0276EEB4 */ _t73 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276EEB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0276EEB8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0276EEBC */ return;
|
|
}
|
|
|
|
// fn_0276ECC8 @ 0x276ecc8
|
|
void Gambit_fn_0276ECC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73;
|
|
|
|
L_0276ECC8: ; // 0x276ecc8
|
|
/* 0276ECC8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0276ECC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276ECC8 */ cpu->r[1] = _t0;
|
|
/* 0276ECCC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276ECCC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0276ECD0 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0276ECD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276ECD4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276ECD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0276ECD8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276ECDC */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0276ECDC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276ECE0 */ _t5 = cpu->r[31] + 0x00000298u;
|
|
/* 0276ECE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0276ECE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276ECE8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ECE8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276ECE8 */ if (_t7) goto L_0276ECEC; else goto L_0276ED60;
|
|
L_0276ECEC: ; // 0x276ecec
|
|
/* 0276ECEC */ cpu->r[30] = 0x101D0000u;
|
|
/* 0276ECF0 */ _t8 = cpu->r[30] + 0xFFFF8FC4u;
|
|
/* 0276ECF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276ECF0 */ cpu->r[30] = _t8;
|
|
/* 0276ECF4 */ _t9 = cpu->r[8] + 0x00000250u;
|
|
/* 0276ECF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276ECF8 */ Gambit_fn_0209CF00(cpu);
|
|
/* 0276ECFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276ED00 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ED00 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276ED00 */ if (_t11) goto L_0276ED04; else goto L_0276ED60;
|
|
L_0276ED04: ; // 0x276ed04
|
|
/* 0276ED04 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 0276ED04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276ED08 */ cpu->r[29] = 0x101D0000u;
|
|
/* 0276ED0C */ _t13 = cpu->r[29] + 0xFFFF8FC8u;
|
|
/* 0276ED0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276ED0C */ cpu->r[29] = _t13;
|
|
/* 0276ED10 */ cpu->r[12] = cpu->r[11] + cpu->r[9];
|
|
/* 0276ED14 */ _t14 = cpu->r[12] + 0x00000104u;
|
|
/* 0276ED14 */ cpu->r[8] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0276ED18 */ _t15 = cpu->r[11] + 0x00000030u;
|
|
/* 0276ED18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0276ED1C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276ED20 */ _t16 = cpu->r[10] + cpu->r[0];
|
|
/* 0276ED20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0276ED24 */ _t17 = cpu->r[12] + 0x00000004u;
|
|
/* 0276ED24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276ED28 */ _t18 = cpu->r[8] + 0x00000000u;
|
|
/* 0276ED28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276ED2C */ Gambit_fn_0277CE64(cpu);
|
|
/* 0276ED30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276ED34 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ED34 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276ED34 */ if (_t20) goto L_0276ED80; else goto L_0276ED38;
|
|
L_0276ED38: ; // 0x276ed38
|
|
/* 0276ED38 */ _t21 = cpu->r[31] + 0x00000008u;
|
|
/* 0276ED38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276ED3C */ _t22 = cpu->r[10] + 0x000000A4u;
|
|
/* 0276ED3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276ED40 */ cpu->r[4] = cpu->r[31] + 0x00000220u;
|
|
/* 0276ED44 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276ED48 */ /* nop */
|
|
/* 0276ED4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 0276ED50 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ED50 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0276ED50 */ if (_t24) goto L_0276EE8C; else goto L_0276ED54;
|
|
L_0276ED54: ; // 0x276ed54
|
|
/* 0276ED54 */ /* nop */
|
|
/* 0276ED58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276ED5C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276ED5C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0276ED5C */ if (_t26) goto L_0276EE8C; else goto L_0276ED60;
|
|
L_0276ED60: ; // 0x276ed60
|
|
/* 0276ED60 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 0276ED60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0276ED64 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 0276ED64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276ED68 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0276ED68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0276ED6C */ cpu->lr = cpu->r[0];
|
|
/* 0276ED70 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276ED70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0276ED74 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0276ED78 */ cpu->r[3] = 0x00000000u;
|
|
/* 0276ED7C */ return;
|
|
L_0276ED80: ; // 0x276ed80
|
|
/* 0276ED80 */ _t31 = cpu->r[29] + 0x00000000u;
|
|
/* 0276ED80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0276ED84 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 0276ED84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0276ED88 */ cpu->r[10] = cpu->r[11] + cpu->r[0];
|
|
/* 0276ED8C */ _t33 = cpu->r[10] + 0x00000104u;
|
|
/* 0276ED8C */ cpu->r[0] = rbrew_read8(cpu->mem, _t33);
|
|
/* 0276ED90 */ _t34 = cpu->r[11] + 0x00000030u;
|
|
/* 0276ED90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0276ED94 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276ED98 */ _t35 = cpu->r[12] + cpu->r[8];
|
|
/* 0276ED98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0276ED9C */ _t36 = cpu->r[9] + 0x00000004u;
|
|
/* 0276ED9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0276EDA0 */ _t37 = cpu->r[10] + 0x00000000u;
|
|
/* 0276EDA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0276EDA4 */ Gambit_fn_0277CEBC(cpu);
|
|
/* 0276EDA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276EDAC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EDAC */ _t39 = _t38 & 0x00000001u;
|
|
/* 0276EDAC */ if (_t39) goto L_0276EDE4; else goto L_0276EDB0;
|
|
L_0276EDB0: ; // 0x276edb0
|
|
/* 0276EDB0 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276EDB4 */ cpu->r[4] = 0x00000003u;
|
|
/* 0276EDB8 */ Gambit_fn_0276C6F8(cpu);
|
|
/* 0276EDBC */ cpu->r[0] = 0x00000001u;
|
|
/* 0276EDC0 */ _t40 = cpu->r[31] + 0x00000298u;
|
|
/* 0276EDC0 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[0]);
|
|
/* 0276EDC4 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EDC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0276EDC8 */ cpu->r[3] = cpu->r[0];
|
|
/* 0276EDCC */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 0276EDCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0276EDD0 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 0276EDD0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0276EDD4 */ cpu->lr = cpu->r[0];
|
|
/* 0276EDD8 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276EDD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0276EDDC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0276EDE0 */ return;
|
|
L_0276EDE4: ; // 0x276ede4
|
|
/* 0276EDE4 */ _t45 = cpu->r[29] + 0x00000000u;
|
|
/* 0276EDE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0276EDE8 */ _t46 = cpu->r[30] + 0x00000000u;
|
|
/* 0276EDE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0276EDEC */ cpu->r[12] = cpu->r[11] + cpu->r[8];
|
|
/* 0276EDF0 */ _t47 = cpu->r[12] + 0x00000104u;
|
|
/* 0276EDF0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t47);
|
|
/* 0276EDF4 */ _t48 = cpu->r[11] + 0x00000030u;
|
|
/* 0276EDF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0276EDF8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276EDFC */ _t49 = cpu->r[9] + cpu->r[0];
|
|
/* 0276EDFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0276EE00 */ _t50 = cpu->r[11] + 0x00000004u;
|
|
/* 0276EE00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0276EE04 */ _t51 = cpu->r[12] + 0x00000000u;
|
|
/* 0276EE04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0276EE08 */ Gambit_fn_0277CF14(cpu);
|
|
/* 0276EE0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276EE10 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EE10 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0276EE10 */ if (_t53) goto L_0276EE48; else goto L_0276EE14;
|
|
L_0276EE14: ; // 0x276ee14
|
|
/* 0276EE14 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276EE18 */ cpu->r[4] = 0x00000004u;
|
|
/* 0276EE1C */ Gambit_fn_0276C6F8(cpu);
|
|
/* 0276EE20 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276EE24 */ _t54 = cpu->r[31] + 0x00000298u;
|
|
/* 0276EE24 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[0]);
|
|
/* 0276EE28 */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EE28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0276EE2C */ cpu->r[3] = cpu->r[0];
|
|
/* 0276EE30 */ _t56 = cpu->r[1] + 0x00000024u;
|
|
/* 0276EE30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0276EE34 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0276EE34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0276EE38 */ cpu->lr = cpu->r[0];
|
|
/* 0276EE3C */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276EE3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0276EE40 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0276EE44 */ return;
|
|
L_0276EE48: ; // 0x276ee48
|
|
/* 0276EE48 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276EE4C */ Gambit_fn_02002700(cpu);
|
|
/* 0276EE50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276EE54 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EE54 */ _t60 = _t59 & 0x00000001u;
|
|
/* 0276EE54 */ if (_t60) goto L_0276EE58; else goto L_0276EE8C;
|
|
L_0276EE58: ; // 0x276ee58
|
|
/* 0276EE58 */ _t61 = cpu->r[31] + 0x000001D4u;
|
|
/* 0276EE58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0276EE5C */ cpu->r[12] = 0x10100000u;
|
|
/* 0276EE60 */ _t62 = cpu->r[12] + 0x000016E0u;
|
|
/* 0276EE60 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 0276EE64 */ cpu->r[11] = 0x43300000u;
|
|
/* 0276EE68 */ cpu->r[12] = cpu->r[9] ^ 0x80000000u;
|
|
/* 0276EE6C */ _t63 = cpu->r[1] + 0x00000008u;
|
|
/* 0276EE6C */ rbrew_write32(cpu->mem, _t63, cpu->r[11]);
|
|
/* 0276EE70 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276EE70 */ rbrew_write32(cpu->mem, _t64, cpu->r[12]);
|
|
/* 0276EE74 */ _t65 = cpu->r[1] + 0x00000008u;
|
|
/* 0276EE74 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t65);
|
|
/* 0276EE78 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0276EE7C */ cpu->f[13] = (double)(float)cpu->f[0];
|
|
/* 0276EE80 */ _t66 = cpu->r[31] + 0x00000210u;
|
|
/* 0276EE80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0276EE84 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0276EE88 */ _t67 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276EE88 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0276EE88 */ if (_t68) goto L_0276ED60; else goto L_0276EE8C;
|
|
L_0276EE8C: ; // 0x276ee8c
|
|
/* 0276EE8C */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276EE90 */ cpu->r[4] = 0x00000002u;
|
|
/* 0276EE94 */ Gambit_fn_0276C6F8(cpu);
|
|
/* 0276EE98 */ cpu->r[0] = 0x00000001u;
|
|
/* 0276EE9C */ _t69 = cpu->r[31] + 0x00000298u;
|
|
/* 0276EE9C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]);
|
|
/* 0276EEA0 */ _t70 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EEA0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0276EEA4 */ cpu->r[3] = cpu->r[0];
|
|
/* 0276EEA8 */ _t71 = cpu->r[1] + 0x00000024u;
|
|
/* 0276EEA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0276EEAC */ _t72 = cpu->r[1] + 0x00000018u;
|
|
/* 0276EEAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0276EEB0 */ cpu->lr = cpu->r[0];
|
|
/* 0276EEB4 */ _t73 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276EEB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0276EEB8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0276EEBC */ return;
|
|
}
|
|
|
|
// fn_0276EEC4 @ 0x276eec4
|
|
void Gambit_fn_0276EEC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0276EEC4: ; // 0x276eec4
|
|
/* 0276EEC4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276EEC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276EEC4 */ cpu->r[1] = _t0;
|
|
/* 0276EEC8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276EEC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276EECC */ cpu->r[31] = cpu->r[3];
|
|
/* 0276EED0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EED0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276EED4 */ Gambit_fn_0276ECC4(cpu);
|
|
/* 0276EED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276EEDC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EEDC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276EEDC */ if (_t4) goto L_0276EEE0; else goto L_0276EF18;
|
|
L_0276EEE0: ; // 0x276eee0
|
|
/* 0276EEE0 */ _t5 = cpu->r[31] + 0x00000008u;
|
|
/* 0276EEE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276EEE4 */ _t6 = cpu->r[12] + 0x000000A4u;
|
|
/* 0276EEE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276EEE8 */ cpu->r[4] = cpu->r[31] + 0x00000208u;
|
|
/* 0276EEEC */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276EEF0 */ /* nop */
|
|
/* 0276EEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276EEF8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EEF8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276EEF8 */ if (_t8) goto L_0276EF18; else goto L_0276EEFC;
|
|
L_0276EEFC: ; // 0x276eefc
|
|
/* 0276EEFC */ /* nop */
|
|
/* 0276EF00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276EF04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EF04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276EF04 */ if (_t10) goto L_0276EF18; else goto L_0276EF08;
|
|
L_0276EF08: ; // 0x276ef08
|
|
/* 0276EF08 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276EF0C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276EF10 */ cpu->r[5] = cpu->r[4];
|
|
/* 0276EF14 */ Gambit_fn_0276EAD8(cpu);
|
|
L_0276EF18: ; // 0x276ef18
|
|
/* 0276EF18 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EF18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276EF1C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276EF1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276EF20 */ cpu->lr = cpu->r[0];
|
|
/* 0276EF24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276EF28 */ return;
|
|
}
|
|
|
|
// fn_0276EF30 @ 0x276ef30
|
|
void Gambit_fn_0276EF30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0276EF30: ; // 0x276ef30
|
|
/* 0276EF30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276EF30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276EF30 */ cpu->r[1] = _t0;
|
|
/* 0276EF34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276EF34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276EF38 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276EF3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EF3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276EF40 */ Gambit_fn_0276ECC4(cpu);
|
|
/* 0276EF44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276EF48 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EF48 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276EF48 */ if (_t4) goto L_0276EF4C; else goto L_0276EF94;
|
|
L_0276EF4C: ; // 0x276ef4c
|
|
/* 0276EF4C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276EF50 */ Gambit_fn_020026A4(cpu);
|
|
/* 0276EF54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276EF58 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EF58 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276EF58 */ if (_t6) goto L_0276EF94; else goto L_0276EF5C;
|
|
L_0276EF5C: ; // 0x276ef5c
|
|
/* 0276EF5C */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 0276EF5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276EF60 */ _t8 = cpu->r[12] + 0x000000A4u;
|
|
/* 0276EF60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276EF64 */ cpu->r[4] = cpu->r[31] + 0x0000025Cu;
|
|
/* 0276EF68 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276EF6C */ /* nop */
|
|
/* 0276EF70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276EF74 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EF74 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276EF74 */ if (_t10) goto L_0276EF94; else goto L_0276EF78;
|
|
L_0276EF78: ; // 0x276ef78
|
|
/* 0276EF78 */ /* nop */
|
|
/* 0276EF7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276EF80 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EF80 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0276EF80 */ if (_t12) goto L_0276EF94; else goto L_0276EF84;
|
|
L_0276EF84: ; // 0x276ef84
|
|
/* 0276EF84 */ cpu->r[5] = 0x00000001u;
|
|
/* 0276EF88 */ cpu->r[4] = 0x00000007u;
|
|
/* 0276EF8C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276EF90 */ Gambit_fn_0276EAD8(cpu);
|
|
L_0276EF94: ; // 0x276ef94
|
|
/* 0276EF94 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EF94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276EF98 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276EF98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276EF9C */ cpu->lr = cpu->r[0];
|
|
/* 0276EFA0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276EFA4 */ return;
|
|
}
|
|
|
|
// fn_0276EFAC @ 0x276efac
|
|
void Gambit_fn_0276EFAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0276EFAC: ; // 0x276efac
|
|
/* 0276EFAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276EFAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276EFAC */ cpu->r[1] = _t0;
|
|
/* 0276EFB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276EFB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276EFB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276EFB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276EFB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276EFBC */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 0276EFBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276EFC0 */ _t4 = cpu->r[10] + 0x000000A4u;
|
|
/* 0276EFC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276EFC4 */ cpu->r[4] = cpu->r[31] + 0x00000214u;
|
|
/* 0276EFC8 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276EFCC */ /* nop */
|
|
/* 0276EFD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276EFD4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EFD4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276EFD4 */ if (_t6) goto L_0276EFF4; else goto L_0276EFD8;
|
|
L_0276EFD8: ; // 0x276efd8
|
|
/* 0276EFD8 */ /* nop */
|
|
/* 0276EFDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276EFE0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276EFE0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276EFE0 */ if (_t8) goto L_0276EFF4; else goto L_0276EFE4;
|
|
L_0276EFE4: ; // 0x276efe4
|
|
/* 0276EFE4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0276EFE8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0276EFEC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276EFF0 */ Gambit_fn_0276EAD8(cpu);
|
|
L_0276EFF4: ; // 0x276eff4
|
|
/* 0276EFF4 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0276EFF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276EFF8 */ _t10 = cpu->r[11] + 0x00000234u;
|
|
/* 0276EFF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276EFFC */ cpu->ctr = cpu->r[12];
|
|
/* 0276F000 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276F004 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276F008 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276F00C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F00C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276F010 */ cpu->lr = cpu->r[0];
|
|
/* 0276F014 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276F018 */ return;
|
|
}
|
|
|
|
// fn_0276F020 @ 0x276f020
|
|
void Gambit_fn_0276F020(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0276F020: ; // 0x276f020
|
|
/* 0276F020 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276F020 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276F020 */ cpu->r[1] = _t0;
|
|
/* 0276F024 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F024 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276F028 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276F02C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F02C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276F030 */ _t3 = cpu->r[31] + 0x00000204u;
|
|
/* 0276F030 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276F034 */ _t4 = cpu->r[11] + 0x00000088u;
|
|
/* 0276F034 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276F038 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276F03C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 0276F03C */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0276F040 */ Gambit_fn_02778A04(cpu);
|
|
/* 0276F044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F048 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F048 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276F048 */ if (_t7) goto L_0276F04C; else goto L_0276F064;
|
|
L_0276F04C: ; // 0x276f04c
|
|
/* 0276F04C */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 0276F04C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276F050 */ _t9 = cpu->r[12] + 0x00000254u;
|
|
/* 0276F050 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276F054 */ cpu->ctr = cpu->r[0];
|
|
/* 0276F058 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276F05C */ cpu->r[4] = 0x00000001u;
|
|
/* 0276F060 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276F064: ; // 0x276f064
|
|
/* 0276F064 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F064 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276F068 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F068 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276F06C */ cpu->lr = cpu->r[0];
|
|
/* 0276F070 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276F074 */ return;
|
|
}
|
|
|
|
// fn_0276F07C @ 0x276f07c
|
|
void Gambit_fn_0276F07C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0276F07C: ; // 0x276f07c
|
|
/* 0276F07C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276F07C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276F07C */ cpu->r[1] = _t0;
|
|
/* 0276F080 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F080 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276F084 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276F088 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F088 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276F08C */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 0276F08C */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276F090 */ _t4 = cpu->r[10] + 0x000000A4u;
|
|
/* 0276F090 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276F094 */ cpu->r[4] = cpu->r[31] + 0x0000022Cu;
|
|
/* 0276F098 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276F09C */ /* nop */
|
|
/* 0276F0A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276F0A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F0A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276F0A4 */ if (_t6) goto L_0276F0EC; else goto L_0276F0A8;
|
|
L_0276F0A8: ; // 0x276f0a8
|
|
/* 0276F0A8 */ /* nop */
|
|
/* 0276F0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276F0B0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F0B0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276F0B0 */ if (_t8) goto L_0276F0EC; else goto L_0276F0B4;
|
|
L_0276F0B4: ; // 0x276f0b4
|
|
/* 0276F0B4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0276F0B8 */ cpu->r[4] = 0x00000003u;
|
|
/* 0276F0BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276F0C0 */ Gambit_fn_0276EAD8(cpu);
|
|
/* 0276F0C4 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0276F0C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276F0C8 */ _t10 = cpu->r[11] + 0x0000023Cu;
|
|
/* 0276F0C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276F0CC */ cpu->ctr = cpu->r[12];
|
|
/* 0276F0D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276F0D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276F0D8 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F0D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276F0DC */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F0DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276F0E0 */ cpu->lr = cpu->r[0];
|
|
/* 0276F0E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276F0E8 */ return;
|
|
L_0276F0EC: ; // 0x276f0ec
|
|
/* 0276F0EC */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276F0F0 */ cpu->r[4] = 0x00000002u;
|
|
/* 0276F0F4 */ Gambit_fn_0276C6F8(cpu);
|
|
/* 0276F0F8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F0F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276F0FC */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F0FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276F100 */ cpu->lr = cpu->r[0];
|
|
/* 0276F104 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276F108 */ return;
|
|
}
|
|
|
|
// fn_0276F124 @ 0x276f124
|
|
void Gambit_fn_0276F124(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0276F124: ; // 0x276f124
|
|
/* 0276F124 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276F124 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276F124 */ cpu->r[1] = _t0;
|
|
/* 0276F128 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F128 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276F12C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276F130 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F130 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276F134 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 0276F134 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276F138 */ _t4 = cpu->r[10] + 0x000000A4u;
|
|
/* 0276F138 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276F13C */ cpu->r[4] = cpu->r[31] + 0x00000238u;
|
|
/* 0276F140 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276F144 */ /* nop */
|
|
/* 0276F148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276F14C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F14C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276F14C */ if (_t6) goto L_0276F194; else goto L_0276F150;
|
|
L_0276F150: ; // 0x276f150
|
|
/* 0276F150 */ /* nop */
|
|
/* 0276F154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276F158 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F158 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276F158 */ if (_t8) goto L_0276F194; else goto L_0276F15C;
|
|
L_0276F15C: ; // 0x276f15c
|
|
/* 0276F15C */ cpu->r[5] = 0x00000000u;
|
|
/* 0276F160 */ cpu->r[4] = 0x00000004u;
|
|
/* 0276F164 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276F168 */ Gambit_fn_0276EAD8(cpu);
|
|
/* 0276F16C */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0276F16C */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276F170 */ _t10 = cpu->r[11] + 0x00000244u;
|
|
/* 0276F170 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276F174 */ cpu->ctr = cpu->r[12];
|
|
/* 0276F178 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276F17C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276F180 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276F184 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F184 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276F188 */ cpu->lr = cpu->r[0];
|
|
/* 0276F18C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276F190 */ return;
|
|
L_0276F194: ; // 0x276f194
|
|
/* 0276F194 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276F198 */ cpu->r[4] = 0x00000002u;
|
|
/* 0276F19C */ Gambit_fn_0276C6F8(cpu);
|
|
/* 0276F1A0 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F1A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276F1A4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F1A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0276F1A8 */ cpu->lr = cpu->r[0];
|
|
/* 0276F1AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276F1B0 */ return;
|
|
}
|
|
|
|
// fn_0276F1CC @ 0x276f1cc
|
|
void Gambit_fn_0276F1CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0276F1CC: ; // 0x276f1cc
|
|
/* 0276F1CC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276F1CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276F1CC */ cpu->r[1] = _t0;
|
|
/* 0276F1D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F1D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276F1D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276F1D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F1D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276F1DC */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 0276F1DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0276F1E0 */ _t4 = cpu->r[12] + 0x000000A4u;
|
|
/* 0276F1E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276F1E4 */ cpu->r[4] = cpu->r[31] + 0x00000244u;
|
|
/* 0276F1E8 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276F1EC */ /* nop */
|
|
/* 0276F1F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276F1F4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F1F4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276F1F4 */ if (_t6) goto L_0276F214; else goto L_0276F1F8;
|
|
L_0276F1F8: ; // 0x276f1f8
|
|
/* 0276F1F8 */ /* nop */
|
|
/* 0276F1FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276F200 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F200 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0276F200 */ if (_t8) goto L_0276F214; else goto L_0276F204;
|
|
L_0276F204: ; // 0x276f204
|
|
/* 0276F204 */ cpu->r[5] = 0x00000001u;
|
|
/* 0276F208 */ cpu->r[4] = 0x00000005u;
|
|
/* 0276F20C */ cpu->r[3] = cpu->r[31];
|
|
/* 0276F210 */ Gambit_fn_0276EAD8(cpu);
|
|
L_0276F214: ; // 0x276f214
|
|
/* 0276F214 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F214 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0276F218 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276F218 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276F21C */ cpu->lr = cpu->r[0];
|
|
/* 0276F220 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276F224 */ return;
|
|
}
|
|
|
|
// fn_0276F238 @ 0x276f238
|
|
void Gambit_fn_0276F238(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398;
|
|
|
|
L_0276F238: ; // 0x276f238
|
|
/* 0276F238 */ _t0 = cpu->r[1] + 0xFFFFFF58u;
|
|
/* 0276F238 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276F238 */ cpu->r[1] = _t0;
|
|
/* 0276F23C */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 0276F23C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0276F240 */ /* nop */
|
|
/* 0276F244 */ _t2 = cpu->r[1] + 0x00000098u;
|
|
/* 0276F244 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0276F248 */ /* nop */
|
|
/* 0276F24C */ /* nop */
|
|
/* 0276F250 */ cpu->r[0] = cpu->lr;
|
|
/* 0276F254 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276F254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276F258 */ _t3 = cpu->r[1] + 0x00000078u;
|
|
/* 0276F258 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 0276F25C */ _t4 = cpu->r[1] + 0x00000090u;
|
|
/* 0276F25C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0276F260 */ /* nop */
|
|
/* 0276F264 */ _t5 = cpu->r[1] + 0x000000A0u;
|
|
/* 0276F264 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 0276F268 */ _t6 = cpu->r[1] + 0x00000080u;
|
|
/* 0276F268 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 0276F26C */ _t7 = cpu->r[1] + 0x000000ACu;
|
|
/* 0276F26C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0276F270 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F270 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276F270 */ if (_t9) goto L_0276F274; else goto L_0276F284;
|
|
L_0276F274: ; // 0x276f274
|
|
/* 0276F274 */ cpu->r[3] = 0x000004CCu;
|
|
/* 0276F278 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F27C */ cpu->r[31] = cpu->r[3];
|
|
/* 0276F27C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0276F280 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F280 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276F280 */ if (_t11) goto L_0276FDC0; else goto L_0276F284;
|
|
L_0276F284: ; // 0x276f284
|
|
/* 0276F284 */ cpu->r[25] = 0x10100000u;
|
|
/* 0276F288 */ cpu->r[30] = 0x10110000u;
|
|
/* 0276F28C */ cpu->r[27] = 0x10100000u;
|
|
/* 0276F290 */ cpu->r[26] = cpu->r[31];
|
|
/* 0276F290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0276F294 */ cpu->r[30] = cpu->r[30] + 0x00007399u;
|
|
/* 0276F298 */ cpu->r[25] = cpu->r[25] + 0x00001288u;
|
|
/* 0276F29C */ cpu->r[27] = cpu->r[27] + 0x000012A0u;
|
|
/* 0276F2A0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F2A0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0276F2A0 */ if (_t13) goto L_0276F2A4; else goto L_0276F2B4;
|
|
L_0276F2A4: ; // 0x276f2a4
|
|
/* 0276F2A4 */ cpu->r[3] = 0x000000FCu;
|
|
/* 0276F2A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F2AC */ cpu->r[26] = cpu->r[3];
|
|
/* 0276F2AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0276F2B0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F2B0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0276F2B0 */ if (_t15) goto L_0276F52C; else goto L_0276F2B4;
|
|
L_0276F2B4: ; // 0x276f2b4
|
|
/* 0276F2B4 */ cpu->r[5] = 0x10100000u;
|
|
/* 0276F2B8 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276F2BC */ cpu->r[28] = 0x10100000u;
|
|
/* 0276F2C0 */ cpu->r[5] = cpu->r[5] + 0x00001740u;
|
|
/* 0276F2C4 */ cpu->r[3] = cpu->r[26];
|
|
/* 0276F2C8 */ cpu->r[28] = cpu->r[28] + 0x00001744u;
|
|
/* 0276F2CC */ cpu->r[7] = cpu->r[5];
|
|
/* 0276F2D0 */ cpu->r[8] = cpu->r[4];
|
|
/* 0276F2D4 */ cpu->r[6] = cpu->r[28];
|
|
/* 0276F2D8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276F2DC */ cpu->r[4] = 0x10110000u;
|
|
/* 0276F2E0 */ cpu->r[4] = cpu->r[4] + 0x0000085Cu;
|
|
/* 0276F2E4 */ cpu->r[23] = cpu->r[26] + 0x00000054u;
|
|
/* 0276F2E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0276F2E8 */ _t16 = cpu->r[26] + 0x00000000u;
|
|
/* 0276F2E8 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 0276F2EC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F2EC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276F2EC */ if (_t18) goto L_0276F2F0; else goto L_0276F310;
|
|
L_0276F2F0: ; // 0x276f2f0
|
|
/* 0276F2F0 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0276F2F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F2F8 */ cpu->r[23] = cpu->r[3];
|
|
/* 0276F2F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0276F2FC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F2FC */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276F2FC */ if (_t20) goto L_0276F300; else goto L_0276F310;
|
|
L_0276F300: ; // 0x276f300
|
|
/* 0276F300 */ cpu->r[3] = cpu->r[26] + 0x000000A0u;
|
|
/* 0276F300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F304 */ _t21 = cpu->r[30] + 0x00000000u;
|
|
/* 0276F304 */ cpu->r[29] = rbrew_read8(cpu->mem, _t21);
|
|
/* 0276F308 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F308 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0276F308 */ if (_t23) goto L_0276F3B4; else goto L_0276F30C;
|
|
L_0276F30C: ; // 0x276f30c
|
|
/* 0276F30C */ goto L_0276F3C4;
|
|
L_0276F310: ; // 0x276f310
|
|
/* 0276F310 */ cpu->r[24] = cpu->r[23];
|
|
/* 0276F310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0276F314 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F314 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0276F314 */ if (_t25) goto L_0276F318; else goto L_0276F33C;
|
|
L_0276F318: ; // 0x276f318
|
|
/* 0276F318 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0276F31C */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F320 */ cpu->r[24] = cpu->r[3];
|
|
/* 0276F320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0276F324 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F324 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0276F324 */ if (_t27) goto L_0276F328; else goto L_0276F33C;
|
|
L_0276F328: ; // 0x276f328
|
|
/* 0276F328 */ cpu->r[8] = 0x10100000u;
|
|
/* 0276F32C */ _t28 = cpu->r[30] + 0x00000000u;
|
|
/* 0276F32C */ cpu->r[29] = rbrew_read8(cpu->mem, _t28);
|
|
/* 0276F330 */ cpu->r[8] = cpu->r[8] + 0x00001330u;
|
|
/* 0276F334 */ _t29 = cpu->r[23] + 0x00000004u;
|
|
/* 0276F334 */ rbrew_write32(cpu->mem, _t29, cpu->r[8]);
|
|
/* 0276F338 */ goto L_0276F3AC;
|
|
L_0276F33C: ; // 0x276f33c
|
|
/* 0276F33C */ cpu->r[3] = cpu->r[24];
|
|
/* 0276F33C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F340 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F340 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0276F340 */ if (_t31) goto L_0276F344; else goto L_0276F370;
|
|
L_0276F344: ; // 0x276f344
|
|
/* 0276F344 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276F348 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F34C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F350 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F350 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0276F350 */ if (_t33) goto L_0276F354; else goto L_0276F370;
|
|
L_0276F354: ; // 0x276f354
|
|
/* 0276F354 */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 0276F354 */ cpu->r[29] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0276F358 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276F35C */ cpu->r[0] = cpu->r[0] + 0x00001318u;
|
|
/* 0276F360 */ _t35 = cpu->r[24] + 0x00000000u;
|
|
/* 0276F360 */ cpu->r[7] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0276F364 */ _t36 = cpu->r[24] + 0x00000004u;
|
|
/* 0276F364 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 0276F368 */ _t37 = cpu->r[7] + 0x00000000u;
|
|
/* 0276F368 */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[29]);
|
|
/* 0276F36C */ goto L_0276F3A0;
|
|
L_0276F370: ; // 0x276f370
|
|
/* 0276F370 */ cpu->r[5] = cpu->r[24] + 0x0000000Cu;
|
|
/* 0276F374 */ _t38 = cpu->r[3] + 0x00000004u;
|
|
/* 0276F374 */ rbrew_write32(cpu->mem, _t38, cpu->r[27]);
|
|
/* 0276F378 */ cpu->r[6] = 0x00000040u;
|
|
/* 0276F37C */ _t39 = cpu->r[3] + 0x00000000u;
|
|
/* 0276F37C */ rbrew_write32(cpu->mem, _t39, cpu->r[5]);
|
|
/* 0276F380 */ _t40 = cpu->r[3] + 0x00000008u;
|
|
/* 0276F380 */ rbrew_write32(cpu->mem, _t40, cpu->r[6]);
|
|
/* 0276F384 */ _t41 = cpu->r[30] + 0x00000000u;
|
|
/* 0276F384 */ cpu->r[29] = rbrew_read8(cpu->mem, _t41);
|
|
/* 0276F388 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276F38C */ _t42 = cpu->r[24] + 0x0000004Bu;
|
|
/* 0276F38C */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[29]);
|
|
/* 0276F390 */ cpu->r[0] = cpu->r[0] + 0x00001318u;
|
|
/* 0276F394 */ _t43 = cpu->r[24] + 0x00000000u;
|
|
/* 0276F394 */ cpu->r[7] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0276F398 */ _t44 = cpu->r[24] + 0x00000004u;
|
|
/* 0276F398 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 0276F39C */ _t45 = cpu->r[7] + 0x00000000u;
|
|
/* 0276F39C */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[29]);
|
|
L_0276F3A0: ; // 0x276f3a0
|
|
/* 0276F3A0 */ cpu->r[8] = 0x10100000u;
|
|
/* 0276F3A4 */ cpu->r[8] = cpu->r[8] + 0x00001330u;
|
|
/* 0276F3A8 */ _t46 = cpu->r[23] + 0x00000004u;
|
|
/* 0276F3A8 */ rbrew_write32(cpu->mem, _t46, cpu->r[8]);
|
|
L_0276F3AC: ; // 0x276f3ac
|
|
/* 0276F3AC */ cpu->r[3] = cpu->r[26] + 0x000000A0u;
|
|
/* 0276F3AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F3B0 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F3B0 */ _t48 = _t47 & 0x00000001u;
|
|
/* 0276F3B0 */ if (_t48) goto L_0276F3B4; else goto L_0276F3C4;
|
|
L_0276F3B4: ; // 0x276f3b4
|
|
/* 0276F3B4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276F3B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F3BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F3C0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F3C0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0276F3C0 */ if (_t50) goto L_0276F3EC; else goto L_0276F3C4;
|
|
L_0276F3C4: ; // 0x276f3c4
|
|
/* 0276F3C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F3C8 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F3C8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0276F3C8 */ if (_t52) goto L_0276F3CC; else goto L_0276F3DC;
|
|
L_0276F3CC: ; // 0x276f3cc
|
|
/* 0276F3CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276F3D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F3D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F3D8 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F3D8 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0276F3D8 */ if (_t54) goto L_0276F3EC; else goto L_0276F3DC;
|
|
L_0276F3DC: ; // 0x276f3dc
|
|
/* 0276F3DC */ _t55 = cpu->r[3] + 0x00000000u;
|
|
/* 0276F3DC */ rbrew_write32(cpu->mem, _t55, cpu->r[3]);
|
|
/* 0276F3E0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0276F3E4 */ _t56 = cpu->r[3] + 0x00000004u;
|
|
/* 0276F3E4 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 0276F3E8 */ _t57 = cpu->r[3] + 0x00000008u;
|
|
/* 0276F3E8 */ rbrew_write32(cpu->mem, _t57, cpu->r[0]);
|
|
L_0276F3EC: ; // 0x276f3ec
|
|
/* 0276F3EC */ cpu->r[9] = 0x10100000u;
|
|
/* 0276F3F0 */ cpu->r[9] = cpu->r[9] + 0x00001270u;
|
|
/* 0276F3F4 */ cpu->r[23] = cpu->r[26] + 0x000000B0u;
|
|
/* 0276F3F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0276F3F8 */ _t58 = cpu->r[26] + 0x000000ACu;
|
|
/* 0276F3F8 */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 0276F3FC */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F3FC */ _t60 = _t59 & 0x00000001u;
|
|
/* 0276F3FC */ if (_t60) goto L_0276F400; else goto L_0276F410;
|
|
L_0276F400: ; // 0x276f400
|
|
/* 0276F400 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0276F404 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F408 */ cpu->r[23] = cpu->r[3];
|
|
/* 0276F408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0276F40C */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F40C */ _t62 = _t61 & 0x00000001u;
|
|
/* 0276F40C */ if (_t62) goto L_0276F478; else goto L_0276F410;
|
|
L_0276F410: ; // 0x276f410
|
|
/* 0276F410 */ cpu->r[24] = cpu->r[23];
|
|
/* 0276F410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0276F414 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F414 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0276F414 */ if (_t64) goto L_0276F418; else goto L_0276F428;
|
|
L_0276F418: ; // 0x276f418
|
|
/* 0276F418 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0276F41C */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F420 */ cpu->r[24] = cpu->r[3];
|
|
/* 0276F420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0276F424 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F424 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0276F424 */ if (_t66) goto L_0276F46C; else goto L_0276F428;
|
|
L_0276F428: ; // 0x276f428
|
|
/* 0276F428 */ cpu->r[3] = cpu->r[24];
|
|
/* 0276F428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F42C */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F42C */ _t68 = _t67 & 0x00000001u;
|
|
/* 0276F42C */ if (_t68) goto L_0276F430; else goto L_0276F440;
|
|
L_0276F430: ; // 0x276f430
|
|
/* 0276F430 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276F434 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F43C */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F43C */ _t70 = _t69 & 0x00000001u;
|
|
/* 0276F43C */ if (_t70) goto L_0276F458; else goto L_0276F440;
|
|
L_0276F440: ; // 0x276f440
|
|
/* 0276F440 */ cpu->r[10] = cpu->r[24] + 0x0000000Cu;
|
|
/* 0276F444 */ _t71 = cpu->r[3] + 0x00000004u;
|
|
/* 0276F444 */ rbrew_write32(cpu->mem, _t71, cpu->r[27]);
|
|
/* 0276F448 */ cpu->r[11] = 0x00000040u;
|
|
/* 0276F44C */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0276F44C */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 0276F450 */ _t73 = cpu->r[3] + 0x00000008u;
|
|
/* 0276F450 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 0276F454 */ _t74 = cpu->r[24] + 0x0000004Bu;
|
|
/* 0276F454 */ rbrew_write8(cpu->mem, _t74, (uint8_t)cpu->r[29]);
|
|
L_0276F458: ; // 0x276f458
|
|
/* 0276F458 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276F45C */ _t75 = cpu->r[24] + 0x00000000u;
|
|
/* 0276F45C */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0276F460 */ cpu->r[12] = cpu->r[12] + 0x00001318u;
|
|
/* 0276F464 */ _t76 = cpu->r[24] + 0x00000004u;
|
|
/* 0276F464 */ rbrew_write32(cpu->mem, _t76, cpu->r[12]);
|
|
/* 0276F468 */ _t77 = cpu->r[4] + 0x00000000u;
|
|
/* 0276F468 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[29]);
|
|
L_0276F46C: ; // 0x276f46c
|
|
/* 0276F46C */ cpu->r[0] = 0x10100000u;
|
|
/* 0276F470 */ cpu->r[0] = cpu->r[0] + 0x00001330u;
|
|
/* 0276F474 */ _t78 = cpu->r[23] + 0x00000004u;
|
|
/* 0276F474 */ rbrew_write32(cpu->mem, _t78, cpu->r[0]);
|
|
L_0276F478: ; // 0x276f478
|
|
/* 0276F478 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 0276F478 */ rbrew_write32(cpu->mem, _t79, cpu->r[25]);
|
|
/* 0276F47C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0276F480 */ _t80 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F480 */ rbrew_write32(cpu->mem, _t80, cpu->r[28]);
|
|
/* 0276F484 */ _t81 = cpu->r[26] + 0x00000054u;
|
|
/* 0276F484 */ cpu->r[24] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0276F488 */ Gambit_fn_02770148(cpu);
|
|
/* 0276F48C */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F48C */ cpu->r[7] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0276F490 */ _t83 = cpu->r[7] + 0x00000000u;
|
|
/* 0276F490 */ cpu->r[0] = rbrew_read8(cpu->mem, _t83);
|
|
/* 0276F494 */ cpu->r[12] = cpu->r[29];
|
|
/* 0276F498 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0276F49C */ cpu->r[8] = 0x00080000u;
|
|
/* 0276F4A0 */ cpu->r[28] = 0x00000000u;
|
|
/* 0276F4A4 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F4A4 */ _t85 = _t84 & 0x00000001u;
|
|
/* 0276F4A4 */ if (_t85) goto L_0276F4CC; else goto L_0276F4A8;
|
|
L_0276F4A8: ; // 0x276f4a8
|
|
/* 0276F4A8 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 0276F4AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[8]);
|
|
/* 0276F4B0 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0276F4B4 */ _t86 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276F4B4 */ _t87 = _t86 & 0x00000001u;
|
|
/* 0276F4B4 */ if (_t87) goto L_0276F4C8; else goto L_0276F4B8;
|
|
L_0276F4B8: ; // 0x276f4b8
|
|
/* 0276F4B8 */ _t88 = cpu->r[7] + 0x00000000u;
|
|
/* 0276F4B8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t88);
|
|
/* 0276F4BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[12]);
|
|
/* 0276F4C0 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F4C0 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0276F4C0 */ if (_t90) goto L_0276F4C4; else goto L_0276F4A8;
|
|
L_0276F4C4: ; // 0x276f4c4
|
|
/* 0276F4C4 */ goto L_0276F4CC;
|
|
L_0276F4C8: ; // 0x276f4c8
|
|
/* 0276F4C8 */ cpu->r[28] = 0x00000000u;
|
|
L_0276F4CC: ; // 0x276f4cc
|
|
/* 0276F4CC */ _t91 = cpu->r[26] + 0x0000005Cu;
|
|
/* 0276F4CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0276F4D0 */ _t92 = cpu->r[1] + 0x00000018u;
|
|
/* 0276F4D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0276F4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[9]);
|
|
/* 0276F4D8 */ _t93 = cpu->r[8] + 0x00000014u;
|
|
/* 0276F4D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0276F4DC */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276F4DC */ _t95 = _t94 & 0x00000001u;
|
|
/* 0276F4DC */ if (_t95) goto L_0276F4E4; else goto L_0276F4E0;
|
|
L_0276F4E0: ; // 0x276f4e0
|
|
/* 0276F4E0 */ cpu->r[28] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0276F4E4: ; // 0x276f4e4
|
|
/* 0276F4E4 */ cpu->ctr = cpu->r[0];
|
|
/* 0276F4E8 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 0276F4EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276F4F0 */ _t96 = cpu->r[1] + 0x00000014u;
|
|
/* 0276F4F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0276F4F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276F4F8 */ cpu->r[5] = cpu->r[28];
|
|
/* 0276F4FC */ cpu->r[3] = cpu->r[24];
|
|
/* 0276F500 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276F504 */ _t97 = cpu->r[24] + cpu->r[28];
|
|
/* 0276F504 */ rbrew_write8(cpu->mem, _t97, (uint8_t)cpu->r[29]);
|
|
/* 0276F508 */ _t98 = cpu->r[26] + 0x00000058u;
|
|
/* 0276F508 */ cpu->r[4] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0276F50C */ _t99 = cpu->r[4] + 0x00000014u;
|
|
/* 0276F50C */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0276F510 */ cpu->ctr = cpu->r[0];
|
|
/* 0276F514 */ cpu->r[3] = cpu->r[26] + 0x00000054u;
|
|
/* 0276F518 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276F51C */ _t100 = cpu->r[26] + 0x00000054u;
|
|
/* 0276F51C */ cpu->r[4] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0276F520 */ cpu->r[3] = cpu->r[26];
|
|
/* 0276F524 */ _t101 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0276F524 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0276F524 */ if (_t102) goto L_0276F528; // else: addr-0 trap, fall-through
|
|
L_0276F528: ; // 0x276f528
|
|
/* 0276F528 */ Gambit_fn_027F8F3C(cpu);
|
|
L_0276F52C: ; // 0x276f52c
|
|
/* 0276F52C */ cpu->r[6] = 0x10100000u;
|
|
/* 0276F530 */ cpu->r[4] = 0x10100000u;
|
|
/* 0276F534 */ _t103 = cpu->r[6] + 0x00001608u;
|
|
/* 0276F534 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0276F538 */ cpu->r[11] = 0x10100000u;
|
|
/* 0276F53C */ _t104 = cpu->r[4] + 0x000016ECu;
|
|
/* 0276F53C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0276F540 */ cpu->r[29] = cpu->r[31] + 0x000000FCu;
|
|
/* 0276F540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276F544 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276F548 */ cpu->r[26] = 0x10110000u;
|
|
/* 0276F54C */ _t105 = cpu->r[11] + 0x000016E8u;
|
|
/* 0276F54C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0276F550 */ cpu->r[0] = cpu->r[0] + 0x00001440u;
|
|
/* 0276F554 */ cpu->r[26] = cpu->r[26] + 0x00000A2Cu;
|
|
/* 0276F558 */ _t106 = cpu->r[31] + 0x00000000u;
|
|
/* 0276F558 */ rbrew_write32(cpu->mem, _t106, cpu->r[0]);
|
|
/* 0276F55C */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F55C */ _t108 = _t107 & 0x00000001u;
|
|
/* 0276F55C */ if (_t108) goto L_0276F560; else goto L_0276F570;
|
|
L_0276F560: ; // 0x276f560
|
|
/* 0276F560 */ cpu->r[3] = 0x00000060u;
|
|
/* 0276F564 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F568 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276F568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276F56C */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F56C */ _t110 = _t109 & 0x00000001u;
|
|
/* 0276F56C */ if (_t110) goto L_0276F5A4; else goto L_0276F570;
|
|
L_0276F570: ; // 0x276f570
|
|
/* 0276F570 */ cpu->r[5] = 0x10100000u;
|
|
/* 0276F574 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276F578 */ cpu->r[6] = 0x10100000u;
|
|
/* 0276F57C */ cpu->r[5] = cpu->r[5] + 0x00001710u;
|
|
/* 0276F580 */ cpu->r[8] = 0x00000000u;
|
|
/* 0276F584 */ cpu->r[6] = cpu->r[6] + 0x00001718u;
|
|
/* 0276F588 */ cpu->r[7] = cpu->r[5];
|
|
/* 0276F58C */ cpu->r[3] = cpu->r[29];
|
|
/* 0276F590 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276F594 */ _t111 = cpu->r[29] + 0x00000058u;
|
|
/* 0276F594 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[29]);
|
|
/* 0276F598 */ _t112 = cpu->r[29] + 0x00000054u;
|
|
/* 0276F598 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[31]);
|
|
/* 0276F59C */ _t113 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0276F59C */ rbrew_write_f32(cpu->mem, _t113, cpu->f[30]);
|
|
/* 0276F5A0 */ _t114 = cpu->r[29] + 0x00000000u;
|
|
/* 0276F5A0 */ rbrew_write32(cpu->mem, _t114, cpu->r[26]);
|
|
L_0276F5A4: ; // 0x276f5a4
|
|
/* 0276F5A4 */ cpu->r[29] = cpu->r[31] + 0x0000015Cu;
|
|
/* 0276F5A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276F5A8 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F5A8 */ _t116 = _t115 & 0x00000001u;
|
|
/* 0276F5A8 */ if (_t116) goto L_0276F5AC; else goto L_0276F5BC;
|
|
L_0276F5AC: ; // 0x276f5ac
|
|
/* 0276F5AC */ cpu->r[3] = 0x00000060u;
|
|
/* 0276F5B0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F5B4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276F5B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276F5B8 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F5B8 */ _t118 = _t117 & 0x00000001u;
|
|
/* 0276F5B8 */ if (_t118) goto L_0276F5F8; else goto L_0276F5BC;
|
|
L_0276F5BC: ; // 0x276f5bc
|
|
/* 0276F5BC */ cpu->r[5] = 0x10100000u;
|
|
/* 0276F5C0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276F5C4 */ cpu->r[6] = 0x10100000u;
|
|
/* 0276F5C8 */ cpu->r[5] = cpu->r[5] + 0x00001720u;
|
|
/* 0276F5CC */ cpu->r[8] = 0x00000000u;
|
|
/* 0276F5D0 */ cpu->r[6] = cpu->r[6] + 0x00001728u;
|
|
/* 0276F5D4 */ cpu->r[7] = cpu->r[5];
|
|
/* 0276F5D8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276F5DC */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276F5E0 */ _t119 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0276F5E0 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[30]);
|
|
/* 0276F5E4 */ cpu->r[7] = 0x10100000u;
|
|
/* 0276F5E8 */ _t120 = cpu->r[29] + 0x00000058u;
|
|
/* 0276F5E8 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[29]);
|
|
/* 0276F5EC */ _t121 = cpu->r[7] + 0x000016F0u;
|
|
/* 0276F5EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 0276F5F0 */ _t122 = cpu->r[29] + 0x00000000u;
|
|
/* 0276F5F0 */ rbrew_write32(cpu->mem, _t122, cpu->r[26]);
|
|
/* 0276F5F4 */ _t123 = cpu->r[29] + 0x00000054u;
|
|
/* 0276F5F4 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[11]);
|
|
L_0276F5F8: ; // 0x276f5f8
|
|
/* 0276F5F8 */ cpu->r[29] = cpu->r[31] + 0x000001BCu;
|
|
/* 0276F5F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276F5FC */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F5FC */ _t125 = _t124 & 0x00000001u;
|
|
/* 0276F5FC */ if (_t125) goto L_0276F600; else goto L_0276F610;
|
|
L_0276F600: ; // 0x276f600
|
|
/* 0276F600 */ cpu->r[3] = 0x00000060u;
|
|
/* 0276F604 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F608 */ cpu->r[29] = cpu->r[3];
|
|
/* 0276F608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276F60C */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F60C */ _t127 = _t126 & 0x00000001u;
|
|
/* 0276F60C */ if (_t127) goto L_0276F64C; else goto L_0276F610;
|
|
L_0276F610: ; // 0x276f610
|
|
/* 0276F610 */ cpu->r[5] = 0x10100000u;
|
|
/* 0276F614 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276F618 */ cpu->r[6] = 0x10100000u;
|
|
/* 0276F61C */ cpu->r[5] = cpu->r[5] + 0x00001730u;
|
|
/* 0276F620 */ cpu->r[8] = 0x00000000u;
|
|
/* 0276F624 */ cpu->r[6] = cpu->r[6] + 0x00001738u;
|
|
/* 0276F628 */ cpu->r[7] = cpu->r[5];
|
|
/* 0276F62C */ cpu->r[3] = cpu->r[29];
|
|
/* 0276F630 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276F634 */ _t128 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0276F634 */ rbrew_write_f32(cpu->mem, _t128, cpu->f[30]);
|
|
/* 0276F638 */ cpu->r[5] = 0x10100000u;
|
|
/* 0276F63C */ _t129 = cpu->r[29] + 0x00000058u;
|
|
/* 0276F63C */ rbrew_write_f32(cpu->mem, _t129, cpu->f[29]);
|
|
/* 0276F640 */ _t130 = cpu->r[5] + 0x000016F4u;
|
|
/* 0276F640 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 0276F644 */ _t131 = cpu->r[29] + 0x00000000u;
|
|
/* 0276F644 */ rbrew_write32(cpu->mem, _t131, cpu->r[26]);
|
|
/* 0276F648 */ _t132 = cpu->r[29] + 0x00000054u;
|
|
/* 0276F648 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[12]);
|
|
L_0276F64C: ; // 0x276f64c
|
|
/* 0276F64C */ cpu->r[29] = cpu->r[31] + 0x0000021Cu;
|
|
/* 0276F64C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276F650 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F650 */ _t134 = _t133 & 0x00000001u;
|
|
/* 0276F650 */ if (_t134) goto L_0276F654; else goto L_0276F664;
|
|
L_0276F654: ; // 0x276f654
|
|
/* 0276F654 */ cpu->r[3] = 0x00000060u;
|
|
/* 0276F658 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F65C */ cpu->r[29] = cpu->r[3];
|
|
/* 0276F65C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0276F660 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F660 */ _t136 = _t135 & 0x00000001u;
|
|
/* 0276F660 */ if (_t136) goto L_0276F6A8; else goto L_0276F664;
|
|
L_0276F664: ; // 0x276f664
|
|
/* 0276F664 */ cpu->r[5] = 0x10100000u;
|
|
/* 0276F668 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276F66C */ cpu->r[6] = 0x10100000u;
|
|
/* 0276F670 */ cpu->r[5] = cpu->r[5] + 0x00001708u;
|
|
/* 0276F674 */ cpu->r[8] = 0x00000000u;
|
|
/* 0276F678 */ cpu->r[6] = cpu->r[6] + 0x0000174Cu;
|
|
/* 0276F67C */ cpu->r[7] = cpu->r[5];
|
|
/* 0276F680 */ cpu->r[3] = cpu->r[29];
|
|
/* 0276F684 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276F688 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276F68C */ _t137 = cpu->r[29] + 0x00000000u;
|
|
/* 0276F68C */ rbrew_write32(cpu->mem, _t137, cpu->r[26]);
|
|
/* 0276F690 */ cpu->r[8] = 0x10100000u;
|
|
/* 0276F694 */ _t138 = cpu->r[12] + 0x000016F8u;
|
|
/* 0276F694 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0276F698 */ _t139 = cpu->r[8] + 0x000016FCu;
|
|
/* 0276F698 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 0276F69C */ _t140 = cpu->r[29] + 0x00000054u;
|
|
/* 0276F69C */ rbrew_write_f32(cpu->mem, _t140, cpu->f[13]);
|
|
/* 0276F6A0 */ _t141 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0276F6A0 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[0]);
|
|
/* 0276F6A4 */ _t142 = cpu->r[29] + 0x00000058u;
|
|
/* 0276F6A4 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[31]);
|
|
L_0276F6A8: ; // 0x276f6a8
|
|
/* 0276F6A8 */ cpu->r[0] = cpu->r[31] + 0x0000027Cu;
|
|
/* 0276F6A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276F6AC */ _t143 = cpu->r[1] + 0x00000008u;
|
|
/* 0276F6AC */ rbrew_write32(cpu->mem, _t143, cpu->r[0]);
|
|
/* 0276F6B0 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F6B0 */ _t145 = _t144 & 0x00000001u;
|
|
/* 0276F6B0 */ if (_t145) goto L_0276F6B4; else goto L_0276F6C8;
|
|
L_0276F6B4: ; // 0x276f6b4
|
|
/* 0276F6B4 */ cpu->r[3] = 0x000001C4u;
|
|
/* 0276F6B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F6BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F6C0 */ _t146 = cpu->r[1] + 0x00000008u;
|
|
/* 0276F6C0 */ rbrew_write32(cpu->mem, _t146, cpu->r[3]);
|
|
/* 0276F6C4 */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F6C4 */ _t148 = _t147 & 0x00000001u;
|
|
/* 0276F6C4 */ if (_t148) goto L_0276FD20; else goto L_0276F6C8;
|
|
L_0276F6C8: ; // 0x276f6c8
|
|
/* 0276F6C8 */ _t149 = cpu->r[1] + 0x00000008u;
|
|
/* 0276F6C8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0276F6CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0276F6D0 */ _t150 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F6D0 */ _t151 = _t150 & 0x00000001u;
|
|
/* 0276F6D0 */ if (_t151) goto L_0276F6D4; else goto L_0276F6E4;
|
|
L_0276F6D4: ; // 0x276f6d4
|
|
/* 0276F6D4 */ cpu->r[3] = 0x000001C4u;
|
|
/* 0276F6D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F6DC */ cpu->r[28] = cpu->r[3];
|
|
/* 0276F6DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0276F6E0 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F6E0 */ _t153 = _t152 & 0x00000001u;
|
|
/* 0276F6E0 */ if (_t153) goto L_0276FD10; else goto L_0276F6E4;
|
|
L_0276F6E4: ; // 0x276f6e4
|
|
/* 0276F6E4 */ cpu->r[23] = cpu->r[28];
|
|
/* 0276F6E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0276F6E8 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F6E8 */ _t155 = _t154 & 0x00000001u;
|
|
/* 0276F6E8 */ if (_t155) goto L_0276F6EC; else goto L_0276F728;
|
|
L_0276F6EC: ; // 0x276f6ec
|
|
/* 0276F6EC */ cpu->r[3] = 0x000000FCu;
|
|
/* 0276F6F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F6F4 */ cpu->r[23] = cpu->r[3];
|
|
/* 0276F6F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0276F6F8 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F6F8 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0276F6F8 */ if (_t157) goto L_0276F6FC; else goto L_0276F728;
|
|
L_0276F6FC: ; // 0x276f6fc
|
|
/* 0276F6FC */ cpu->r[22] = 0x02770000u;
|
|
/* 0276F700 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276F704 */ cpu->r[24] = 0x10100000u;
|
|
/* 0276F708 */ cpu->r[22] = cpu->r[22] + 0x00000148u;
|
|
/* 0276F70C */ _t158 = cpu->r[30] + 0x00000000u;
|
|
/* 0276F70C */ cpu->r[29] = rbrew_read8(cpu->mem, _t158);
|
|
/* 0276F710 */ cpu->r[0] = cpu->r[0] + 0x000014D8u;
|
|
/* 0276F714 */ cpu->r[3] = cpu->r[28] + 0x000000FCu;
|
|
/* 0276F714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F718 */ cpu->r[24] = cpu->r[24] + 0x0000176Cu;
|
|
/* 0276F71C */ _t159 = cpu->r[28] + 0x00000000u;
|
|
/* 0276F71C */ rbrew_write32(cpu->mem, _t159, cpu->r[0]);
|
|
/* 0276F720 */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F720 */ _t161 = _t160 & 0x00000001u;
|
|
/* 0276F720 */ if (_t161) goto L_0276F724; else goto L_0276F9D0;
|
|
L_0276F724: ; // 0x276f724
|
|
/* 0276F724 */ goto L_0276F9C0;
|
|
L_0276F728: ; // 0x276f728
|
|
/* 0276F728 */ cpu->r[24] = 0x10100000u;
|
|
/* 0276F72C */ cpu->r[5] = 0x10100000u;
|
|
/* 0276F730 */ cpu->r[24] = cpu->r[24] + 0x0000176Cu;
|
|
/* 0276F734 */ cpu->r[4] = cpu->r[31];
|
|
/* 0276F738 */ cpu->r[5] = cpu->r[5] + 0x00001754u;
|
|
/* 0276F73C */ cpu->r[6] = cpu->r[24];
|
|
/* 0276F740 */ cpu->r[8] = 0x00000000u;
|
|
/* 0276F744 */ cpu->r[7] = cpu->r[5];
|
|
/* 0276F748 */ cpu->r[3] = cpu->r[23];
|
|
/* 0276F74C */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276F750 */ cpu->r[11] = 0x10110000u;
|
|
/* 0276F754 */ cpu->r[11] = cpu->r[11] + 0x0000085Cu;
|
|
/* 0276F758 */ cpu->r[21] = cpu->r[23] + 0x00000054u;
|
|
/* 0276F758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0276F75C */ _t162 = cpu->r[23] + 0x00000000u;
|
|
/* 0276F75C */ rbrew_write32(cpu->mem, _t162, cpu->r[11]);
|
|
/* 0276F760 */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F760 */ _t164 = _t163 & 0x00000001u;
|
|
/* 0276F760 */ if (_t164) goto L_0276F764; else goto L_0276F784;
|
|
L_0276F764: ; // 0x276f764
|
|
/* 0276F764 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0276F768 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F76C */ cpu->r[21] = cpu->r[3];
|
|
/* 0276F76C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0276F770 */ _t165 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F770 */ _t166 = _t165 & 0x00000001u;
|
|
/* 0276F770 */ if (_t166) goto L_0276F774; else goto L_0276F784;
|
|
L_0276F774: ; // 0x276f774
|
|
/* 0276F774 */ cpu->r[3] = cpu->r[23] + 0x000000A0u;
|
|
/* 0276F774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F778 */ _t167 = cpu->r[30] + 0x00000000u;
|
|
/* 0276F778 */ cpu->r[29] = rbrew_read8(cpu->mem, _t167);
|
|
/* 0276F77C */ _t168 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F77C */ _t169 = _t168 & 0x00000001u;
|
|
/* 0276F77C */ if (_t169) goto L_0276F828; else goto L_0276F780;
|
|
L_0276F780: ; // 0x276f780
|
|
/* 0276F780 */ goto L_0276F838;
|
|
L_0276F784: ; // 0x276f784
|
|
/* 0276F784 */ cpu->r[22] = cpu->r[21];
|
|
/* 0276F784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0276F788 */ _t170 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F788 */ _t171 = _t170 & 0x00000001u;
|
|
/* 0276F788 */ if (_t171) goto L_0276F78C; else goto L_0276F7B0;
|
|
L_0276F78C: ; // 0x276f78c
|
|
/* 0276F78C */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0276F790 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F794 */ cpu->r[22] = cpu->r[3];
|
|
/* 0276F794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0276F798 */ _t172 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F798 */ _t173 = _t172 & 0x00000001u;
|
|
/* 0276F798 */ if (_t173) goto L_0276F79C; else goto L_0276F7B0;
|
|
L_0276F79C: ; // 0x276f79c
|
|
/* 0276F79C */ cpu->r[0] = 0x10100000u;
|
|
/* 0276F7A0 */ _t174 = cpu->r[30] + 0x00000000u;
|
|
/* 0276F7A0 */ cpu->r[29] = rbrew_read8(cpu->mem, _t174);
|
|
/* 0276F7A4 */ cpu->r[0] = cpu->r[0] + 0x00001330u;
|
|
/* 0276F7A8 */ _t175 = cpu->r[21] + 0x00000004u;
|
|
/* 0276F7A8 */ rbrew_write32(cpu->mem, _t175, cpu->r[0]);
|
|
/* 0276F7AC */ goto L_0276F820;
|
|
L_0276F7B0: ; // 0x276f7b0
|
|
/* 0276F7B0 */ cpu->r[3] = cpu->r[22];
|
|
/* 0276F7B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F7B4 */ _t176 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F7B4 */ _t177 = _t176 & 0x00000001u;
|
|
/* 0276F7B4 */ if (_t177) goto L_0276F7B8; else goto L_0276F7E4;
|
|
L_0276F7B8: ; // 0x276f7b8
|
|
/* 0276F7B8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276F7BC */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F7C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F7C4 */ _t178 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F7C4 */ _t179 = _t178 & 0x00000001u;
|
|
/* 0276F7C4 */ if (_t179) goto L_0276F7C8; else goto L_0276F7E4;
|
|
L_0276F7C8: ; // 0x276f7c8
|
|
/* 0276F7C8 */ _t180 = cpu->r[30] + 0x00000000u;
|
|
/* 0276F7C8 */ cpu->r[29] = rbrew_read8(cpu->mem, _t180);
|
|
/* 0276F7CC */ cpu->r[6] = 0x10100000u;
|
|
/* 0276F7D0 */ cpu->r[6] = cpu->r[6] + 0x00001318u;
|
|
/* 0276F7D4 */ _t181 = cpu->r[22] + 0x00000000u;
|
|
/* 0276F7D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t181);
|
|
/* 0276F7D8 */ _t182 = cpu->r[22] + 0x00000004u;
|
|
/* 0276F7D8 */ rbrew_write32(cpu->mem, _t182, cpu->r[6]);
|
|
/* 0276F7DC */ _t183 = cpu->r[9] + 0x00000000u;
|
|
/* 0276F7DC */ rbrew_write8(cpu->mem, _t183, (uint8_t)cpu->r[29]);
|
|
/* 0276F7E0 */ goto L_0276F814;
|
|
L_0276F7E4: ; // 0x276f7e4
|
|
/* 0276F7E4 */ cpu->r[12] = cpu->r[22] + 0x0000000Cu;
|
|
/* 0276F7E8 */ _t184 = cpu->r[3] + 0x00000004u;
|
|
/* 0276F7E8 */ rbrew_write32(cpu->mem, _t184, cpu->r[27]);
|
|
/* 0276F7EC */ cpu->r[4] = 0x00000040u;
|
|
/* 0276F7F0 */ _t185 = cpu->r[3] + 0x00000000u;
|
|
/* 0276F7F0 */ rbrew_write32(cpu->mem, _t185, cpu->r[12]);
|
|
/* 0276F7F4 */ _t186 = cpu->r[3] + 0x00000008u;
|
|
/* 0276F7F4 */ rbrew_write32(cpu->mem, _t186, cpu->r[4]);
|
|
/* 0276F7F8 */ _t187 = cpu->r[30] + 0x00000000u;
|
|
/* 0276F7F8 */ cpu->r[29] = rbrew_read8(cpu->mem, _t187);
|
|
/* 0276F7FC */ cpu->r[6] = 0x10100000u;
|
|
/* 0276F800 */ _t188 = cpu->r[22] + 0x0000004Bu;
|
|
/* 0276F800 */ rbrew_write8(cpu->mem, _t188, (uint8_t)cpu->r[29]);
|
|
/* 0276F804 */ cpu->r[6] = cpu->r[6] + 0x00001318u;
|
|
/* 0276F808 */ _t189 = cpu->r[22] + 0x00000000u;
|
|
/* 0276F808 */ cpu->r[9] = rbrew_read32(cpu->mem, _t189);
|
|
/* 0276F80C */ _t190 = cpu->r[22] + 0x00000004u;
|
|
/* 0276F80C */ rbrew_write32(cpu->mem, _t190, cpu->r[6]);
|
|
/* 0276F810 */ _t191 = cpu->r[9] + 0x00000000u;
|
|
/* 0276F810 */ rbrew_write8(cpu->mem, _t191, (uint8_t)cpu->r[29]);
|
|
L_0276F814: ; // 0x276f814
|
|
/* 0276F814 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276F818 */ cpu->r[0] = cpu->r[0] + 0x00001330u;
|
|
/* 0276F81C */ _t192 = cpu->r[21] + 0x00000004u;
|
|
/* 0276F81C */ rbrew_write32(cpu->mem, _t192, cpu->r[0]);
|
|
L_0276F820: ; // 0x276f820
|
|
/* 0276F820 */ cpu->r[3] = cpu->r[23] + 0x000000A0u;
|
|
/* 0276F820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F824 */ _t193 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F824 */ _t194 = _t193 & 0x00000001u;
|
|
/* 0276F824 */ if (_t194) goto L_0276F828; else goto L_0276F838;
|
|
L_0276F828: ; // 0x276f828
|
|
/* 0276F828 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276F82C */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F834 */ _t195 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F834 */ _t196 = _t195 & 0x00000001u;
|
|
/* 0276F834 */ if (_t196) goto L_0276F860; else goto L_0276F838;
|
|
L_0276F838: ; // 0x276f838
|
|
/* 0276F838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F83C */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F83C */ _t198 = _t197 & 0x00000001u;
|
|
/* 0276F83C */ if (_t198) goto L_0276F840; else goto L_0276F850;
|
|
L_0276F840: ; // 0x276f840
|
|
/* 0276F840 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276F844 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F848 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F84C */ _t199 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F84C */ _t200 = _t199 & 0x00000001u;
|
|
/* 0276F84C */ if (_t200) goto L_0276F860; else goto L_0276F850;
|
|
L_0276F850: ; // 0x276f850
|
|
/* 0276F850 */ _t201 = cpu->r[3] + 0x00000000u;
|
|
/* 0276F850 */ rbrew_write32(cpu->mem, _t201, cpu->r[3]);
|
|
/* 0276F854 */ cpu->r[4] = 0x00000000u;
|
|
/* 0276F858 */ _t202 = cpu->r[3] + 0x00000004u;
|
|
/* 0276F858 */ rbrew_write32(cpu->mem, _t202, cpu->r[3]);
|
|
/* 0276F85C */ _t203 = cpu->r[3] + 0x00000008u;
|
|
/* 0276F85C */ rbrew_write32(cpu->mem, _t203, cpu->r[4]);
|
|
L_0276F860: ; // 0x276f860
|
|
/* 0276F860 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276F864 */ cpu->r[0] = cpu->r[0] + 0x00001270u;
|
|
/* 0276F868 */ cpu->r[21] = cpu->r[23] + 0x000000B0u;
|
|
/* 0276F868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0276F86C */ _t204 = cpu->r[23] + 0x000000ACu;
|
|
/* 0276F86C */ rbrew_write32(cpu->mem, _t204, cpu->r[0]);
|
|
/* 0276F870 */ _t205 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F870 */ _t206 = _t205 & 0x00000001u;
|
|
/* 0276F870 */ if (_t206) goto L_0276F874; else goto L_0276F884;
|
|
L_0276F874: ; // 0x276f874
|
|
/* 0276F874 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0276F878 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F87C */ cpu->r[21] = cpu->r[3];
|
|
/* 0276F87C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0276F880 */ _t207 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F880 */ _t208 = _t207 & 0x00000001u;
|
|
/* 0276F880 */ if (_t208) goto L_0276F8EC; else goto L_0276F884;
|
|
L_0276F884: ; // 0x276f884
|
|
/* 0276F884 */ cpu->r[22] = cpu->r[21];
|
|
/* 0276F884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0276F888 */ _t209 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F888 */ _t210 = _t209 & 0x00000001u;
|
|
/* 0276F888 */ if (_t210) goto L_0276F88C; else goto L_0276F89C;
|
|
L_0276F88C: ; // 0x276f88c
|
|
/* 0276F88C */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0276F890 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F894 */ cpu->r[22] = cpu->r[3];
|
|
/* 0276F894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0276F898 */ _t211 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F898 */ _t212 = _t211 & 0x00000001u;
|
|
/* 0276F898 */ if (_t212) goto L_0276F8E0; else goto L_0276F89C;
|
|
L_0276F89C: ; // 0x276f89c
|
|
/* 0276F89C */ cpu->r[3] = cpu->r[22];
|
|
/* 0276F89C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F8A0 */ _t213 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F8A0 */ _t214 = _t213 & 0x00000001u;
|
|
/* 0276F8A0 */ if (_t214) goto L_0276F8A4; else goto L_0276F8B4;
|
|
L_0276F8A4: ; // 0x276f8a4
|
|
/* 0276F8A4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276F8A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F8AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F8B0 */ _t215 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F8B0 */ _t216 = _t215 & 0x00000001u;
|
|
/* 0276F8B0 */ if (_t216) goto L_0276F8CC; else goto L_0276F8B4;
|
|
L_0276F8B4: ; // 0x276f8b4
|
|
/* 0276F8B4 */ cpu->r[6] = cpu->r[22] + 0x0000000Cu;
|
|
/* 0276F8B8 */ _t217 = cpu->r[3] + 0x00000004u;
|
|
/* 0276F8B8 */ rbrew_write32(cpu->mem, _t217, cpu->r[27]);
|
|
/* 0276F8BC */ cpu->r[0] = 0x00000040u;
|
|
/* 0276F8C0 */ _t218 = cpu->r[3] + 0x00000000u;
|
|
/* 0276F8C0 */ rbrew_write32(cpu->mem, _t218, cpu->r[6]);
|
|
/* 0276F8C4 */ _t219 = cpu->r[3] + 0x00000008u;
|
|
/* 0276F8C4 */ rbrew_write32(cpu->mem, _t219, cpu->r[0]);
|
|
/* 0276F8C8 */ _t220 = cpu->r[22] + 0x0000004Bu;
|
|
/* 0276F8C8 */ rbrew_write8(cpu->mem, _t220, (uint8_t)cpu->r[29]);
|
|
L_0276F8CC: ; // 0x276f8cc
|
|
/* 0276F8CC */ cpu->r[8] = 0x10100000u;
|
|
/* 0276F8D0 */ _t221 = cpu->r[22] + 0x00000000u;
|
|
/* 0276F8D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t221);
|
|
/* 0276F8D4 */ cpu->r[8] = cpu->r[8] + 0x00001318u;
|
|
/* 0276F8D8 */ _t222 = cpu->r[22] + 0x00000004u;
|
|
/* 0276F8D8 */ rbrew_write32(cpu->mem, _t222, cpu->r[8]);
|
|
/* 0276F8DC */ _t223 = cpu->r[9] + 0x00000000u;
|
|
/* 0276F8DC */ rbrew_write8(cpu->mem, _t223, (uint8_t)cpu->r[29]);
|
|
L_0276F8E0: ; // 0x276f8e0
|
|
/* 0276F8E0 */ cpu->r[10] = 0x10100000u;
|
|
/* 0276F8E4 */ cpu->r[10] = cpu->r[10] + 0x00001330u;
|
|
/* 0276F8E8 */ _t224 = cpu->r[21] + 0x00000004u;
|
|
/* 0276F8E8 */ rbrew_write32(cpu->mem, _t224, cpu->r[10]);
|
|
L_0276F8EC: ; // 0x276f8ec
|
|
/* 0276F8EC */ cpu->r[22] = 0x02770000u;
|
|
/* 0276F8F0 */ _t225 = cpu->r[1] + 0x00000028u;
|
|
/* 0276F8F0 */ rbrew_write32(cpu->mem, _t225, cpu->r[25]);
|
|
/* 0276F8F4 */ cpu->r[22] = cpu->r[22] + 0x00000148u;
|
|
/* 0276F8F8 */ _t226 = cpu->r[1] + 0x00000024u;
|
|
/* 0276F8F8 */ rbrew_write32(cpu->mem, _t226, cpu->r[24]);
|
|
/* 0276F8FC */ cpu->ctr = cpu->r[22];
|
|
/* 0276F900 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 0276F904 */ _t227 = cpu->r[23] + 0x00000054u;
|
|
/* 0276F904 */ cpu->r[20] = rbrew_read32(cpu->mem, _t227);
|
|
/* 0276F908 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276F90C */ _t228 = cpu->r[1] + 0x00000024u;
|
|
/* 0276F90C */ cpu->r[10] = rbrew_read32(cpu->mem, _t228);
|
|
/* 0276F910 */ cpu->r[11] = cpu->r[29];
|
|
/* 0276F914 */ _t229 = cpu->r[10] + 0x00000000u;
|
|
/* 0276F914 */ cpu->r[12] = rbrew_read8(cpu->mem, _t229);
|
|
/* 0276F918 */ cpu->r[21] = 0x00000000u;
|
|
/* 0276F91C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[11]);
|
|
/* 0276F920 */ cpu->r[5] = 0x00080000u;
|
|
/* 0276F924 */ _t230 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F924 */ _t231 = _t230 & 0x00000001u;
|
|
/* 0276F924 */ if (_t231) goto L_0276F94C; else goto L_0276F928;
|
|
L_0276F928: ; // 0x276f928
|
|
/* 0276F928 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 0276F92C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[5]);
|
|
/* 0276F930 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0276F934 */ _t232 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276F934 */ _t233 = _t232 & 0x00000001u;
|
|
/* 0276F934 */ if (_t233) goto L_0276F948; else goto L_0276F938;
|
|
L_0276F938: ; // 0x276f938
|
|
/* 0276F938 */ _t234 = cpu->r[10] + 0x00000000u;
|
|
/* 0276F938 */ cpu->r[0] = rbrew_read8(cpu->mem, _t234);
|
|
/* 0276F93C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 0276F940 */ _t235 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F940 */ _t236 = _t235 & 0x00000001u;
|
|
/* 0276F940 */ if (_t236) goto L_0276F944; else goto L_0276F928;
|
|
L_0276F944: ; // 0x276f944
|
|
/* 0276F944 */ goto L_0276F94C;
|
|
L_0276F948: ; // 0x276f948
|
|
/* 0276F948 */ cpu->r[21] = 0x00000000u;
|
|
L_0276F94C: ; // 0x276f94c
|
|
/* 0276F94C */ _t237 = cpu->r[23] + 0x0000005Cu;
|
|
/* 0276F94C */ cpu->r[10] = rbrew_read32(cpu->mem, _t237);
|
|
/* 0276F950 */ _t238 = cpu->r[1] + 0x00000028u;
|
|
/* 0276F950 */ cpu->r[5] = rbrew_read32(cpu->mem, _t238);
|
|
/* 0276F954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[10]);
|
|
/* 0276F958 */ _t239 = cpu->r[5] + 0x00000014u;
|
|
/* 0276F958 */ cpu->r[7] = rbrew_read32(cpu->mem, _t239);
|
|
/* 0276F95C */ _t240 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276F95C */ _t241 = _t240 & 0x00000001u;
|
|
/* 0276F95C */ if (_t241) goto L_0276F964; else goto L_0276F960;
|
|
L_0276F960: ; // 0x276f960
|
|
/* 0276F960 */ cpu->r[21] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0276F964: ; // 0x276f964
|
|
/* 0276F964 */ cpu->ctr = cpu->r[7];
|
|
/* 0276F968 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 0276F96C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276F970 */ _t242 = cpu->r[1] + 0x00000024u;
|
|
/* 0276F970 */ cpu->r[4] = rbrew_read32(cpu->mem, _t242);
|
|
/* 0276F974 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276F978 */ cpu->r[5] = cpu->r[21];
|
|
/* 0276F97C */ cpu->r[3] = cpu->r[20];
|
|
/* 0276F980 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276F984 */ _t243 = cpu->r[20] + cpu->r[21];
|
|
/* 0276F984 */ rbrew_write8(cpu->mem, _t243, (uint8_t)cpu->r[29]);
|
|
/* 0276F988 */ _t244 = cpu->r[23] + 0x00000058u;
|
|
/* 0276F988 */ cpu->r[8] = rbrew_read32(cpu->mem, _t244);
|
|
/* 0276F98C */ _t245 = cpu->r[8] + 0x00000014u;
|
|
/* 0276F98C */ cpu->r[10] = rbrew_read32(cpu->mem, _t245);
|
|
/* 0276F990 */ cpu->ctr = cpu->r[10];
|
|
/* 0276F994 */ cpu->r[3] = cpu->r[23] + 0x00000054u;
|
|
/* 0276F998 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276F99C */ _t246 = cpu->r[23] + 0x00000054u;
|
|
/* 0276F99C */ cpu->r[4] = rbrew_read32(cpu->mem, _t246);
|
|
/* 0276F9A0 */ cpu->r[3] = cpu->r[23];
|
|
/* 0276F9A4 */ _t247 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0276F9A4 */ _t248 = _t247 & 0x00000001u;
|
|
/* 0276F9A4 */ if (_t248) goto L_0276F9A8; // else: addr-0 trap, fall-through
|
|
L_0276F9A8: ; // 0x276f9a8
|
|
/* 0276F9A8 */ Gambit_fn_027F8F3C(cpu);
|
|
/* 0276F9AC */ cpu->r[0] = 0x10100000u;
|
|
/* 0276F9B0 */ cpu->r[0] = cpu->r[0] + 0x000014D8u;
|
|
/* 0276F9B4 */ cpu->r[3] = cpu->r[28] + 0x000000FCu;
|
|
/* 0276F9B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F9B8 */ _t249 = cpu->r[28] + 0x00000000u;
|
|
/* 0276F9B8 */ rbrew_write32(cpu->mem, _t249, cpu->r[0]);
|
|
/* 0276F9BC */ _t250 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F9BC */ _t251 = _t250 & 0x00000001u;
|
|
/* 0276F9BC */ if (_t251) goto L_0276F9C0; else goto L_0276F9D0;
|
|
L_0276F9C0: ; // 0x276f9c0
|
|
/* 0276F9C0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276F9C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276F9C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276F9CC */ _t252 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F9CC */ _t253 = _t252 & 0x00000001u;
|
|
/* 0276F9CC */ if (_t253) goto L_0276F9E0; else goto L_0276F9D0;
|
|
L_0276F9D0: ; // 0x276f9d0
|
|
/* 0276F9D0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0276F9D4 */ _t254 = cpu->r[3] + 0x00000000u;
|
|
/* 0276F9D4 */ rbrew_write32(cpu->mem, _t254, cpu->r[0]);
|
|
/* 0276F9D8 */ _t255 = cpu->r[3] + 0x00000008u;
|
|
/* 0276F9D8 */ rbrew_write32(cpu->mem, _t255, cpu->r[0]);
|
|
/* 0276F9DC */ _t256 = cpu->r[3] + 0x00000004u;
|
|
/* 0276F9DC */ rbrew_write32(cpu->mem, _t256, cpu->r[0]);
|
|
L_0276F9E0: ; // 0x276f9e0
|
|
/* 0276F9E0 */ cpu->r[4] = 0x0000000Cu;
|
|
/* 0276F9E4 */ cpu->r[5] = cpu->r[28] + 0x00000108u;
|
|
/* 0276F9E8 */ cpu->r[3] = cpu->r[28] + 0x000000FCu;
|
|
/* 0276F9EC */ Gambit_fn_028023A8(cpu);
|
|
/* 0276F9F0 */ cpu->r[23] = cpu->r[28] + 0x00000138u;
|
|
/* 0276F9F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0276F9F4 */ _t257 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276F9F4 */ _t258 = _t257 & 0x00000001u;
|
|
/* 0276F9F4 */ if (_t258) goto L_0276F9F8; else goto L_0276FA08;
|
|
L_0276F9F8: ; // 0x276f9f8
|
|
/* 0276F9F8 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0276F9FC */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FA00 */ cpu->r[23] = cpu->r[3];
|
|
/* 0276FA00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0276FA04 */ _t259 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FA04 */ _t260 = _t259 & 0x00000001u;
|
|
/* 0276FA04 */ if (_t260) goto L_0276FA4C; else goto L_0276FA08;
|
|
L_0276FA08: ; // 0x276fa08
|
|
/* 0276FA08 */ cpu->r[3] = cpu->r[23];
|
|
/* 0276FA08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FA0C */ _t261 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FA0C */ _t262 = _t261 & 0x00000001u;
|
|
/* 0276FA0C */ if (_t262) goto L_0276FA10; else goto L_0276FA20;
|
|
L_0276FA10: ; // 0x276fa10
|
|
/* 0276FA10 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276FA14 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FA18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FA1C */ _t263 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FA1C */ _t264 = _t263 & 0x00000001u;
|
|
/* 0276FA1C */ if (_t264) goto L_0276FA38; else goto L_0276FA20;
|
|
L_0276FA20: ; // 0x276fa20
|
|
/* 0276FA20 */ cpu->r[5] = cpu->r[23] + 0x0000000Cu;
|
|
/* 0276FA24 */ _t265 = cpu->r[3] + 0x00000004u;
|
|
/* 0276FA24 */ rbrew_write32(cpu->mem, _t265, cpu->r[27]);
|
|
/* 0276FA28 */ cpu->r[0] = 0x00000080u;
|
|
/* 0276FA2C */ _t266 = cpu->r[3] + 0x00000000u;
|
|
/* 0276FA2C */ rbrew_write32(cpu->mem, _t266, cpu->r[5]);
|
|
/* 0276FA30 */ _t267 = cpu->r[3] + 0x00000008u;
|
|
/* 0276FA30 */ rbrew_write32(cpu->mem, _t267, cpu->r[0]);
|
|
/* 0276FA34 */ _t268 = cpu->r[23] + 0x0000008Bu;
|
|
/* 0276FA34 */ rbrew_write8(cpu->mem, _t268, (uint8_t)cpu->r[29]);
|
|
L_0276FA38: ; // 0x276fa38
|
|
/* 0276FA38 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276FA3C */ _t269 = cpu->r[23] + 0x00000000u;
|
|
/* 0276FA3C */ cpu->r[6] = rbrew_read32(cpu->mem, _t269);
|
|
/* 0276FA40 */ cpu->r[0] = cpu->r[0] + 0x000012B8u;
|
|
/* 0276FA44 */ _t270 = cpu->r[23] + 0x00000004u;
|
|
/* 0276FA44 */ rbrew_write32(cpu->mem, _t270, cpu->r[0]);
|
|
/* 0276FA48 */ _t271 = cpu->r[6] + 0x00000000u;
|
|
/* 0276FA48 */ rbrew_write8(cpu->mem, _t271, (uint8_t)cpu->r[29]);
|
|
L_0276FA4C: ; // 0x276fa4c
|
|
/* 0276FA4C */ cpu->r[0] = 0x10100000u;
|
|
/* 0276FA50 */ cpu->ctr = cpu->r[22];
|
|
/* 0276FA54 */ cpu->r[0] = cpu->r[0] + 0x000012D0u;
|
|
/* 0276FA58 */ _t272 = cpu->r[28] + 0x0000013Cu;
|
|
/* 0276FA58 */ rbrew_write32(cpu->mem, _t272, cpu->r[0]);
|
|
/* 0276FA5C */ _t273 = cpu->r[1] + 0x00000020u;
|
|
/* 0276FA5C */ rbrew_write32(cpu->mem, _t273, cpu->r[25]);
|
|
/* 0276FA60 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FA64 */ _t274 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FA64 */ rbrew_write32(cpu->mem, _t274, cpu->r[24]);
|
|
/* 0276FA68 */ _t275 = cpu->r[28] + 0x00000138u;
|
|
/* 0276FA68 */ cpu->r[23] = rbrew_read32(cpu->mem, _t275);
|
|
/* 0276FA6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276FA70 */ _t276 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FA70 */ cpu->r[6] = rbrew_read32(cpu->mem, _t276);
|
|
/* 0276FA74 */ _t277 = cpu->r[6] + 0x00000000u;
|
|
/* 0276FA74 */ cpu->r[7] = rbrew_read8(cpu->mem, _t277);
|
|
/* 0276FA78 */ cpu->r[10] = cpu->r[29];
|
|
/* 0276FA7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[10]);
|
|
/* 0276FA80 */ cpu->r[24] = 0x00000000u;
|
|
/* 0276FA84 */ cpu->r[9] = 0x00080000u;
|
|
/* 0276FA88 */ _t278 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FA88 */ _t279 = _t278 & 0x00000001u;
|
|
/* 0276FA88 */ if (_t279) goto L_0276FAB0; else goto L_0276FA8C;
|
|
L_0276FA8C: ; // 0x276fa8c
|
|
/* 0276FA8C */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 0276FA90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[9]);
|
|
/* 0276FA94 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0276FA98 */ _t280 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0276FA98 */ _t281 = _t280 & 0x00000001u;
|
|
/* 0276FA98 */ if (_t281) goto L_0276FAAC; else goto L_0276FA9C;
|
|
L_0276FA9C: ; // 0x276fa9c
|
|
/* 0276FA9C */ _t282 = cpu->r[6] + 0x00000000u;
|
|
/* 0276FA9C */ cpu->r[8] = rbrew_read8(cpu->mem, _t282);
|
|
/* 0276FAA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[10]);
|
|
/* 0276FAA4 */ _t283 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FAA4 */ _t284 = _t283 & 0x00000001u;
|
|
/* 0276FAA4 */ if (_t284) goto L_0276FAA8; else goto L_0276FA8C;
|
|
L_0276FAA8: ; // 0x276faa8
|
|
/* 0276FAA8 */ goto L_0276FAB0;
|
|
L_0276FAAC: ; // 0x276faac
|
|
/* 0276FAAC */ cpu->r[24] = 0x00000000u;
|
|
L_0276FAB0: ; // 0x276fab0
|
|
/* 0276FAB0 */ _t285 = cpu->r[28] + 0x00000140u;
|
|
/* 0276FAB0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t285);
|
|
/* 0276FAB4 */ _t286 = cpu->r[1] + 0x00000020u;
|
|
/* 0276FAB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t286);
|
|
/* 0276FAB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[5]);
|
|
/* 0276FABC */ _t287 = cpu->r[9] + 0x00000014u;
|
|
/* 0276FABC */ cpu->r[10] = rbrew_read32(cpu->mem, _t287);
|
|
/* 0276FAC0 */ _t288 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276FAC0 */ _t289 = _t288 & 0x00000001u;
|
|
/* 0276FAC0 */ if (_t289) goto L_0276FAC8; else goto L_0276FAC4;
|
|
L_0276FAC4: ; // 0x276fac4
|
|
/* 0276FAC4 */ cpu->r[24] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0276FAC8: ; // 0x276fac8
|
|
/* 0276FAC8 */ cpu->ctr = cpu->r[10];
|
|
/* 0276FACC */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FAD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276FAD4 */ _t290 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FAD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t290);
|
|
/* 0276FAD8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0276FADC */ cpu->r[5] = cpu->r[24];
|
|
/* 0276FAE0 */ cpu->r[3] = cpu->r[23];
|
|
/* 0276FAE4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0276FAE8 */ _t291 = cpu->r[23] + cpu->r[24];
|
|
/* 0276FAE8 */ rbrew_write8(cpu->mem, _t291, (uint8_t)cpu->r[29]);
|
|
/* 0276FAEC */ _t292 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FAEC */ rbrew_write32(cpu->mem, _t292, cpu->r[25]);
|
|
/* 0276FAF0 */ _t293 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FAF0 */ rbrew_write32(cpu->mem, _t293, cpu->r[30]);
|
|
/* 0276FAF4 */ _t294 = cpu->r[28] + 0x00000100u;
|
|
/* 0276FAF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t294);
|
|
/* 0276FAF8 */ cpu->r[25] = 0x00000000u;
|
|
/* 0276FAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[11]);
|
|
/* 0276FB00 */ _t295 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276FB00 */ _t296 = _t295 & 0x00000001u;
|
|
/* 0276FB00 */ if (_t296) goto L_0276FB04; else goto L_0276FD10;
|
|
L_0276FB04: ; // 0x276fb04
|
|
/* 0276FB04 */ cpu->r[6] = 0x10100000u;
|
|
/* 0276FB08 */ cpu->r[12] = 0x10100000u;
|
|
/* 0276FB0C */ cpu->r[23] = 0x101D0000u;
|
|
/* 0276FB10 */ _t297 = cpu->r[6] + 0x00001700u;
|
|
/* 0276FB10 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t297);
|
|
/* 0276FB14 */ cpu->r[22] = 0x101D0000u;
|
|
/* 0276FB18 */ cpu->r[23] = cpu->r[23] + 0x00001310u;
|
|
/* 0276FB1C */ _t298 = cpu->r[12] + 0x00001704u;
|
|
/* 0276FB1C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t298);
|
|
/* 0276FB20 */ cpu->r[29] = cpu->r[26];
|
|
/* 0276FB24 */ cpu->r[26] = 0x00000000u;
|
|
/* 0276FB28 */ cpu->r[24] = 0x00000001u;
|
|
/* 0276FB2C */ cpu->r[21] = 0x101D0000u;
|
|
/* 0276FB30 */ cpu->r[20] = 0x101D0000u;
|
|
/* 0276FB34 */ cpu->r[19] = 0x101D0000u;
|
|
L_0276FB38: ; // 0x276fb38
|
|
/* 0276FB38 */ _t299 = cpu->r[21] + 0x000012E8u;
|
|
/* 0276FB38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t299);
|
|
/* 0276FB3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0276FB40 */ _t300 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FB40 */ _t301 = _t300 & 0x00000001u;
|
|
/* 0276FB40 */ if (_t301) goto L_0276FB44; else goto L_0276FB5C;
|
|
L_0276FB44: ; // 0x276fb44
|
|
/* 0276FB44 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0276FB48 */ cpu->r[3] = cpu->r[22] + 0x00005970u;
|
|
/* 0276FB4C */ cpu->r[5] = 0x00000081u;
|
|
/* 0276FB50 */ cpu->r[4] = cpu->r[4] + 0xFFFF8C7Cu;
|
|
/* 0276FB54 */ _t302 = cpu->r[21] + 0x000012E8u;
|
|
/* 0276FB54 */ rbrew_write32(cpu->mem, _t302, cpu->r[24]);
|
|
/* 0276FB58 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0276FB5C: ; // 0x276fb5c
|
|
/* 0276FB5C */ _t303 = cpu->r[20] + 0x000012E4u;
|
|
/* 0276FB5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t303);
|
|
/* 0276FB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0276FB64 */ _t304 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FB64 */ _t305 = _t304 & 0x00000001u;
|
|
/* 0276FB64 */ if (_t305) goto L_0276FB68; else goto L_0276FB70;
|
|
L_0276FB68: ; // 0x276fb68
|
|
/* 0276FB68 */ _t306 = cpu->r[19] + 0x00001340u;
|
|
/* 0276FB68 */ rbrew_write32(cpu->mem, _t306, cpu->r[26]);
|
|
/* 0276FB6C */ _t307 = cpu->r[20] + 0x000012E4u;
|
|
/* 0276FB6C */ rbrew_write32(cpu->mem, _t307, cpu->r[24]);
|
|
L_0276FB70: ; // 0x276fb70
|
|
/* 0276FB70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x0000000Cu);
|
|
/* 0276FB74 */ _t308 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276FB74 */ _t309 = _t308 & 0x00000001u;
|
|
/* 0276FB74 */ if (_t309) goto L_0276FBDC; else goto L_0276FB78;
|
|
L_0276FB78: ; // 0x276fb78
|
|
/* 0276FB78 */ _t310 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FB78 */ cpu->r[6] = rbrew_read32(cpu->mem, _t310);
|
|
/* 0276FB7C */ cpu->r[0] = 0x00000000u;
|
|
/* 0276FB80 */ _t311 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FB80 */ rbrew_write32(cpu->mem, _t311, cpu->r[0]);
|
|
/* 0276FB84 */ _t312 = cpu->r[6] + 0x00000014u;
|
|
/* 0276FB84 */ cpu->r[7] = rbrew_read32(cpu->mem, _t312);
|
|
/* 0276FB88 */ cpu->ctr = cpu->r[7];
|
|
/* 0276FB8C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FB90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276FB94 */ _t313 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FB94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t313);
|
|
/* 0276FB98 */ _t314 = cpu->r[8] + 0x00000014u;
|
|
/* 0276FB98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t314);
|
|
/* 0276FB9C */ cpu->ctr = cpu->r[0];
|
|
/* 0276FBA0 */ _t315 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FBA0 */ cpu->r[18] = rbrew_read32(cpu->mem, _t315);
|
|
/* 0276FBA4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FBA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276FBAC */ _t316 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FBAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t316);
|
|
/* 0276FBB0 */ _t317 = cpu->r[9] + 0x00000014u;
|
|
/* 0276FBB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t317);
|
|
/* 0276FBB4 */ cpu->ctr = cpu->r[10];
|
|
/* 0276FBB8 */ _t318 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FBB8 */ cpu->r[14] = rbrew_read32(cpu->mem, _t318);
|
|
/* 0276FBBC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FBC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276FBC4 */ cpu->r[3] = 0x00000060u;
|
|
/* 0276FBC8 */ _t319 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FBC8 */ cpu->r[15] = rbrew_read32(cpu->mem, _t319);
|
|
/* 0276FBCC */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FBD0 */ cpu->r[17] = cpu->r[3];
|
|
/* 0276FBD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 0276FBD4 */ _t320 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FBD4 */ _t321 = _t320 & 0x00000001u;
|
|
/* 0276FBD4 */ if (_t321) goto L_0276FCD4; else goto L_0276FBD8;
|
|
L_0276FBD8: ; // 0x276fbd8
|
|
/* 0276FBD8 */ goto L_0276FC84;
|
|
L_0276FBDC: ; // 0x276fbdc
|
|
/* 0276FBDC */ _t322 = cpu->r[19] + 0x00001340u;
|
|
/* 0276FBDC */ cpu->r[7] = rbrew_read32(cpu->mem, _t322);
|
|
/* 0276FBE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0276FBE4 */ _t323 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FBE4 */ _t324 = _t323 & 0x00000001u;
|
|
/* 0276FBE4 */ if (_t324) goto L_0276FBE8; else goto L_0276FC20;
|
|
L_0276FBE8: ; // 0x276fbe8
|
|
/* 0276FBE8 */ Gambit_fn_0282A450(cpu);
|
|
/* 0276FBEC */ cpu->r[18] = cpu->r[3];
|
|
/* 0276FBF0 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0276FBF4 */ _t325 = cpu->r[19] + 0x00001340u;
|
|
/* 0276FBF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t325);
|
|
/* 0276FBF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276FBFC */ _t326 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FBFC */ _t327 = _t326 & 0x00000001u;
|
|
/* 0276FBFC */ if (_t327) goto L_0276FC00; else goto L_0276FC14;
|
|
L_0276FC00: ; // 0x276fc00
|
|
/* 0276FC00 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0276FC04 */ cpu->r[4] = cpu->r[22] + 0x00005970u;
|
|
/* 0276FC08 */ cpu->r[3] = cpu->r[23];
|
|
/* 0276FC0C */ Gambit_fn_0282A374(cpu);
|
|
/* 0276FC10 */ _t328 = cpu->r[19] + 0x00001340u;
|
|
/* 0276FC10 */ rbrew_write32(cpu->mem, _t328, cpu->r[23]);
|
|
L_0276FC14: ; // 0x276fc14
|
|
/* 0276FC14 */ cpu->r[3] = cpu->r[18];
|
|
/* 0276FC18 */ Gambit_fn_02837030(cpu);
|
|
/* 0276FC1C */ _t329 = cpu->r[19] + 0x00001340u;
|
|
/* 0276FC1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t329);
|
|
L_0276FC20: ; // 0x276fc20
|
|
/* 0276FC20 */ cpu->r[5] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276FC24 */ _t330 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FC24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t330);
|
|
/* 0276FC28 */ _t331 = cpu->r[5] + cpu->r[7];
|
|
/* 0276FC28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t331);
|
|
/* 0276FC2C */ _t332 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FC2C */ rbrew_write32(cpu->mem, _t332, cpu->r[0]);
|
|
/* 0276FC30 */ _t333 = cpu->r[6] + 0x00000014u;
|
|
/* 0276FC30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t333);
|
|
/* 0276FC34 */ cpu->ctr = cpu->r[7];
|
|
/* 0276FC38 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FC3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276FC40 */ _t334 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FC40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t334);
|
|
/* 0276FC44 */ _t335 = cpu->r[8] + 0x00000014u;
|
|
/* 0276FC44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t335);
|
|
/* 0276FC48 */ cpu->ctr = cpu->r[0];
|
|
/* 0276FC4C */ _t336 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FC4C */ cpu->r[18] = rbrew_read32(cpu->mem, _t336);
|
|
/* 0276FC50 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FC54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276FC58 */ _t337 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FC58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t337);
|
|
/* 0276FC5C */ _t338 = cpu->r[9] + 0x00000014u;
|
|
/* 0276FC5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t338);
|
|
/* 0276FC60 */ cpu->ctr = cpu->r[10];
|
|
/* 0276FC64 */ _t339 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FC64 */ cpu->r[14] = rbrew_read32(cpu->mem, _t339);
|
|
/* 0276FC68 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FC6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0276FC70 */ cpu->r[3] = 0x00000060u;
|
|
/* 0276FC74 */ _t340 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FC74 */ cpu->r[15] = rbrew_read32(cpu->mem, _t340);
|
|
/* 0276FC78 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FC7C */ cpu->r[17] = cpu->r[3];
|
|
/* 0276FC7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 0276FC80 */ _t341 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FC80 */ _t342 = _t341 & 0x00000001u;
|
|
/* 0276FC80 */ if (_t342) goto L_0276FCD4; else goto L_0276FC84;
|
|
L_0276FC84: ; // 0x276fc84
|
|
/* 0276FC84 */ cpu->r[16] = cpu->r[17];
|
|
/* 0276FC84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 0276FC88 */ _t343 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FC88 */ _t344 = _t343 & 0x00000001u;
|
|
/* 0276FC88 */ if (_t344) goto L_0276FC8C; else goto L_0276FC9C;
|
|
L_0276FC8C: ; // 0x276fc8c
|
|
/* 0276FC8C */ cpu->r[3] = 0x00000060u;
|
|
/* 0276FC90 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FC94 */ cpu->r[16] = cpu->r[3];
|
|
/* 0276FC94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 0276FC98 */ _t345 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FC98 */ _t346 = _t345 & 0x00000001u;
|
|
/* 0276FC98 */ if (_t346) goto L_0276FCC8; else goto L_0276FC9C;
|
|
L_0276FC9C: ; // 0x276fc9c
|
|
/* 0276FC9C */ cpu->r[8] = 0x00000000u;
|
|
/* 0276FCA0 */ cpu->r[7] = cpu->r[15];
|
|
/* 0276FCA4 */ cpu->r[6] = cpu->r[14];
|
|
/* 0276FCA8 */ cpu->r[5] = cpu->r[18];
|
|
/* 0276FCAC */ cpu->r[4] = cpu->r[28];
|
|
/* 0276FCB0 */ cpu->r[3] = cpu->r[16];
|
|
/* 0276FCB4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 0276FCB8 */ _t347 = cpu->r[16] + 0x00000054u;
|
|
/* 0276FCB8 */ rbrew_write_f32(cpu->mem, _t347, cpu->f[30]);
|
|
/* 0276FCBC */ _t348 = cpu->r[16] + 0x00000058u;
|
|
/* 0276FCBC */ rbrew_write_f32(cpu->mem, _t348, cpu->f[31]);
|
|
/* 0276FCC0 */ _t349 = cpu->r[16] + 0x00000000u;
|
|
/* 0276FCC0 */ rbrew_write32(cpu->mem, _t349, cpu->r[29]);
|
|
/* 0276FCC4 */ _t350 = cpu->r[16] + 0x0000005Cu;
|
|
/* 0276FCC4 */ rbrew_write_f32(cpu->mem, _t350, cpu->f[29]);
|
|
L_0276FCC8: ; // 0x276fcc8
|
|
/* 0276FCC8 */ cpu->r[0] = 0x10100000u;
|
|
/* 0276FCCC */ cpu->r[0] = cpu->r[0] + 0x000013D8u;
|
|
/* 0276FCD0 */ _t351 = cpu->r[17] + 0x00000000u;
|
|
/* 0276FCD0 */ rbrew_write32(cpu->mem, _t351, cpu->r[0]);
|
|
L_0276FCD4: ; // 0x276fcd4
|
|
/* 0276FCD4 */ _t352 = cpu->r[28] + 0x000000FCu;
|
|
/* 0276FCD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t352);
|
|
/* 0276FCD8 */ _t353 = cpu->r[28] + 0x00000100u;
|
|
/* 0276FCD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t353);
|
|
/* 0276FCDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[11]);
|
|
/* 0276FCE0 */ cpu->r[0] = cpu->r[17];
|
|
/* 0276FCE4 */ _t354 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276FCE4 */ _t355 = _t354 & 0x00000001u;
|
|
/* 0276FCE4 */ if (_t355) goto L_0276FCE8; else goto L_0276FD04;
|
|
L_0276FCE8: ; // 0x276fce8
|
|
/* 0276FCE8 */ _t356 = cpu->r[28] + 0x00000104u;
|
|
/* 0276FCE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t356);
|
|
/* 0276FCEC */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0276FCF0 */ _t357 = cpu->r[11] + cpu->r[12];
|
|
/* 0276FCF0 */ rbrew_write32(cpu->mem, _t357, cpu->r[0]);
|
|
/* 0276FCF4 */ _t358 = cpu->r[28] + 0x000000FCu;
|
|
/* 0276FCF4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t358);
|
|
/* 0276FCF8 */ _t359 = cpu->r[28] + 0x00000100u;
|
|
/* 0276FCF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t359);
|
|
/* 0276FCFC */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 0276FD00 */ _t360 = cpu->r[28] + 0x000000FCu;
|
|
/* 0276FD00 */ rbrew_write32(cpu->mem, _t360, cpu->r[4]);
|
|
L_0276FD04: ; // 0x276fd04
|
|
/* 0276FD04 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0276FD08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[11]);
|
|
/* 0276FD0C */ _t361 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276FD0C */ _t362 = _t361 & 0x00000001u;
|
|
/* 0276FD0C */ if (_t362) goto L_0276FB38; else goto L_0276FD10;
|
|
L_0276FD10: ; // 0x276fd10
|
|
/* 0276FD10 */ cpu->r[5] = 0x10100000u;
|
|
/* 0276FD14 */ _t363 = cpu->r[1] + 0x00000008u;
|
|
/* 0276FD14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t363);
|
|
/* 0276FD18 */ cpu->r[5] = cpu->r[5] + 0x00001570u;
|
|
/* 0276FD1C */ _t364 = cpu->r[9] + 0x00000000u;
|
|
/* 0276FD1C */ rbrew_write32(cpu->mem, _t364, cpu->r[5]);
|
|
L_0276FD20: ; // 0x276fd20
|
|
/* 0276FD20 */ cpu->r[26] = cpu->r[31] + 0x00000440u;
|
|
/* 0276FD20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0276FD24 */ _t365 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FD24 */ _t366 = _t365 & 0x00000001u;
|
|
/* 0276FD24 */ if (_t366) goto L_0276FD28; else goto L_0276FD38;
|
|
L_0276FD28: ; // 0x276fd28
|
|
/* 0276FD28 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0276FD2C */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FD30 */ cpu->r[26] = cpu->r[3];
|
|
/* 0276FD30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0276FD34 */ _t367 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FD34 */ _t368 = _t367 & 0x00000001u;
|
|
/* 0276FD34 */ if (_t368) goto L_0276FDC0; else goto L_0276FD38;
|
|
L_0276FD38: ; // 0x276fd38
|
|
/* 0276FD38 */ cpu->r[28] = cpu->r[26];
|
|
/* 0276FD38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0276FD3C */ _t369 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FD3C */ _t370 = _t369 & 0x00000001u;
|
|
/* 0276FD3C */ if (_t370) goto L_0276FD40; else goto L_0276FD50;
|
|
L_0276FD40: ; // 0x276fd40
|
|
/* 0276FD40 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 0276FD44 */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FD48 */ cpu->r[28] = cpu->r[3];
|
|
/* 0276FD48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0276FD4C */ _t371 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FD4C */ _t372 = _t371 & 0x00000001u;
|
|
/* 0276FD4C */ if (_t372) goto L_0276FDB4; else goto L_0276FD50;
|
|
L_0276FD50: ; // 0x276fd50
|
|
/* 0276FD50 */ cpu->r[3] = cpu->r[28];
|
|
/* 0276FD50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FD54 */ _t373 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FD54 */ _t374 = _t373 & 0x00000001u;
|
|
/* 0276FD54 */ if (_t374) goto L_0276FD58; else goto L_0276FD84;
|
|
L_0276FD58: ; // 0x276fd58
|
|
/* 0276FD58 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0276FD5C */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FD60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FD64 */ _t375 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FD64 */ _t376 = _t375 & 0x00000001u;
|
|
/* 0276FD64 */ if (_t376) goto L_0276FD68; else goto L_0276FD84;
|
|
L_0276FD68: ; // 0x276fd68
|
|
/* 0276FD68 */ _t377 = cpu->r[30] + 0x00000000u;
|
|
/* 0276FD68 */ cpu->r[29] = rbrew_read8(cpu->mem, _t377);
|
|
/* 0276FD6C */ cpu->r[0] = 0x10100000u;
|
|
/* 0276FD70 */ cpu->r[0] = cpu->r[0] + 0x000012B8u;
|
|
/* 0276FD74 */ _t378 = cpu->r[28] + 0x00000000u;
|
|
/* 0276FD74 */ cpu->r[8] = rbrew_read32(cpu->mem, _t378);
|
|
/* 0276FD78 */ _t379 = cpu->r[28] + 0x00000004u;
|
|
/* 0276FD78 */ rbrew_write32(cpu->mem, _t379, cpu->r[0]);
|
|
/* 0276FD7C */ _t380 = cpu->r[8] + 0x00000000u;
|
|
/* 0276FD7C */ rbrew_write8(cpu->mem, _t380, (uint8_t)cpu->r[29]);
|
|
/* 0276FD80 */ goto L_0276FDB4;
|
|
L_0276FD84: ; // 0x276fd84
|
|
/* 0276FD84 */ cpu->r[6] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0276FD88 */ _t381 = cpu->r[3] + 0x00000004u;
|
|
/* 0276FD88 */ rbrew_write32(cpu->mem, _t381, cpu->r[27]);
|
|
/* 0276FD8C */ cpu->r[7] = 0x00000080u;
|
|
/* 0276FD90 */ _t382 = cpu->r[3] + 0x00000000u;
|
|
/* 0276FD90 */ rbrew_write32(cpu->mem, _t382, cpu->r[6]);
|
|
/* 0276FD94 */ _t383 = cpu->r[3] + 0x00000008u;
|
|
/* 0276FD94 */ rbrew_write32(cpu->mem, _t383, cpu->r[7]);
|
|
/* 0276FD98 */ _t384 = cpu->r[30] + 0x00000000u;
|
|
/* 0276FD98 */ cpu->r[29] = rbrew_read8(cpu->mem, _t384);
|
|
/* 0276FD9C */ cpu->r[0] = 0x10100000u;
|
|
/* 0276FDA0 */ _t385 = cpu->r[28] + 0x0000008Bu;
|
|
/* 0276FDA0 */ rbrew_write8(cpu->mem, _t385, (uint8_t)cpu->r[29]);
|
|
/* 0276FDA4 */ cpu->r[0] = cpu->r[0] + 0x000012B8u;
|
|
/* 0276FDA8 */ _t386 = cpu->r[28] + 0x00000000u;
|
|
/* 0276FDA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t386);
|
|
/* 0276FDAC */ _t387 = cpu->r[28] + 0x00000004u;
|
|
/* 0276FDAC */ rbrew_write32(cpu->mem, _t387, cpu->r[0]);
|
|
/* 0276FDB0 */ _t388 = cpu->r[8] + 0x00000000u;
|
|
/* 0276FDB0 */ rbrew_write8(cpu->mem, _t388, (uint8_t)cpu->r[29]);
|
|
L_0276FDB4: ; // 0x276fdb4
|
|
/* 0276FDB4 */ cpu->r[9] = 0x10100000u;
|
|
/* 0276FDB8 */ cpu->r[9] = cpu->r[9] + 0x000012D0u;
|
|
/* 0276FDBC */ _t389 = cpu->r[26] + 0x00000004u;
|
|
/* 0276FDBC */ rbrew_write32(cpu->mem, _t389, cpu->r[9]);
|
|
L_0276FDC0: ; // 0x276fdc0
|
|
/* 0276FDC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276FDC4 */ /* nop */
|
|
/* 0276FDC8 */ _t390 = cpu->r[1] + 0x00000080u;
|
|
/* 0276FDC8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t390);
|
|
/* 0276FDCC */ _t391 = cpu->r[1] + 0x00000090u;
|
|
/* 0276FDCC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t391);
|
|
/* 0276FDD0 */ _t392 = cpu->r[1] + 0x00000078u;
|
|
/* 0276FDD0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t392);
|
|
/* 0276FDD4 */ _t393 = cpu->r[1] + 0x000000A0u;
|
|
/* 0276FDD4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t393);
|
|
/* 0276FDD8 */ _t394 = cpu->r[1] + 0x00000088u;
|
|
/* 0276FDD8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t394);
|
|
/* 0276FDDC */ _t395 = cpu->r[1] + 0x00000098u;
|
|
/* 0276FDDC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t395);
|
|
/* 0276FDE0 */ _t396 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0276FDE0 */ _t397 = _t396 & 0x00000001u;
|
|
/* 0276FDE0 */ if (_t397) goto L_0276FDE4; // else: addr-0 trap, fall-through
|
|
L_0276FDE4: ; // 0x276fde4
|
|
/* 0276FDE4 */ _t398 = cpu->r[1] + 0x000000ACu;
|
|
/* 0276FDE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t398);
|
|
/* 0276FDE8 */ cpu->lr = cpu->r[0];
|
|
/* 0276FDEC */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 0276FDF0 */ return;
|
|
}
|
|
|
|
// fn_0276FDF4 @ 0x276fdf4
|
|
void Gambit_fn_0276FDF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0276FDF4: ; // 0x276fdf4
|
|
/* 0276FDF4 */ cpu->r[0] = cpu->lr;
|
|
/* 0276FDF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276FDF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276FDF8 */ cpu->r[1] = _t0;
|
|
/* 0276FDFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FDFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276FE00 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276FE04 */ cpu->r[3] = 0x000004CCu;
|
|
/* 0276FE08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FE08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276FE0C */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FE10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FE14 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FE14 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276FE14 */ if (_t4) goto L_0276FE1C; else goto L_0276FE18;
|
|
L_0276FE18: ; // 0x276fe18
|
|
/* 0276FE18 */ Gambit_fn_0276F238(cpu);
|
|
L_0276FE1C: ; // 0x276fe1c
|
|
/* 0276FE1C */ _t5 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276FE1C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0276FE20 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FE20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276FE24 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FE24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276FE28 */ cpu->lr = cpu->r[0];
|
|
/* 0276FE2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276FE30 */ return;
|
|
}
|
|
|
|
// fn_0276FDF8 @ 0x276fdf8
|
|
void Gambit_fn_0276FDF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0276FDF8: ; // 0x276fdf8
|
|
/* 0276FDF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276FDF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276FDF8 */ cpu->r[1] = _t0;
|
|
/* 0276FDFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FDFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276FE00 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276FE04 */ cpu->r[3] = 0x000004CCu;
|
|
/* 0276FE08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FE08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276FE0C */ Gambit_fn_02801A78(cpu);
|
|
/* 0276FE10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FE14 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FE14 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0276FE14 */ if (_t4) goto L_0276FE1C; else goto L_0276FE18;
|
|
L_0276FE18: ; // 0x276fe18
|
|
/* 0276FE18 */ Gambit_fn_0276F238(cpu);
|
|
L_0276FE1C: ; // 0x276fe1c
|
|
/* 0276FE1C */ _t5 = cpu->r[31] + 0x000002DCu;
|
|
/* 0276FE1C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0276FE20 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FE20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0276FE24 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FE24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276FE28 */ cpu->lr = cpu->r[0];
|
|
/* 0276FE2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276FE30 */ return;
|
|
}
|
|
|
|
// fn_0276FE34 @ 0x276fe34
|
|
void Gambit_fn_0276FE34(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0276FE34: ; // 0x276fe34
|
|
/* 0276FE34 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0276FE34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0276FE38 */ _t1 = cpu->r[12] + 0x00000254u;
|
|
/* 0276FE38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0276FE3C */ cpu->ctr = cpu->r[0];
|
|
/* 0276FE40 */ cpu->r[4] = 0x00000002u;
|
|
/* 0276FE44 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0276FE48 @ 0x276fe48
|
|
void Gambit_fn_0276FE48(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_0276FE48: ; // 0x276fe48
|
|
/* 0276FE48 */ cpu->r[0] = cpu->lr;
|
|
/* 0276FE4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276FE4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276FE4C */ cpu->r[1] = _t0;
|
|
/* 0276FE50 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FE50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276FE54 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FE54 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276FE58 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276FE5C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FE5C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276FE60 */ _t4 = cpu->r[31] + 0x00000008u;
|
|
/* 0276FE60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276FE64 */ _t5 = cpu->r[10] + 0x000000A4u;
|
|
/* 0276FE64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276FE68 */ cpu->r[4] = cpu->r[31] + 0x00000244u;
|
|
/* 0276FE6C */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276FE70 */ /* nop */
|
|
/* 0276FE74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276FE78 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FE78 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276FE78 */ if (_t7) goto L_0276FE98; else goto L_0276FE7C;
|
|
L_0276FE7C: ; // 0x276fe7c
|
|
/* 0276FE7C */ /* nop */
|
|
/* 0276FE80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276FE84 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FE84 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276FE84 */ if (_t9) goto L_0276FE98; else goto L_0276FE88;
|
|
L_0276FE88: ; // 0x276fe88
|
|
/* 0276FE88 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276FE8C */ Gambit_fn_020026A4(cpu);
|
|
/* 0276FE90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FE94 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FE94 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276FE94 */ if (_t11) goto L_0276FEC8; else goto L_0276FE98;
|
|
L_0276FE98: ; // 0x276fe98
|
|
/* 0276FE98 */ _t12 = cpu->r[31] + 0x00000204u;
|
|
/* 0276FE98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276FE9C */ _t13 = cpu->r[12] + 0x00000088u;
|
|
/* 0276FE9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276FEA0 */ cpu->r[30] = 0x00000001u;
|
|
/* 0276FEA4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276FEA8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0276FEA8 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 0276FEAC */ Gambit_fn_02778A04(cpu);
|
|
/* 0276FEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FEB4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FEB4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0276FEB4 */ if (_t16) goto L_0276FEBC; else goto L_0276FEB8;
|
|
L_0276FEB8: ; // 0x276feb8
|
|
/* 0276FEB8 */ cpu->r[30] = 0x00000002u;
|
|
L_0276FEBC: ; // 0x276febc
|
|
/* 0276FEBC */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276FEC0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0276FEC4 */ Gambit_fn_0276C6F8(cpu);
|
|
L_0276FEC8: ; // 0x276fec8
|
|
/* 0276FEC8 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FEC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276FECC */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FECC */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276FED0 */ cpu->lr = cpu->r[0];
|
|
/* 0276FED4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FED4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276FED8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276FEDC */ return;
|
|
}
|
|
|
|
// fn_0276FE4C @ 0x276fe4c
|
|
void Gambit_fn_0276FE4C(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_0276FE4C: ; // 0x276fe4c
|
|
/* 0276FE4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276FE4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276FE4C */ cpu->r[1] = _t0;
|
|
/* 0276FE50 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FE50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276FE54 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FE54 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276FE58 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276FE5C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FE5C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0276FE60 */ _t4 = cpu->r[31] + 0x00000008u;
|
|
/* 0276FE60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0276FE64 */ _t5 = cpu->r[10] + 0x000000A4u;
|
|
/* 0276FE64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0276FE68 */ cpu->r[4] = cpu->r[31] + 0x00000244u;
|
|
/* 0276FE6C */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276FE70 */ /* nop */
|
|
/* 0276FE74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276FE78 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FE78 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0276FE78 */ if (_t7) goto L_0276FE98; else goto L_0276FE7C;
|
|
L_0276FE7C: ; // 0x276fe7c
|
|
/* 0276FE7C */ /* nop */
|
|
/* 0276FE80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276FE84 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FE84 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276FE84 */ if (_t9) goto L_0276FE98; else goto L_0276FE88;
|
|
L_0276FE88: ; // 0x276fe88
|
|
/* 0276FE88 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276FE8C */ Gambit_fn_020026A4(cpu);
|
|
/* 0276FE90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FE94 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FE94 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0276FE94 */ if (_t11) goto L_0276FEC8; else goto L_0276FE98;
|
|
L_0276FE98: ; // 0x276fe98
|
|
/* 0276FE98 */ _t12 = cpu->r[31] + 0x00000204u;
|
|
/* 0276FE98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276FE9C */ _t13 = cpu->r[12] + 0x00000088u;
|
|
/* 0276FE9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276FEA0 */ cpu->r[30] = 0x00000001u;
|
|
/* 0276FEA4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0276FEA8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0276FEA8 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 0276FEAC */ Gambit_fn_02778A04(cpu);
|
|
/* 0276FEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FEB4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FEB4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0276FEB4 */ if (_t16) goto L_0276FEBC; else goto L_0276FEB8;
|
|
L_0276FEB8: ; // 0x276feb8
|
|
/* 0276FEB8 */ cpu->r[30] = 0x00000002u;
|
|
L_0276FEBC: ; // 0x276febc
|
|
/* 0276FEBC */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0276FEC0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0276FEC4 */ Gambit_fn_0276C6F8(cpu);
|
|
L_0276FEC8: ; // 0x276fec8
|
|
/* 0276FEC8 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FEC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0276FECC */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FECC */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0276FED0 */ cpu->lr = cpu->r[0];
|
|
/* 0276FED4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FED4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0276FED8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276FEDC */ return;
|
|
}
|
|
|
|
// fn_0276FEE0 @ 0x276fee0
|
|
void Gambit_fn_0276FEE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0276FEE0: ; // 0x276fee0
|
|
/* 0276FEE0 */ cpu->r[0] = cpu->lr;
|
|
/* 0276FEE4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276FEE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276FEE4 */ cpu->r[1] = _t0;
|
|
/* 0276FEE8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FEE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276FEEC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FEEC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276FEF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276FEF4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0276FEF8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FEF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0276FEFC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FEFC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276FF00 */ Gambit_fn_02002D68(cpu);
|
|
/* 0276FF04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FF08 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF08 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276FF08 */ if (_t6) goto L_0276FF24; else goto L_0276FF0C;
|
|
L_0276FF0C: ; // 0x276ff0c
|
|
/* 0276FF0C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276FF10 */ _t7 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276FF10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276FF14 */ _t8 = cpu->r[12] + 0x00000250u;
|
|
/* 0276FF14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276FF18 */ Gambit_fn_0209CF00(cpu);
|
|
/* 0276FF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FF20 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF20 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276FF20 */ if (_t10) goto L_0276FF24; else goto L_0276FFCC;
|
|
L_0276FF24: ; // 0x276ff24
|
|
/* 0276FF24 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 0276FF28 */ _t11 = cpu->r[30] + 0x00000008u;
|
|
/* 0276FF28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276FF2C */ cpu->r[10] = cpu->r[30] + 0x00000208u;
|
|
/* 0276FF30 */ cpu->r[29] = cpu->r[10] + cpu->r[0];
|
|
/* 0276FF34 */ _t12 = cpu->r[6] + 0x000000A4u;
|
|
/* 0276FF34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276FF38 */ cpu->r[4] = cpu->r[29];
|
|
/* 0276FF3C */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276FF40 */ /* nop */
|
|
/* 0276FF44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276FF48 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF48 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0276FF48 */ if (_t14) goto L_0276FF78; else goto L_0276FF4C;
|
|
L_0276FF4C: ; // 0x276ff4c
|
|
/* 0276FF4C */ /* nop */
|
|
/* 0276FF50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276FF54 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF54 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0276FF54 */ if (_t16) goto L_0276FF78; else goto L_0276FF58;
|
|
L_0276FF58: ; // 0x276ff58
|
|
/* 0276FF58 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276FF5C */ Gambit_fn_020026A4(cpu);
|
|
/* 0276FF60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FF64 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF64 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276FF64 */ if (_t18) goto L_0276FFD8; else goto L_0276FF68;
|
|
L_0276FF68: ; // 0x276ff68
|
|
/* 0276FF68 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276FF6C */ Gambit_fn_02002700(cpu);
|
|
/* 0276FF70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]);
|
|
/* 0276FF74 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF74 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276FF74 */ if (_t20) goto L_0276FF78; else goto L_0276FFD8;
|
|
L_0276FF78: ; // 0x276ff78
|
|
/* 0276FF78 */ _t21 = cpu->r[30] + 0x00000008u;
|
|
/* 0276FF78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276FF7C */ _t22 = cpu->r[8] + 0x000000A4u;
|
|
/* 0276FF7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276FF80 */ cpu->r[4] = cpu->r[29] + 0x00000054u;
|
|
/* 0276FF84 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276FF88 */ /* nop */
|
|
/* 0276FF8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 0276FF90 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF90 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0276FF90 */ if (_t24) goto L_0276FFCC; else goto L_0276FF94;
|
|
L_0276FF94: ; // 0x276ff94
|
|
/* 0276FF94 */ /* nop */
|
|
/* 0276FF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276FF9C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF9C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0276FF9C */ if (_t26) goto L_0276FFCC; else goto L_0276FFA0;
|
|
L_0276FFA0: ; // 0x276ffa0
|
|
/* 0276FFA0 */ cpu->r[5] = 0x00000000u;
|
|
/* 0276FFA4 */ cpu->r[4] = cpu->r[31] + 0x00000007u;
|
|
/* 0276FFA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276FFAC */ Gambit_fn_0276EAD8(cpu);
|
|
/* 0276FFB0 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FFB0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0276FFB4 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FFB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276FFB8 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FFB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0276FFBC */ cpu->lr = cpu->r[0];
|
|
/* 0276FFC0 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FFC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0276FFC4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276FFC8 */ return;
|
|
L_0276FFCC: ; // 0x276ffcc
|
|
/* 0276FFCC */ cpu->r[3] = cpu->r[30] + 0x000001CCu;
|
|
/* 0276FFD0 */ cpu->r[4] = 0x00000001u;
|
|
/* 0276FFD4 */ Gambit_fn_0276C6F8(cpu);
|
|
L_0276FFD8: ; // 0x276ffd8
|
|
/* 0276FFD8 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FFD8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0276FFDC */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FFDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0276FFE0 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FFE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0276FFE4 */ cpu->lr = cpu->r[0];
|
|
/* 0276FFE8 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FFE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0276FFEC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276FFF0 */ return;
|
|
}
|
|
|
|
// fn_0276FEE4 @ 0x276fee4
|
|
void Gambit_fn_0276FEE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0276FEE4: ; // 0x276fee4
|
|
/* 0276FEE4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276FEE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276FEE4 */ cpu->r[1] = _t0;
|
|
/* 0276FEE8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FEE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276FEEC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FEEC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0276FEF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0276FEF4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0276FEF8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FEF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0276FEFC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FEFC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0276FF00 */ Gambit_fn_02002D68(cpu);
|
|
/* 0276FF04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FF08 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF08 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276FF08 */ if (_t6) goto L_0276FF24; else goto L_0276FF0C;
|
|
L_0276FF0C: ; // 0x276ff0c
|
|
/* 0276FF0C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0276FF10 */ _t7 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 0276FF10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0276FF14 */ _t8 = cpu->r[12] + 0x00000250u;
|
|
/* 0276FF14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0276FF18 */ Gambit_fn_0209CF00(cpu);
|
|
/* 0276FF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FF20 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF20 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0276FF20 */ if (_t10) goto L_0276FF24; else goto L_0276FFCC;
|
|
L_0276FF24: ; // 0x276ff24
|
|
/* 0276FF24 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 0276FF28 */ _t11 = cpu->r[30] + 0x00000008u;
|
|
/* 0276FF28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276FF2C */ cpu->r[10] = cpu->r[30] + 0x00000208u;
|
|
/* 0276FF30 */ cpu->r[29] = cpu->r[10] + cpu->r[0];
|
|
/* 0276FF34 */ _t12 = cpu->r[6] + 0x000000A4u;
|
|
/* 0276FF34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276FF38 */ cpu->r[4] = cpu->r[29];
|
|
/* 0276FF3C */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276FF40 */ /* nop */
|
|
/* 0276FF44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276FF48 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF48 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0276FF48 */ if (_t14) goto L_0276FF78; else goto L_0276FF4C;
|
|
L_0276FF4C: ; // 0x276ff4c
|
|
/* 0276FF4C */ /* nop */
|
|
/* 0276FF50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276FF54 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF54 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0276FF54 */ if (_t16) goto L_0276FF78; else goto L_0276FF58;
|
|
L_0276FF58: ; // 0x276ff58
|
|
/* 0276FF58 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276FF5C */ Gambit_fn_020026A4(cpu);
|
|
/* 0276FF60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0276FF64 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF64 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0276FF64 */ if (_t18) goto L_0276FFD8; else goto L_0276FF68;
|
|
L_0276FF68: ; // 0x276ff68
|
|
/* 0276FF68 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276FF6C */ Gambit_fn_02002700(cpu);
|
|
/* 0276FF70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]);
|
|
/* 0276FF74 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF74 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0276FF74 */ if (_t20) goto L_0276FF78; else goto L_0276FFD8;
|
|
L_0276FF78: ; // 0x276ff78
|
|
/* 0276FF78 */ _t21 = cpu->r[30] + 0x00000008u;
|
|
/* 0276FF78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0276FF7C */ _t22 = cpu->r[8] + 0x000000A4u;
|
|
/* 0276FF7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0276FF80 */ cpu->r[4] = cpu->r[29] + 0x00000054u;
|
|
/* 0276FF84 */ Gambit_fn_02983BC4(cpu);
|
|
/* 0276FF88 */ /* nop */
|
|
/* 0276FF8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 0276FF90 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF90 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0276FF90 */ if (_t24) goto L_0276FFCC; else goto L_0276FF94;
|
|
L_0276FF94: ; // 0x276ff94
|
|
/* 0276FF94 */ /* nop */
|
|
/* 0276FF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0276FF9C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276FF9C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0276FF9C */ if (_t26) goto L_0276FFCC; else goto L_0276FFA0;
|
|
L_0276FFA0: ; // 0x276ffa0
|
|
/* 0276FFA0 */ cpu->r[5] = 0x00000000u;
|
|
/* 0276FFA4 */ cpu->r[4] = cpu->r[31] + 0x00000007u;
|
|
/* 0276FFA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0276FFAC */ Gambit_fn_0276EAD8(cpu);
|
|
/* 0276FFB0 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FFB0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0276FFB4 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FFB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0276FFB8 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FFB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0276FFBC */ cpu->lr = cpu->r[0];
|
|
/* 0276FFC0 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FFC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0276FFC4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276FFC8 */ return;
|
|
L_0276FFCC: ; // 0x276ffcc
|
|
/* 0276FFCC */ cpu->r[3] = cpu->r[30] + 0x000001CCu;
|
|
/* 0276FFD0 */ cpu->r[4] = 0x00000001u;
|
|
/* 0276FFD4 */ Gambit_fn_0276C6F8(cpu);
|
|
L_0276FFD8: ; // 0x276ffd8
|
|
/* 0276FFD8 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276FFD8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0276FFDC */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0276FFDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0276FFE0 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0276FFE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0276FFE4 */ cpu->lr = cpu->r[0];
|
|
/* 0276FFE8 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 0276FFE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0276FFEC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0276FFF0 */ return;
|
|
}
|
|
|
|
// fn_0276FFF4 @ 0x276fff4
|
|
void Gambit_fn_0276FFF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_0276FFF4: ; // 0x276fff4
|
|
/* 0276FFF4 */ cpu->r[10] = 0x00000002u;
|
|
/* 0276FFF8 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0276FFFC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276FFFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276FFFC */ cpu->r[1] = _t0;
|
|
/* 02770000 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02770004 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02770004 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02770008 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0277000C */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02770010 */ _t2 = cpu->r[6] + 0x00001C08u;
|
|
/* 02770010 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770010 */ cpu->r[6] = _t2;
|
|
/* 02770014 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02770018 */ _t3 = cpu->r[11] + 0x00001C10u;
|
|
/* 02770018 */ rbrew_write32(cpu->mem, _t3, cpu->r[5]);
|
|
/* 02770018 */ cpu->r[11] = _t3;
|
|
/* 0277001C */ cpu->r[12] = cpu->r[12] + 0x00001C18u;
|
|
/* 02770020 */ _t4 = cpu->r[6] + 0x00000004u;
|
|
/* 02770020 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02770024 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02770028 */ _t5 = cpu->r[12] + 0x00000004u;
|
|
/* 02770028 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0277002C */ _t6 = cpu->r[8] + 0x00001BF8u;
|
|
/* 0277002C */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 0277002C */ cpu->r[8] = _t6;
|
|
/* 02770030 */ cpu->r[7] = 0x101F0000u;
|
|
/* 02770034 */ _t7 = cpu->r[8] + 0x00000004u;
|
|
/* 02770034 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02770038 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0277003C */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0277003C */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02770040 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02770044 */ _t9 = cpu->r[11] + 0x00000004u;
|
|
/* 02770044 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02770048 */ cpu->r[8] = cpu->r[8] + 0x00001C24u;
|
|
/* 0277004C */ _t10 = cpu->r[7] + 0x00001C00u;
|
|
/* 0277004C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0277004C */ cpu->r[7] = _t10;
|
|
/* 02770050 */ cpu->r[9] = 0x10100000u;
|
|
/* 02770054 */ _t11 = cpu->r[7] + 0x00000004u;
|
|
/* 02770054 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02770058 */ cpu->r[7] = 0x10100000u;
|
|
/* 0277005C */ cpu->r[9] = cpu->r[9] + 0x00001288u;
|
|
/* 02770060 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02770060 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02770064 */ cpu->r[7] = cpu->r[7] + 0x00001790u;
|
|
/* 02770068 */ _t13 = cpu->r[8] + 0x00000004u;
|
|
/* 02770068 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 0277006C */ cpu->r[11] = 0x10100000u;
|
|
/* 02770070 */ _t14 = cpu->r[8] + 0x00000000u;
|
|
/* 02770070 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 02770074 */ cpu->r[11] = cpu->r[11] + 0x00001798u;
|
|
/* 02770078 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02770078 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 0277007C */ cpu->r[12] = 0x10100000u;
|
|
/* 02770080 */ _t16 = cpu->r[8] + 0x00000008u;
|
|
/* 02770080 */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 02770084 */ cpu->r[12] = cpu->r[12] + 0x00001780u;
|
|
/* 02770088 */ _t17 = cpu->r[8] + 0x00000014u;
|
|
/* 02770088 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0277008C */ cpu->r[0] = 0x10100000u;
|
|
/* 02770090 */ _t18 = cpu->r[8] + 0x00000010u;
|
|
/* 02770090 */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02770094 */ cpu->r[0] = cpu->r[0] + 0x000017DCu;
|
|
/* 02770098 */ _t19 = cpu->r[8] + 0x0000001Cu;
|
|
/* 02770098 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 0277009C */ cpu->r[6] = 0x10100000u;
|
|
/* 027700A0 */ _t20 = cpu->r[8] + 0x00000018u;
|
|
/* 027700A0 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 027700A4 */ cpu->r[6] = cpu->r[6] + 0x00001788u;
|
|
/* 027700A8 */ _t21 = cpu->r[8] + 0x00000024u;
|
|
/* 027700A8 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 027700AC */ cpu->r[7] = 0x10100000u;
|
|
/* 027700B0 */ _t22 = cpu->r[8] + 0x00000020u;
|
|
/* 027700B0 */ rbrew_write32(cpu->mem, _t22, cpu->r[6]);
|
|
/* 027700B4 */ cpu->r[7] = cpu->r[7] + 0x000017A0u;
|
|
/* 027700B8 */ _t23 = cpu->r[8] + 0x0000002Cu;
|
|
/* 027700B8 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 027700BC */ cpu->r[11] = 0x10100000u;
|
|
/* 027700C0 */ _t24 = cpu->r[8] + 0x00000028u;
|
|
/* 027700C0 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 027700C4 */ cpu->r[11] = cpu->r[11] + 0x000017A8u;
|
|
/* 027700C8 */ _t25 = cpu->r[8] + 0x00000034u;
|
|
/* 027700C8 */ rbrew_write32(cpu->mem, _t25, cpu->r[9]);
|
|
/* 027700CC */ cpu->r[12] = 0x10100000u;
|
|
/* 027700D0 */ _t26 = cpu->r[8] + 0x00000030u;
|
|
/* 027700D0 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 027700D4 */ cpu->r[12] = cpu->r[12] + 0x000017B4u;
|
|
/* 027700D8 */ _t27 = cpu->r[8] + 0x0000003Cu;
|
|
/* 027700D8 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 027700DC */ cpu->r[0] = 0x10100000u;
|
|
/* 027700E0 */ _t28 = cpu->r[8] + 0x00000038u;
|
|
/* 027700E0 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 027700E4 */ cpu->r[0] = cpu->r[0] + 0x000017C0u;
|
|
/* 027700E8 */ _t29 = cpu->r[8] + 0x00000044u;
|
|
/* 027700E8 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 027700EC */ cpu->r[5] = 0x10100000u;
|
|
/* 027700F0 */ _t30 = cpu->r[8] + 0x00000040u;
|
|
/* 027700F0 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 027700F4 */ cpu->r[5] = cpu->r[5] + 0x000017E8u;
|
|
/* 027700F8 */ _t31 = cpu->r[8] + 0x0000004Cu;
|
|
/* 027700F8 */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 027700FC */ cpu->r[6] = 0x10100000u;
|
|
/* 02770100 */ _t32 = cpu->r[8] + 0x00000048u;
|
|
/* 02770100 */ rbrew_write32(cpu->mem, _t32, cpu->r[5]);
|
|
/* 02770104 */ cpu->r[6] = cpu->r[6] + 0x000017CCu;
|
|
/* 02770108 */ _t33 = cpu->r[8] + 0x00000054u;
|
|
/* 02770108 */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 0277010C */ cpu->r[0] = 0x00000004u;
|
|
/* 02770110 */ _t34 = cpu->r[8] + 0x00000050u;
|
|
/* 02770110 */ rbrew_write32(cpu->mem, _t34, cpu->r[6]);
|
|
/* 02770114 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02770118 */ cpu->r[7] = 0x10100000u;
|
|
/* 0277011C */ _t35 = cpu->r[8] + 0x0000005Cu;
|
|
/* 0277011C */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 02770120 */ cpu->r[7] = cpu->r[7] + 0x000017F8u;
|
|
/* 02770124 */ _t36 = cpu->r[12] + 0x00001C20u;
|
|
/* 02770124 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02770128 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277012C */ _t37 = cpu->r[8] + 0x00000058u;
|
|
/* 0277012C */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 02770130 */ return;
|
|
}
|
|
|
|
// fn_0276FFFC @ 0x276fffc
|
|
void Gambit_fn_0276FFFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_0276FFFC: ; // 0x276fffc
|
|
/* 0276FFFC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0276FFFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276FFFC */ cpu->r[1] = _t0;
|
|
/* 02770000 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02770004 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02770004 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02770008 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0277000C */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02770010 */ _t2 = cpu->r[6] + 0x00001C08u;
|
|
/* 02770010 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770010 */ cpu->r[6] = _t2;
|
|
/* 02770014 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02770018 */ _t3 = cpu->r[11] + 0x00001C10u;
|
|
/* 02770018 */ rbrew_write32(cpu->mem, _t3, cpu->r[5]);
|
|
/* 02770018 */ cpu->r[11] = _t3;
|
|
/* 0277001C */ cpu->r[12] = cpu->r[12] + 0x00001C18u;
|
|
/* 02770020 */ _t4 = cpu->r[6] + 0x00000004u;
|
|
/* 02770020 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02770024 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02770028 */ _t5 = cpu->r[12] + 0x00000004u;
|
|
/* 02770028 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0277002C */ _t6 = cpu->r[8] + 0x00001BF8u;
|
|
/* 0277002C */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 0277002C */ cpu->r[8] = _t6;
|
|
/* 02770030 */ cpu->r[7] = 0x101F0000u;
|
|
/* 02770034 */ _t7 = cpu->r[8] + 0x00000004u;
|
|
/* 02770034 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02770038 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0277003C */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0277003C */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02770040 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02770044 */ _t9 = cpu->r[11] + 0x00000004u;
|
|
/* 02770044 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02770048 */ cpu->r[8] = cpu->r[8] + 0x00001C24u;
|
|
/* 0277004C */ _t10 = cpu->r[7] + 0x00001C00u;
|
|
/* 0277004C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0277004C */ cpu->r[7] = _t10;
|
|
/* 02770050 */ cpu->r[9] = 0x10100000u;
|
|
/* 02770054 */ _t11 = cpu->r[7] + 0x00000004u;
|
|
/* 02770054 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02770058 */ cpu->r[7] = 0x10100000u;
|
|
/* 0277005C */ cpu->r[9] = cpu->r[9] + 0x00001288u;
|
|
/* 02770060 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02770060 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02770064 */ cpu->r[7] = cpu->r[7] + 0x00001790u;
|
|
/* 02770068 */ _t13 = cpu->r[8] + 0x00000004u;
|
|
/* 02770068 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 0277006C */ cpu->r[11] = 0x10100000u;
|
|
/* 02770070 */ _t14 = cpu->r[8] + 0x00000000u;
|
|
/* 02770070 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 02770074 */ cpu->r[11] = cpu->r[11] + 0x00001798u;
|
|
/* 02770078 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02770078 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 0277007C */ cpu->r[12] = 0x10100000u;
|
|
/* 02770080 */ _t16 = cpu->r[8] + 0x00000008u;
|
|
/* 02770080 */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 02770084 */ cpu->r[12] = cpu->r[12] + 0x00001780u;
|
|
/* 02770088 */ _t17 = cpu->r[8] + 0x00000014u;
|
|
/* 02770088 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0277008C */ cpu->r[0] = 0x10100000u;
|
|
/* 02770090 */ _t18 = cpu->r[8] + 0x00000010u;
|
|
/* 02770090 */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02770094 */ cpu->r[0] = cpu->r[0] + 0x000017DCu;
|
|
/* 02770098 */ _t19 = cpu->r[8] + 0x0000001Cu;
|
|
/* 02770098 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 0277009C */ cpu->r[6] = 0x10100000u;
|
|
/* 027700A0 */ _t20 = cpu->r[8] + 0x00000018u;
|
|
/* 027700A0 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 027700A4 */ cpu->r[6] = cpu->r[6] + 0x00001788u;
|
|
/* 027700A8 */ _t21 = cpu->r[8] + 0x00000024u;
|
|
/* 027700A8 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 027700AC */ cpu->r[7] = 0x10100000u;
|
|
/* 027700B0 */ _t22 = cpu->r[8] + 0x00000020u;
|
|
/* 027700B0 */ rbrew_write32(cpu->mem, _t22, cpu->r[6]);
|
|
/* 027700B4 */ cpu->r[7] = cpu->r[7] + 0x000017A0u;
|
|
/* 027700B8 */ _t23 = cpu->r[8] + 0x0000002Cu;
|
|
/* 027700B8 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 027700BC */ cpu->r[11] = 0x10100000u;
|
|
/* 027700C0 */ _t24 = cpu->r[8] + 0x00000028u;
|
|
/* 027700C0 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 027700C4 */ cpu->r[11] = cpu->r[11] + 0x000017A8u;
|
|
/* 027700C8 */ _t25 = cpu->r[8] + 0x00000034u;
|
|
/* 027700C8 */ rbrew_write32(cpu->mem, _t25, cpu->r[9]);
|
|
/* 027700CC */ cpu->r[12] = 0x10100000u;
|
|
/* 027700D0 */ _t26 = cpu->r[8] + 0x00000030u;
|
|
/* 027700D0 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 027700D4 */ cpu->r[12] = cpu->r[12] + 0x000017B4u;
|
|
/* 027700D8 */ _t27 = cpu->r[8] + 0x0000003Cu;
|
|
/* 027700D8 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 027700DC */ cpu->r[0] = 0x10100000u;
|
|
/* 027700E0 */ _t28 = cpu->r[8] + 0x00000038u;
|
|
/* 027700E0 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 027700E4 */ cpu->r[0] = cpu->r[0] + 0x000017C0u;
|
|
/* 027700E8 */ _t29 = cpu->r[8] + 0x00000044u;
|
|
/* 027700E8 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 027700EC */ cpu->r[5] = 0x10100000u;
|
|
/* 027700F0 */ _t30 = cpu->r[8] + 0x00000040u;
|
|
/* 027700F0 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 027700F4 */ cpu->r[5] = cpu->r[5] + 0x000017E8u;
|
|
/* 027700F8 */ _t31 = cpu->r[8] + 0x0000004Cu;
|
|
/* 027700F8 */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 027700FC */ cpu->r[6] = 0x10100000u;
|
|
/* 02770100 */ _t32 = cpu->r[8] + 0x00000048u;
|
|
/* 02770100 */ rbrew_write32(cpu->mem, _t32, cpu->r[5]);
|
|
/* 02770104 */ cpu->r[6] = cpu->r[6] + 0x000017CCu;
|
|
/* 02770108 */ _t33 = cpu->r[8] + 0x00000054u;
|
|
/* 02770108 */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 0277010C */ cpu->r[0] = 0x00000004u;
|
|
/* 02770110 */ _t34 = cpu->r[8] + 0x00000050u;
|
|
/* 02770110 */ rbrew_write32(cpu->mem, _t34, cpu->r[6]);
|
|
/* 02770114 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02770118 */ cpu->r[7] = 0x10100000u;
|
|
/* 0277011C */ _t35 = cpu->r[8] + 0x0000005Cu;
|
|
/* 0277011C */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 02770120 */ cpu->r[7] = cpu->r[7] + 0x000017F8u;
|
|
/* 02770124 */ _t36 = cpu->r[12] + 0x00001C20u;
|
|
/* 02770124 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02770128 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277012C */ _t37 = cpu->r[8] + 0x00000058u;
|
|
/* 0277012C */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 02770130 */ return;
|
|
}
|
|
|
|
// fn_02770134 @ 0x2770134
|
|
void Gambit_fn_02770134(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_02770134: ; // 0x2770134
|
|
/* 02770134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02770138 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770138 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02770138 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770138 */ goto L_0277013C;
|
|
L_0277013C: ; // 0x277013c
|
|
/* 0277013C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0277013C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770140 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770140 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02770140 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770140 */ goto L_02770144;
|
|
L_02770144: ; // 0x2770144
|
|
/* 02770144 */ 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_02770148 @ 0x2770148
|
|
void Gambit_fn_02770148(CPUState* cpu) {
|
|
L_02770148: ; // 0x2770148
|
|
/* 02770148 */ return;
|
|
}
|
|
|
|
// fn_0277014C @ 0x277014c
|
|
void Gambit_fn_0277014C(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_0277014C: ; // 0x277014c
|
|
/* 0277014C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02770150 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770150 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02770150 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770150 */ goto L_02770154;
|
|
L_02770154: ; // 0x2770154
|
|
/* 02770154 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770158 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770158 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02770158 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770158 */ goto L_0277015C;
|
|
L_0277015C: ; // 0x277015c
|
|
/* 0277015C */ 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_02770160 @ 0x2770160
|
|
void Gambit_fn_02770160(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02770160: ; // 0x2770160
|
|
/* 02770160 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02770160 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770164 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02770164 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02770168 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0277016C */ cpu->r[11] = 0x10110000u;
|
|
/* 02770170 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02770170 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02770174 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02770174 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02770178 */ return;
|
|
}
|
|
|
|
// fn_0277017C @ 0x277017c
|
|
void Gambit_fn_0277017C(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_0277017C: ; // 0x277017c
|
|
/* 0277017C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02770180 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770180 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02770180 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770180 */ goto L_02770184;
|
|
L_02770184: ; // 0x2770184
|
|
/* 02770184 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770184 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770188 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770188 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02770188 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770188 */ goto L_0277018C;
|
|
L_0277018C: ; // 0x277018c
|
|
/* 0277018C */ 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_02770190 @ 0x2770190
|
|
void Gambit_fn_02770190(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_02770190: ; // 0x2770190
|
|
/* 02770190 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02770194 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770194 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02770194 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770194 */ goto L_02770198;
|
|
L_02770198: ; // 0x2770198
|
|
/* 02770198 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0277019C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277019C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0277019C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0277019C */ goto L_027701A0;
|
|
L_027701A0: ; // 0x27701a0
|
|
/* 027701A0 */ 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_027701A4 @ 0x27701a4
|
|
void Gambit_fn_027701A4(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_027701A4: ; // 0x27701a4
|
|
/* 027701A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027701A8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027701A8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027701A8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027701A8 */ goto L_027701AC;
|
|
L_027701AC: ; // 0x27701ac
|
|
/* 027701AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027701AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027701B0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027701B0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027701B0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027701B0 */ goto L_027701B4;
|
|
L_027701B4: ; // 0x27701b4
|
|
/* 027701B4 */ 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_027701B8 @ 0x27701b8
|
|
void Gambit_fn_027701B8(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_027701B8: ; // 0x27701b8
|
|
/* 027701B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027701BC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027701BC */ _t1 = _t0 & 0x00000001u;
|
|
/* 027701BC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027701BC */ goto L_027701C0;
|
|
L_027701C0: ; // 0x27701c0
|
|
/* 027701C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027701C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027701C4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027701C4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027701C4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027701C4 */ goto L_027701C8;
|
|
L_027701C8: ; // 0x27701c8
|
|
/* 027701C8 */ 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_027701CC @ 0x27701cc
|
|
void Gambit_fn_027701CC(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_027701CC: ; // 0x27701cc
|
|
/* 027701CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027701D0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027701D0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027701D0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027701D0 */ goto L_027701D4;
|
|
L_027701D4: ; // 0x27701d4
|
|
/* 027701D4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027701D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027701D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027701D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027701D8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027701D8 */ goto L_027701DC;
|
|
L_027701DC: ; // 0x27701dc
|
|
/* 027701DC */ 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_027701E0 @ 0x27701e0
|
|
void Gambit_fn_027701E0(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_027701E0: ; // 0x27701e0
|
|
/* 027701E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027701E4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027701E4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027701E4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027701E4 */ goto L_027701E8;
|
|
L_027701E8: ; // 0x27701e8
|
|
/* 027701E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027701E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027701EC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027701EC */ _t3 = _t2 & 0x00000001u;
|
|
/* 027701EC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027701EC */ goto L_027701F0;
|
|
L_027701F0: ; // 0x27701f0
|
|
/* 027701F0 */ 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_027701F4 @ 0x27701f4
|
|
void Gambit_fn_027701F4(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_027701F4: ; // 0x27701f4
|
|
/* 027701F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027701F8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027701F8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027701F8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027701F8 */ goto L_027701FC;
|
|
L_027701FC: ; // 0x27701fc
|
|
/* 027701FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027701FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770200 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770200 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02770200 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770200 */ goto L_02770204;
|
|
L_02770204: ; // 0x2770204
|
|
/* 02770204 */ 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_02770208 @ 0x2770208
|
|
void Gambit_fn_02770208(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_02770208: ; // 0x2770208
|
|
/* 02770208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0277020C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277020C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0277020C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0277020C */ goto L_02770210;
|
|
L_02770210: ; // 0x2770210
|
|
/* 02770210 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770214 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770214 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02770214 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770214 */ goto L_02770218;
|
|
L_02770218: ; // 0x2770218
|
|
/* 02770218 */ 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_0277021C @ 0x277021c
|
|
void Gambit_fn_0277021C(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_0277021C: ; // 0x277021c
|
|
/* 0277021C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02770220 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770220 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02770220 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770220 */ goto L_02770224;
|
|
L_02770224: ; // 0x2770224
|
|
/* 02770224 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770228 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770228 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02770228 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770228 */ goto L_0277022C;
|
|
L_0277022C: ; // 0x277022c
|
|
/* 0277022C */ 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_02770230 @ 0x2770230
|
|
void Gambit_fn_02770230(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_02770230: ; // 0x2770230
|
|
/* 02770230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02770234 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770234 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02770234 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770234 */ goto L_02770238;
|
|
L_02770238: ; // 0x2770238
|
|
/* 02770238 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0277023C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277023C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0277023C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0277023C */ goto L_02770240;
|
|
L_02770240: ; // 0x2770240
|
|
/* 02770240 */ 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_02770244 @ 0x2770244
|
|
void Gambit_fn_02770244(CPUState* cpu) {
|
|
L_02770244: ; // 0x2770244
|
|
/* 02770244 */ return;
|
|
}
|
|
|
|
// fn_02770248 @ 0x2770248
|
|
void Gambit_fn_02770248(CPUState* cpu) {
|
|
L_02770248: ; // 0x2770248
|
|
/* 02770248 */ return;
|
|
}
|
|
|
|
// fn_0277024C @ 0x277024c
|
|
void Gambit_fn_0277024C(CPUState* cpu) {
|
|
L_0277024C: ; // 0x277024c
|
|
/* 0277024C */ return;
|
|
}
|
|
|
|
// fn_02770250 @ 0x2770250
|
|
void Gambit_fn_02770250(CPUState* cpu) {
|
|
L_02770250: ; // 0x2770250
|
|
/* 02770250 */ return;
|
|
}
|
|
|
|
// fn_02770254 @ 0x2770254
|
|
void Gambit_fn_02770254(CPUState* cpu) {
|
|
L_02770254: ; // 0x2770254
|
|
/* 02770254 */ return;
|
|
}
|
|
|
|
// fn_02770258 @ 0x2770258
|
|
void Gambit_fn_02770258(CPUState* cpu) {
|
|
L_02770258: ; // 0x2770258
|
|
/* 02770258 */ return;
|
|
}
|
|
|
|
// fn_0277025C @ 0x277025c
|
|
void Gambit_fn_0277025C(CPUState* cpu) {
|
|
L_0277025C: ; // 0x277025c
|
|
/* 0277025C */ return;
|
|
}
|
|
|
|
// fn_02770260 @ 0x2770260
|
|
void Gambit_fn_02770260(CPUState* cpu) {
|
|
L_02770260: ; // 0x2770260
|
|
/* 02770260 */ return;
|
|
}
|
|
|
|
// fn_02770264 @ 0x2770264
|
|
void Gambit_fn_02770264(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02770264: ; // 0x2770264
|
|
/* 02770264 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02770264 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0277026C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277026C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0277026C */ if (_t2) goto L_02770278; else goto L_02770270;
|
|
L_02770270: ; // 0x2770270
|
|
/* 02770270 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02770274 */ return;
|
|
L_02770278: ; // 0x2770278
|
|
/* 02770278 */ cpu->r[3] = 0x00000000u;
|
|
/* 0277027C */ return;
|
|
}
|
|
|
|
// fn_02770280 @ 0x2770280
|
|
void Gambit_fn_02770280(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02770280: ; // 0x2770280
|
|
/* 02770280 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02770280 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770288 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770288 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770288 */ if (_t2) goto L_02770294; else goto L_0277028C;
|
|
L_0277028C: ; // 0x277028c
|
|
/* 0277028C */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02770290 */ return;
|
|
L_02770294: ; // 0x2770294
|
|
/* 02770294 */ cpu->r[3] = 0x00000000u;
|
|
/* 02770298 */ return;
|
|
}
|
|
|
|
// fn_0277029C @ 0x277029c
|
|
void Gambit_fn_0277029C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0277029C: ; // 0x277029c
|
|
/* 0277029C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0277029C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027702A0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027702A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027702A4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027702A4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 027702A4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 027702A4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027702A4 */ goto L_027702A8;
|
|
L_027702A8: ; // 0x27702a8
|
|
/* 027702A8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 027702A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027702AC */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 027702AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027702B0 */ cpu->ctr = cpu->r[0];
|
|
/* 027702B4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_027702B8 @ 0x27702b8
|
|
void Gambit_fn_027702B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027702B8: ; // 0x27702b8
|
|
/* 027702B8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027702B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027702BC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027702BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027702C0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027702C0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 027702C0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 027702C0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027702C0 */ goto L_027702C4;
|
|
L_027702C4: ; // 0x27702c4
|
|
/* 027702C4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 027702C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027702C8 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 027702C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027702CC */ cpu->ctr = cpu->r[0];
|
|
/* 027702D0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_027702D4 @ 0x27702d4
|
|
void Gambit_fn_027702D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027702D4: ; // 0x27702d4
|
|
/* 027702D4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027702D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027702D8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027702D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027702DC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027702DC */ _t2 = _t1 & 0x00000001u;
|
|
/* 027702DC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 027702DC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027702DC */ goto L_027702E0;
|
|
L_027702E0: ; // 0x27702e0
|
|
/* 027702E0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 027702E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027702E4 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 027702E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027702E8 */ cpu->ctr = cpu->r[0];
|
|
/* 027702EC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_027702F0 @ 0x27702f0
|
|
void Gambit_fn_027702F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027702F0: ; // 0x27702f0
|
|
/* 027702F0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 027702F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027702F4 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027702F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027702F8 */ cpu->ctr = cpu->r[0];
|
|
/* 027702FC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770300 @ 0x2770300
|
|
void Gambit_fn_02770300(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02770300: ; // 0x2770300
|
|
/* 02770300 */ cpu->r[0] = cpu->lr;
|
|
/* 02770304 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02770304 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770304 */ cpu->r[1] = _t0;
|
|
/* 02770308 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770308 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0277030C */ cpu->r[31] = cpu->r[3];
|
|
/* 02770310 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02770310 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770314 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02770314 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02770318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0277031C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277031C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0277031C */ if (_t5) goto L_02770320; else goto L_0277033C;
|
|
L_02770320: ; // 0x2770320
|
|
/* 02770320 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02770320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02770324 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02770324 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02770328 */ cpu->ctr = cpu->r[0];
|
|
/* 0277032C */ cpu->r[3] = cpu->r[31];
|
|
/* 02770330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02770334 */ cpu->r[0] = 0x00000002u;
|
|
/* 02770338 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02770338 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0277033C: ; // 0x277033c
|
|
/* 0277033C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0277033C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02770340 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770340 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02770344 */ cpu->lr = cpu->r[0];
|
|
/* 02770348 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0277034C */ return;
|
|
}
|
|
|
|
// fn_02770304 @ 0x2770304
|
|
void Gambit_fn_02770304(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02770304: ; // 0x2770304
|
|
/* 02770304 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02770304 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770304 */ cpu->r[1] = _t0;
|
|
/* 02770308 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770308 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0277030C */ cpu->r[31] = cpu->r[3];
|
|
/* 02770310 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02770310 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770314 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02770314 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02770318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0277031C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277031C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0277031C */ if (_t5) goto L_02770320; else goto L_0277033C;
|
|
L_02770320: ; // 0x2770320
|
|
/* 02770320 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02770320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02770324 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02770324 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02770328 */ cpu->ctr = cpu->r[0];
|
|
/* 0277032C */ cpu->r[3] = cpu->r[31];
|
|
/* 02770330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02770334 */ cpu->r[0] = 0x00000002u;
|
|
/* 02770338 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02770338 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0277033C: ; // 0x277033c
|
|
/* 0277033C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0277033C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02770340 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770340 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02770344 */ cpu->lr = cpu->r[0];
|
|
/* 02770348 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0277034C */ return;
|
|
}
|
|
|
|
// fn_02770350 @ 0x2770350
|
|
void Gambit_fn_02770350(CPUState* cpu) {
|
|
L_02770350: ; // 0x2770350
|
|
/* 02770350 */ return;
|
|
}
|
|
|
|
// fn_02770354 @ 0x2770354
|
|
void Gambit_fn_02770354(CPUState* cpu) {
|
|
L_02770354: ; // 0x2770354
|
|
/* 02770354 */ return;
|
|
}
|
|
|
|
// fn_02770358 @ 0x2770358
|
|
void Gambit_fn_02770358(CPUState* cpu) {
|
|
L_02770358: ; // 0x2770358
|
|
/* 02770358 */ cpu->r[3] = 0x00000001u;
|
|
/* 0277035C */ return;
|
|
}
|
|
|
|
// fn_02770360 @ 0x2770360
|
|
void Gambit_fn_02770360(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02770360: ; // 0x2770360
|
|
/* 02770360 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02770364 */ _t0 = cpu->r[11] + 0xFFFFDA34u;
|
|
/* 02770364 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770364 */ cpu->r[11] = _t0;
|
|
/* 02770368 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0277036C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770370 */ cpu->r[12] = cpu->r[12] + 0xFFFFDDE4u;
|
|
/* 02770374 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770374 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770374 */ if (_t2) goto L_02770378; else goto L_0277038C;
|
|
L_02770378: ; // 0x2770378
|
|
/* 02770378 */ cpu->r[9] = 0x10100000u;
|
|
/* 0277037C */ cpu->r[8] = 0x00000001u;
|
|
/* 02770380 */ cpu->r[9] = cpu->r[9] + 0x00001278u;
|
|
/* 02770384 */ _t3 = cpu->r[11] + 0x00000000u;
|
|
/* 02770384 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02770388 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02770388 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_0277038C: ; // 0x277038c
|
|
/* 0277038C */ cpu->r[10] = cpu->r[4] ^ cpu->r[12];
|
|
/* 02770390 */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 02770394 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02770398 */ return;
|
|
}
|
|
|
|
// fn_0277039C @ 0x277039c
|
|
void Gambit_fn_0277039C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0277039C: ; // 0x277039c
|
|
/* 0277039C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0277039C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027703A0 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 027703A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027703A4 */ cpu->ctr = cpu->r[0];
|
|
/* 027703A8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_027703AC @ 0x27703ac
|
|
void Gambit_fn_027703AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027703AC: ; // 0x27703ac
|
|
/* 027703AC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 027703AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027703B0 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 027703B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027703B4 */ cpu->ctr = cpu->r[0];
|
|
/* 027703B8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_027703BC @ 0x27703bc
|
|
void Gambit_fn_027703BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027703BC: ; // 0x27703bc
|
|
/* 027703BC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 027703BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027703C0 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 027703C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027703C4 */ cpu->ctr = cpu->r[0];
|
|
/* 027703C8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_027703CC @ 0x27703cc
|
|
void Gambit_fn_027703CC(CPUState* cpu) {
|
|
L_027703CC: ; // 0x27703cc
|
|
/* 027703CC */ cpu->r[3] = 0x00000001u;
|
|
/* 027703D0 */ return;
|
|
}
|
|
|
|
// fn_027703D4 @ 0x27703d4
|
|
void Gambit_fn_027703D4(CPUState* cpu) {
|
|
L_027703D4: ; // 0x27703d4
|
|
/* 027703D4 */ return;
|
|
}
|
|
|
|
// fn_027703D8 @ 0x27703d8
|
|
void Gambit_fn_027703D8(CPUState* cpu) {
|
|
L_027703D8: ; // 0x27703d8
|
|
/* 027703D8 */ return;
|
|
}
|
|
|
|
// fn_027703DC @ 0x27703dc
|
|
void Gambit_fn_027703DC(CPUState* cpu) {
|
|
L_027703DC: ; // 0x27703dc
|
|
/* 027703DC */ return;
|
|
}
|
|
|
|
// fn_027703E0 @ 0x27703e0
|
|
void Gambit_fn_027703E0(CPUState* cpu) {
|
|
L_027703E0: ; // 0x27703e0
|
|
/* 027703E0 */ return;
|
|
}
|
|
|
|
// fn_027703E4 @ 0x27703e4
|
|
void Gambit_fn_027703E4(CPUState* cpu) {
|
|
L_027703E4: ; // 0x27703e4
|
|
/* 027703E4 */ return;
|
|
}
|
|
|
|
// fn_027703E8 @ 0x27703e8
|
|
void Gambit_fn_027703E8(CPUState* cpu) {
|
|
L_027703E8: ; // 0x27703e8
|
|
/* 027703E8 */ cpu->r[3] = 0x00000001u;
|
|
/* 027703EC */ return;
|
|
}
|
|
|
|
// fn_027703F0 @ 0x27703f0
|
|
void Gambit_fn_027703F0(CPUState* cpu) {
|
|
L_027703F0: ; // 0x27703f0
|
|
/* 027703F0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027703F4 */ return;
|
|
}
|
|
|
|
// fn_027703F8 @ 0x27703f8
|
|
void Gambit_fn_027703F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_027703F8: ; // 0x27703f8
|
|
/* 027703F8 */ cpu->r[0] = cpu->lr;
|
|
/* 027703FC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027703FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027703FC */ cpu->r[1] = _t0;
|
|
/* 02770400 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02770400 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02770404 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770404 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770408 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 02770408 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0277040C */ cpu->r[4] = 0x00000000u;
|
|
/* 02770410 */ cpu->r[3] = cpu->r[31];
|
|
/* 02770414 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02770418 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02770418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0277041C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770420 */ cpu->r[11] = 0x00000000u;
|
|
/* 02770424 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770424 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02770424 */ if (_t6) goto L_02770430; else goto L_02770428;
|
|
L_02770428: ; // 0x2770428
|
|
/* 02770428 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 02770428 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0277042C */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0277042C */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_02770430: ; // 0x2770430
|
|
/* 02770430 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 02770430 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02770434 */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 02770434 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02770438 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02770438 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0277043C */ cpu->ctr = cpu->r[0];
|
|
/* 02770440 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02770444 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02770448 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770448 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0277044C */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0277044C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02770450 */ cpu->ctr = cpu->r[0];
|
|
/* 02770454 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02770458 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0277045C */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277045C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02770460 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02770460 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02770464 */ cpu->lr = cpu->r[0];
|
|
/* 02770468 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02770468 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0277046C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02770470 */ return;
|
|
}
|
|
|
|
// fn_027703FC @ 0x27703fc
|
|
void Gambit_fn_027703FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_027703FC: ; // 0x27703fc
|
|
/* 027703FC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027703FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027703FC */ cpu->r[1] = _t0;
|
|
/* 02770400 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02770400 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02770404 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770404 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770408 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 02770408 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0277040C */ cpu->r[4] = 0x00000000u;
|
|
/* 02770410 */ cpu->r[3] = cpu->r[31];
|
|
/* 02770414 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02770418 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02770418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0277041C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770420 */ cpu->r[11] = 0x00000000u;
|
|
/* 02770424 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770424 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02770424 */ if (_t6) goto L_02770430; else goto L_02770428;
|
|
L_02770428: ; // 0x2770428
|
|
/* 02770428 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 02770428 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0277042C */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0277042C */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_02770430: ; // 0x2770430
|
|
/* 02770430 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 02770430 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02770434 */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 02770434 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02770438 */ _t11 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02770438 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0277043C */ cpu->ctr = cpu->r[0];
|
|
/* 02770440 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02770444 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02770448 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770448 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0277044C */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 0277044C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02770450 */ cpu->ctr = cpu->r[0];
|
|
/* 02770454 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02770458 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0277045C */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277045C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02770460 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02770460 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02770464 */ cpu->lr = cpu->r[0];
|
|
/* 02770468 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02770468 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0277046C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02770470 */ return;
|
|
}
|
|
|
|
// fn_02770474 @ 0x2770474
|
|
void Gambit_fn_02770474(CPUState* cpu) {
|
|
L_02770474: ; // 0x2770474
|
|
/* 02770474 */ return;
|
|
}
|
|
|
|
// fn_0277047C @ 0x277047c
|
|
void Gambit_fn_0277047C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0277047C: ; // 0x277047c
|
|
/* 0277047C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0277047C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0277047C */ cpu->r[1] = _t0;
|
|
/* 02770480 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770480 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02770484 */ cpu->r[31] = cpu->r[3];
|
|
/* 02770484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02770488 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02770488 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0277048C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277048C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0277048C */ if (_t4) goto L_02770490; else goto L_027704A0;
|
|
L_02770490: ; // 0x2770490
|
|
/* 02770490 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02770494 */ Gambit_fn_02801A78(cpu);
|
|
/* 02770498 */ cpu->r[31] = cpu->r[3];
|
|
/* 02770498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0277049C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277049C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0277049C */ if (_t6) goto L_027704D0; else goto L_027704A0;
|
|
L_027704A0: ; // 0x27704a0
|
|
/* 027704A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027704A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027704A4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027704A4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027704A4 */ if (_t8) goto L_027704A8; else goto L_027704B8;
|
|
L_027704A8: ; // 0x27704a8
|
|
/* 027704A8 */ cpu->r[3] = 0x00000008u;
|
|
/* 027704AC */ Gambit_fn_02801A78(cpu);
|
|
/* 027704B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027704B4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027704B4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027704B4 */ if (_t10) goto L_027704D0; else goto L_027704B8;
|
|
L_027704B8: ; // 0x27704b8
|
|
/* 027704B8 */ cpu->r[12] = 0x10100000u;
|
|
/* 027704BC */ cpu->r[0] = 0x10110000u;
|
|
/* 027704C0 */ cpu->r[12] = cpu->r[12] + 0x00001288u;
|
|
/* 027704C4 */ cpu->r[0] = cpu->r[0] + 0x00007399u;
|
|
/* 027704C8 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 027704C8 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 027704CC */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 027704CC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_027704D0: ; // 0x27704d0
|
|
/* 027704D0 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 027704D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027704D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 027704D8 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027704D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027704DC */ cpu->lr = cpu->r[0];
|
|
/* 027704E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027704E4 */ return;
|
|
}
|
|
|
|
// fn_027704E8 @ 0x27704e8
|
|
void Gambit_fn_027704E8(CPUState* cpu) {
|
|
L_027704E8: ; // 0x27704e8
|
|
/* 027704E8 */ cpu->r[3] = 0x10100000u;
|
|
/* 027704EC */ cpu->r[3] = cpu->r[3] + 0x00001260u;
|
|
/* 027704F0 */ return;
|
|
}
|
|
|
|
// fn_027704F4 @ 0x27704f4
|
|
void Gambit_fn_027704F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_027704F4: ; // 0x27704f4
|
|
/* 027704F4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 027704F8 */ _t0 = cpu->r[9] + 0x000012CCu;
|
|
/* 027704F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027704FC */ cpu->r[11] = 0x101D0000u;
|
|
/* 02770500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02770504 */ cpu->r[11] = cpu->r[11] + 0x000012D0u;
|
|
/* 02770508 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770508 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770508 */ if (_t2) goto L_0277050C; else goto L_02770524;
|
|
L_0277050C: ; // 0x277050c
|
|
/* 0277050C */ cpu->r[9] = 0x10100000u;
|
|
/* 02770510 */ cpu->r[0] = 0x00000001u;
|
|
/* 02770514 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02770518 */ cpu->r[9] = cpu->r[9] + 0x000013C8u;
|
|
/* 0277051C */ _t3 = cpu->r[12] + 0x000012CCu;
|
|
/* 0277051C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02770520 */ _t4 = cpu->r[11] + 0x00000000u;
|
|
/* 02770520 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_02770524: ; // 0x2770524
|
|
/* 02770524 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02770528 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770528 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02770528 */ if (_t6) goto L_0277052C; else goto L_02770534;
|
|
L_0277052C: ; // 0x277052c
|
|
/* 0277052C */ cpu->r[3] = 0x00000001u;
|
|
/* 02770530 */ return;
|
|
L_02770534: ; // 0x2770534
|
|
/* 02770534 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02770538 */ _t7 = cpu->r[12] + 0xFFFFDB24u;
|
|
/* 02770538 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0277053C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770540 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02770544 */ cpu->r[12] = cpu->r[12] + 0xFFFFDB28u;
|
|
/* 02770548 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770548 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02770548 */ if (_t9) goto L_0277054C; else goto L_02770564;
|
|
L_0277054C: ; // 0x277054c
|
|
/* 0277054C */ cpu->r[11] = 0x10100000u;
|
|
/* 02770550 */ cpu->r[10] = 0x00000001u;
|
|
/* 02770554 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02770558 */ cpu->r[11] = cpu->r[11] + 0x000013B8u;
|
|
/* 0277055C */ _t10 = cpu->r[9] + 0xFFFFDB24u;
|
|
/* 0277055C */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 02770560 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 02770560 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_02770564: ; // 0x2770564
|
|
/* 02770564 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02770568 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770568 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02770568 */ if (_t13) goto L_0277056C; else goto L_02770574;
|
|
L_0277056C: ; // 0x277056c
|
|
/* 0277056C */ cpu->r[0] = 0x00000001u;
|
|
/* 02770570 */ goto L_027705E8;
|
|
L_02770574: ; // 0x2770574
|
|
/* 02770574 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02770578 */ _t14 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 02770578 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02770578 */ cpu->r[10] = _t14;
|
|
/* 0277057C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02770580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770584 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4ECu;
|
|
/* 02770588 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770588 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02770588 */ if (_t16) goto L_0277058C; else goto L_027705A0;
|
|
L_0277058C: ; // 0x277058c
|
|
/* 0277058C */ cpu->r[9] = 0x10100000u;
|
|
/* 02770590 */ cpu->r[0] = 0x00000001u;
|
|
/* 02770594 */ cpu->r[9] = cpu->r[9] + 0x000013A8u;
|
|
/* 02770598 */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 02770598 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0277059C */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 0277059C */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_027705A0: ; // 0x27705a0
|
|
/* 027705A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 027705A4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027705A4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027705A4 */ if (_t20) goto L_027705A8; else goto L_027705B0;
|
|
L_027705A8: ; // 0x27705a8
|
|
/* 027705A8 */ cpu->r[0] = 0x00000001u;
|
|
/* 027705AC */ goto L_027705E8;
|
|
L_027705B0: ; // 0x27705b0
|
|
/* 027705B0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 027705B4 */ _t21 = cpu->r[9] + 0xFFFFD4E0u;
|
|
/* 027705B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027705B4 */ cpu->r[9] = _t21;
|
|
/* 027705B8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027705BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027705C0 */ cpu->r[12] = cpu->r[12] + 0xFFFFD4E4u;
|
|
/* 027705C4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027705C4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027705C4 */ if (_t23) goto L_027705C8; else goto L_027705DC;
|
|
L_027705C8: ; // 0x27705c8
|
|
/* 027705C8 */ cpu->r[0] = 0x10100000u;
|
|
/* 027705CC */ cpu->r[11] = 0x00000001u;
|
|
/* 027705D0 */ cpu->r[0] = cpu->r[0] + 0x00001278u;
|
|
/* 027705D4 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 027705D4 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 027705D8 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 027705D8 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_027705DC: ; // 0x27705dc
|
|
/* 027705DC */ cpu->r[9] = cpu->r[4] ^ cpu->r[12];
|
|
/* 027705E0 */ cpu->r[0] = rbrew_clz32(cpu->r[9]);
|
|
/* 027705E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_027705E8: ; // 0x27705e8
|
|
/* 027705E8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027705EC */ return;
|
|
}
|
|
|
|
// fn_027705F0 @ 0x27705f0
|
|
void Gambit_fn_027705F0(CPUState* cpu) {
|
|
L_027705F0: ; // 0x27705f0
|
|
/* 027705F0 */ return;
|
|
}
|
|
|
|
// fn_027705F4 @ 0x27705f4
|
|
void Gambit_fn_027705F4(CPUState* cpu) {
|
|
L_027705F4: ; // 0x27705f4
|
|
/* 027705F4 */ return;
|
|
}
|
|
|
|
// fn_027705F8 @ 0x27705f8
|
|
void Gambit_fn_027705F8(CPUState* cpu) {
|
|
L_027705F8: ; // 0x27705f8
|
|
/* 027705F8 */ return;
|
|
}
|
|
|
|
// fn_027705FC @ 0x27705fc
|
|
void Gambit_fn_027705FC(CPUState* cpu) {
|
|
L_027705FC: ; // 0x27705fc
|
|
/* 027705FC */ cpu->r[3] = 0x10100000u;
|
|
/* 02770600 */ cpu->r[3] = cpu->r[3] + 0x00001268u;
|
|
/* 02770604 */ return;
|
|
}
|
|
|
|
// fn_02770608 @ 0x2770608
|
|
void Gambit_fn_02770608(CPUState* cpu) {
|
|
L_02770608: ; // 0x2770608
|
|
/* 02770608 */ return;
|
|
}
|
|
|
|
// fn_0277060C @ 0x277060c
|
|
void Gambit_fn_0277060C(CPUState* cpu) {
|
|
L_0277060C: ; // 0x277060c
|
|
/* 0277060C */ return;
|
|
}
|
|
|
|
// fn_02770610 @ 0x2770610
|
|
void Gambit_fn_02770610(CPUState* cpu) {
|
|
L_02770610: ; // 0x2770610
|
|
/* 02770610 */ return;
|
|
}
|
|
|
|
// fn_02770614 @ 0x2770614
|
|
void Gambit_fn_02770614(CPUState* cpu) {
|
|
L_02770614: ; // 0x2770614
|
|
/* 02770614 */ return;
|
|
}
|
|
|
|
// fn_02770618 @ 0x2770618
|
|
void Gambit_fn_02770618(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0276C578: ; // 0x276c578
|
|
/* 0276C578 */ cpu->r[0] = cpu->lr;
|
|
/* 0276C57C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0276C57C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0276C57C */ cpu->r[1] = _t0;
|
|
/* 0276C580 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C580 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0276C584 */ cpu->r[31] = cpu->r[3];
|
|
/* 0276C588 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C588 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0276C58C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0276C58C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0276C590 */ cpu->r[12] = 0x00000000u;
|
|
/* 0276C594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0276C598 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0276C598 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0276C59C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C59C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0276C59C */ if (_t6) goto L_0276C5C4; else goto L_0276C5A0;
|
|
L_0276C5A0: ; // 0x276c5a0
|
|
/* 0276C5A0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0276C5A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0276C5A4 */ /* nop */
|
|
/* 0276C5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0276C5AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0276C5AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0276C5AC */ if (_t9) goto L_0276C5B0; else goto L_0276C5C4;
|
|
L_0276C5B0: ; // 0x276c5b0
|
|
/* 0276C5B0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0276C5B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0276C5B4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0276C5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0276C5B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0276C5BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0276C5C4: ; // 0x276c5c4
|
|
/* 0276C5C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5C8 */ Gambit_fn_0276C4F0(cpu);
|
|
/* 0276C5CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0276C5D0 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0276C5D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0276C5D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0276C5D8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0276C5D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0276C5DC */ cpu->lr = cpu->r[0];
|
|
/* 0276C5E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0276C5E4 */ return;
|
|
L_02770618: ; // 0x2770618
|
|
/* 02770618 */ cpu->r[3] = cpu->r[3] + 0x000001CCu;
|
|
/* 0277061C */ goto L_0276C578;
|
|
}
|
|
|
|
// fn_02770620 @ 0x2770620
|
|
void Gambit_fn_02770620(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02770620: ; // 0x2770620
|
|
/* 02770620 */ cpu->r[0] = cpu->lr;
|
|
/* 02770624 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02770624 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770624 */ cpu->r[1] = _t0;
|
|
/* 02770628 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770628 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0277062C */ cpu->r[31] = cpu->r[3];
|
|
/* 02770630 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02770630 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770634 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 02770634 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02770638 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0277063C */ /* nop */
|
|
/* 02770640 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02770644 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 02770648 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0277064C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0277064C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770650 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770650 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02770654 */ cpu->lr = cpu->r[0];
|
|
/* 02770658 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0277065C */ return;
|
|
}
|
|
|
|
// fn_02770624 @ 0x2770624
|
|
void Gambit_fn_02770624(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02770624: ; // 0x2770624
|
|
/* 02770624 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02770624 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770624 */ cpu->r[1] = _t0;
|
|
/* 02770628 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770628 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0277062C */ cpu->r[31] = cpu->r[3];
|
|
/* 02770630 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02770630 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770634 */ _t3 = cpu->r[31] + 0x000001DAu;
|
|
/* 02770634 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02770638 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 0277063C */ /* nop */
|
|
/* 02770640 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02770644 */ cpu->r[3] = cpu->r[31] + 0x000001CCu;
|
|
/* 02770648 */ Gambit_fn_0276C5E8(cpu);
|
|
/* 0277064C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0277064C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770650 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770650 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02770654 */ cpu->lr = cpu->r[0];
|
|
/* 02770658 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0277065C */ return;
|
|
}
|
|
|
|
// fn_02770660 @ 0x2770660
|
|
void Gambit_fn_02770660(CPUState* cpu) {
|
|
L_02770660: ; // 0x2770660
|
|
/* 02770660 */ cpu->r[3] = 0x00000001u;
|
|
/* 02770664 */ return;
|
|
}
|
|
|
|
// fn_02770668 @ 0x2770668
|
|
void Gambit_fn_02770668(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104;
|
|
|
|
L_02770668: ; // 0x2770668
|
|
/* 02770668 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02770668 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770668 */ cpu->r[1] = _t0;
|
|
/* 0277066C */ /* nop */
|
|
/* 02770670 */ cpu->r[0] = cpu->lr;
|
|
/* 02770674 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02770674 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02770678 */ cpu->r[29] = cpu->r[6];
|
|
/* 0277067C */ cpu->r[28] = cpu->r[3];
|
|
/* 02770680 */ cpu->r[30] = cpu->r[5];
|
|
/* 02770684 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 02770684 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02770688 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0277068C */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0277068C */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02770690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02770694 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02770694 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 02770698 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770698 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02770698 */ if (_t6) goto L_027706DC; else goto L_0277069C;
|
|
L_0277069C: ; // 0x277069c
|
|
/* 0277069C */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0277069C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027706A0 */ Gambit_fn_02826F20(cpu);
|
|
/* 027706A4 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027706A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027706A8 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 027706A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027706AC */ cpu->ctr = cpu->r[0];
|
|
/* 027706B0 */ cpu->r[5] = 0x00000004u;
|
|
/* 027706B4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027706B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027706BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 027706C0 */ cpu->r[0] = cpu->r[27];
|
|
/* 027706C4 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027706C4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027706C4 */ if (_t11) goto L_027706CC; else goto L_027706C8;
|
|
L_027706C8: ; // 0x27706c8
|
|
/* 027706C8 */ cpu->r[0] = 0x00000001u;
|
|
L_027706CC: ; // 0x27706cc
|
|
/* 027706CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027706D0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027706D0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027706D0 */ if (_t13) goto L_027706DC; else goto L_027706D4;
|
|
L_027706D4: ; // 0x27706d4
|
|
/* 027706D4 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 027706D4 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 027706D8 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 027706D8 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_027706DC: ; // 0x27706dc
|
|
/* 027706DC */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 027706DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027706E0 */ cpu->r[0] = 0x00000000u;
|
|
/* 027706E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027706E8 */ cpu->r[12] = cpu->r[0];
|
|
/* 027706EC */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027706EC */ _t18 = _t17 & 0x00000001u;
|
|
/* 027706EC */ if (_t18) goto L_027706F0; else goto L_02770714;
|
|
L_027706F0: ; // 0x27706f0
|
|
/* 027706F0 */ cpu->ctr = cpu->r[7];
|
|
/* 027706F4 */ cpu->r[10] = 0x00000000u;
|
|
L_027706F8: ; // 0x27706f8
|
|
/* 027706F8 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 027706F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027706FC */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 027706FC */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 02770700 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02770704 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 02770704 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02770708 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 0277070C */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 0277070C */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 02770710 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02770710 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02770710 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02770710 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02770710 */ if (_t25) goto L_027706F8; else goto L_02770714;
|
|
L_02770714: ; // 0x2770714
|
|
/* 02770714 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02770714 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02770718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0277071C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277071C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0277071C */ if (_t28) goto L_02770760; else goto L_02770720;
|
|
L_02770720: ; // 0x2770720
|
|
/* 02770720 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02770720 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02770724 */ Gambit_fn_02826F20(cpu);
|
|
/* 02770728 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02770728 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0277072C */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 0277072C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02770730 */ cpu->ctr = cpu->r[0];
|
|
/* 02770734 */ cpu->r[5] = 0x00000004u;
|
|
/* 02770738 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0277073C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02770740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02770744 */ cpu->r[11] = cpu->r[27];
|
|
/* 02770748 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02770748 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02770748 */ if (_t33) goto L_02770750; else goto L_0277074C;
|
|
L_0277074C: ; // 0x277074c
|
|
/* 0277074C */ cpu->r[11] = 0x00000001u;
|
|
L_02770750: ; // 0x2770750
|
|
/* 02770750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02770754 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770754 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02770754 */ if (_t35) goto L_02770760; else goto L_02770758;
|
|
L_02770758: ; // 0x2770758
|
|
/* 02770758 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02770758 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 0277075C */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 0277075C */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_02770760: ; // 0x2770760
|
|
/* 02770760 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 02770760 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02770764 */ cpu->r[0] = 0x00000000u;
|
|
/* 02770768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0277076C */ cpu->r[12] = cpu->r[0];
|
|
/* 02770770 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02770770 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02770770 */ if (_t40) goto L_02770774; else goto L_02770798;
|
|
L_02770774: ; // 0x2770774
|
|
/* 02770774 */ cpu->ctr = cpu->r[6];
|
|
/* 02770778 */ cpu->r[9] = 0x00000000u;
|
|
L_0277077C: ; // 0x277077c
|
|
/* 0277077C */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0277077C */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02770780 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 02770780 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 02770784 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 02770788 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 02770788 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 0277078C */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 02770790 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 02770790 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 02770794 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02770794 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02770794 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02770794 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02770794 */ if (_t47) goto L_0277077C; else goto L_02770798;
|
|
L_02770798: ; // 0x2770798
|
|
/* 02770798 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02770798 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0277079C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 027707A0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027707A0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 027707A0 */ if (_t50) goto L_027707E4; else goto L_027707A4;
|
|
L_027707A4: ; // 0x27707a4
|
|
/* 027707A4 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 027707A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027707A8 */ Gambit_fn_02826F20(cpu);
|
|
/* 027707AC */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027707AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027707B0 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 027707B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027707B4 */ cpu->ctr = cpu->r[0];
|
|
/* 027707B8 */ cpu->r[5] = 0x00000004u;
|
|
/* 027707BC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027707C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027707C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 027707C8 */ cpu->r[10] = cpu->r[27];
|
|
/* 027707CC */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027707CC */ _t55 = _t54 & 0x00000001u;
|
|
/* 027707CC */ if (_t55) goto L_027707D4; else goto L_027707D0;
|
|
L_027707D0: ; // 0x27707d0
|
|
/* 027707D0 */ cpu->r[10] = 0x00000001u;
|
|
L_027707D4: ; // 0x27707d4
|
|
/* 027707D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027707D8 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027707D8 */ _t57 = _t56 & 0x00000001u;
|
|
/* 027707D8 */ if (_t57) goto L_027707E4; else goto L_027707DC;
|
|
L_027707DC: ; // 0x27707dc
|
|
/* 027707DC */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 027707DC */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 027707E0 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 027707E0 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_027707E4: ; // 0x27707e4
|
|
/* 027707E4 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 027707E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027707E8 */ cpu->r[0] = 0x00000000u;
|
|
/* 027707EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027707F0 */ cpu->r[5] = cpu->r[0];
|
|
/* 027707F4 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027707F4 */ _t62 = _t61 & 0x00000001u;
|
|
/* 027707F4 */ if (_t62) goto L_027707F8; else goto L_0277081C;
|
|
L_027707F8: ; // 0x27707f8
|
|
/* 027707F8 */ cpu->ctr = cpu->r[12];
|
|
/* 027707FC */ cpu->r[8] = 0x00000000u;
|
|
L_02770800: ; // 0x2770800
|
|
/* 02770800 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 02770800 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02770804 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 02770804 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 02770808 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 0277080C */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 0277080C */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 02770810 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 02770814 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 02770814 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 02770818 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02770818 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02770818 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02770818 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02770818 */ if (_t69) goto L_02770800; else goto L_0277081C;
|
|
L_0277081C: ; // 0x277081c
|
|
/* 0277081C */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 0277081C */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02770820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02770824 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770824 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02770824 */ if (_t72) goto L_02770900; else goto L_02770828;
|
|
L_02770828: ; // 0x2770828
|
|
/* 02770828 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02770828 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0277082C */ Gambit_fn_02826F20(cpu);
|
|
/* 02770830 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02770830 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02770834 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 02770834 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02770838 */ cpu->ctr = cpu->r[12];
|
|
/* 0277083C */ cpu->r[5] = 0x00000004u;
|
|
/* 02770840 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 02770844 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02770848 */ cpu->r[24] = cpu->r[3];
|
|
/* 0277084C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02770850 */ cpu->r[30] = cpu->r[25];
|
|
/* 02770854 */ cpu->r[7] = 0x00000000u;
|
|
/* 02770858 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02770858 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02770858 */ if (_t77) goto L_02770860; else goto L_0277085C;
|
|
L_0277085C: ; // 0x277085c
|
|
/* 0277085C */ cpu->r[30] = 0x00000001u;
|
|
L_02770860: ; // 0x2770860
|
|
/* 02770860 */ cpu->r[31] = 0x10110000u;
|
|
/* 02770864 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 02770868 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 02770868 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0277086C */ cpu->r[23] = 0x00000018u;
|
|
L_02770870: ; // 0x2770870
|
|
/* 02770870 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 02770870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02770874 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770874 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02770874 */ if (_t80) goto L_027708E4; else goto L_02770878;
|
|
L_02770878: ; // 0x2770878
|
|
/* 02770878 */ cpu->r[26] = cpu->r[27];
|
|
/* 02770878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0277087C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277087C */ _t82 = _t81 & 0x00000001u;
|
|
/* 0277087C */ if (_t82) goto L_02770880; else goto L_02770890;
|
|
L_02770880: ; // 0x2770880
|
|
/* 02770880 */ cpu->r[3] = 0x00000024u;
|
|
/* 02770884 */ Gambit_fn_02801A78(cpu);
|
|
/* 02770888 */ cpu->r[26] = cpu->r[3];
|
|
/* 02770888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0277088C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277088C */ _t84 = _t83 & 0x00000001u;
|
|
/* 0277088C */ if (_t84) goto L_027708D8; else goto L_02770890;
|
|
L_02770890: ; // 0x2770890
|
|
/* 02770890 */ cpu->r[11] = cpu->r[26];
|
|
/* 02770890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02770894 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770894 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02770894 */ if (_t86) goto L_02770898; else goto L_027708A8;
|
|
L_02770898: ; // 0x2770898
|
|
/* 02770898 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0277089C */ Gambit_fn_02801A78(cpu);
|
|
/* 027708A0 */ cpu->r[11] = cpu->r[3];
|
|
/* 027708A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027708A4 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027708A4 */ _t88 = _t87 & 0x00000001u;
|
|
/* 027708A4 */ if (_t88) goto L_027708C4; else goto L_027708A8;
|
|
L_027708A8: ; // 0x27708a8
|
|
/* 027708A8 */ cpu->r[5] = 0x10100000u;
|
|
/* 027708AC */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 027708AC */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 027708B0 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 027708B4 */ cpu->r[5] = cpu->r[5] + 0x000012A0u;
|
|
/* 027708B8 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 027708B8 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 027708BC */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 027708BC */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 027708C0 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 027708C0 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_027708C4: ; // 0x27708c4
|
|
/* 027708C4 */ cpu->r[6] = 0x10100000u;
|
|
/* 027708C8 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 027708C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 027708CC */ cpu->r[6] = cpu->r[6] + 0x00001378u;
|
|
/* 027708D0 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 027708D0 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 027708D4 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 027708D4 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_027708D8: ; // 0x27708d8
|
|
/* 027708D8 */ cpu->r[0] = 0x10100000u;
|
|
/* 027708DC */ cpu->r[0] = cpu->r[0] + 0x00001390u;
|
|
/* 027708E0 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 027708E0 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_027708E4: ; // 0x27708e4
|
|
/* 027708E4 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 027708E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027708E8 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 027708EC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027708EC */ _t98 = _t97 & 0x00000001u;
|
|
/* 027708EC */ if (_t98) goto L_027708F0; else goto L_02770870;
|
|
L_027708F0: ; // 0x27708f0
|
|
/* 027708F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 027708F4 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027708F4 */ _t100 = _t99 & 0x00000001u;
|
|
/* 027708F4 */ if (_t100) goto L_02770900; else goto L_027708F8;
|
|
L_027708F8: ; // 0x27708f8
|
|
/* 027708F8 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 027708F8 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 027708FC */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 027708FC */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_02770900: ; // 0x2770900
|
|
/* 02770900 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 02770900 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 02770904 */ /* nop */
|
|
/* 02770908 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 02770908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0277090C */ cpu->lr = cpu->r[0];
|
|
/* 02770910 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02770914 */ return;
|
|
}
|
|
|
|
// fn_02770918 @ 0x2770918
|
|
void Gambit_fn_02770918(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _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_02770918: ; // 0x2770918
|
|
/* 02770918 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 02770918 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0277091C */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0277091C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02770920 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02770920 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02770924 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02770928 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 02770928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0277092C */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277092C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0277092C */ if (_t5) goto L_02770930; else goto L_02770938;
|
|
L_02770930: ; // 0x2770930
|
|
/* 02770930 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02770934 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_02770938: ; // 0x2770938
|
|
/* 02770938 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 02770938 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0277093C */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 0277093C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02770940 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 02770940 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02770944 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 02770944 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02770948 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 02770948 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0277094C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02770950 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02770950 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02770954 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02770954 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02770954 */ if (_t13) goto L_02770958; else goto L_02770960;
|
|
L_02770958: ; // 0x2770958
|
|
/* 02770958 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0277095C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02770960: ; // 0x2770960
|
|
/* 02770960 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 02770960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02770964 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 02770964 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02770968 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 02770968 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0277096C */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 0277096C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 02770970 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 02770970 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02770974 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 02770974 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02770978 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 02770978 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0277097C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 02770980 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 02770980 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02770984 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02770984 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02770984 */ if (_t23) goto L_02770988; else goto L_02770990;
|
|
L_02770988: ; // 0x2770988
|
|
/* 02770988 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0277098C */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02770990: ; // 0x2770990
|
|
/* 02770990 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 02770990 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02770994 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 02770994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02770998 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 02770998 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0277099C */ return;
|
|
}
|
|
|
|
// fn_027709A4 @ 0x27709a4
|
|
void Gambit_fn_027709A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027709A4: ; // 0x27709a4
|
|
/* 027709A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027709A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027709A4 */ cpu->r[1] = _t0;
|
|
/* 027709A8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027709A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027709AC */ cpu->r[31] = cpu->r[3];
|
|
/* 027709AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027709B0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027709B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027709B4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027709B4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027709B4 */ if (_t4) goto L_027709B8; else goto L_027709C8;
|
|
L_027709B8: ; // 0x27709b8
|
|
/* 027709B8 */ cpu->r[3] = 0x00000238u;
|
|
/* 027709BC */ Gambit_fn_02801A78(cpu);
|
|
/* 027709C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027709C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027709C4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027709C4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027709C4 */ if (_t6) goto L_027709E4; else goto L_027709C8;
|
|
L_027709C8: ; // 0x27709c8
|
|
/* 027709C8 */ cpu->r[5] = 0x00000000u;
|
|
/* 027709CC */ cpu->r[4] = 0x00000004u;
|
|
/* 027709D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027709D4 */ Gambit_fn_02790BA4(cpu);
|
|
/* 027709D8 */ cpu->r[0] = 0x10100000u;
|
|
/* 027709DC */ cpu->r[0] = cpu->r[0] + 0x00001AECu;
|
|
/* 027709E0 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 027709E0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_027709E4: ; // 0x27709e4
|
|
/* 027709E4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027709E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027709E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027709EC */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027709EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027709F0 */ cpu->lr = cpu->r[0];
|
|
/* 027709F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027709F8 */ return;
|
|
}
|
|
|
|
// fn_027709FC @ 0x27709fc
|
|
void Gambit_fn_027709FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027709FC: ; // 0x27709fc
|
|
/* 027709FC */ cpu->r[0] = cpu->lr;
|
|
/* 02770A00 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02770A00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770A00 */ cpu->r[1] = _t0;
|
|
/* 02770A04 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02770A04 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02770A08 */ cpu->r[5] = 0x00000001u;
|
|
/* 02770A0C */ cpu->r[31] = cpu->r[3];
|
|
/* 02770A10 */ cpu->r[4] = 0x00000000u;
|
|
/* 02770A14 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770A14 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770A18 */ Gambit_fn_02771378(cpu);
|
|
/* 02770A1C */ cpu->r[4] = 0x00000001u;
|
|
/* 02770A20 */ cpu->r[3] = cpu->r[31];
|
|
/* 02770A24 */ cpu->r[5] = cpu->r[4];
|
|
/* 02770A28 */ Gambit_fn_027713D0(cpu);
|
|
/* 02770A2C */ cpu->r[3] = cpu->r[31];
|
|
/* 02770A30 */ cpu->r[4] = 0x00000002u;
|
|
/* 02770A34 */ cpu->r[5] = 0x00000001u;
|
|
/* 02770A38 */ Gambit_fn_02771428(cpu);
|
|
/* 02770A3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02770A40 */ cpu->r[4] = 0x00000003u;
|
|
/* 02770A44 */ cpu->r[5] = 0x00000001u;
|
|
/* 02770A48 */ Gambit_fn_02771480(cpu);
|
|
/* 02770A4C */ cpu->r[9] = 0x00000000u;
|
|
/* 02770A50 */ cpu->r[10] = 0x10100000u;
|
|
/* 02770A54 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02770A54 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02770A58 */ cpu->r[11] = 0x00000004u;
|
|
/* 02770A5C */ _t4 = cpu->r[10] + 0x00001A60u;
|
|
/* 02770A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770A60 */ cpu->r[3] = cpu->r[31];
|
|
/* 02770A64 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02770A64 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02770A68 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770A6C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02770A70 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770A70 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02770A74 */ Gambit_fn_02791774(cpu);
|
|
/* 02770A78 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02770A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02770A7C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02770A80 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02770A80 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02770A84 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770A84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02770A88 */ cpu->lr = cpu->r[0];
|
|
/* 02770A8C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02770A8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02770A90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02770A94 */ return;
|
|
}
|
|
|
|
// fn_02770A00 @ 0x2770a00
|
|
void Gambit_fn_02770A00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02770A00: ; // 0x2770a00
|
|
/* 02770A00 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02770A00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770A00 */ cpu->r[1] = _t0;
|
|
/* 02770A04 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02770A04 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02770A08 */ cpu->r[5] = 0x00000001u;
|
|
/* 02770A0C */ cpu->r[31] = cpu->r[3];
|
|
/* 02770A10 */ cpu->r[4] = 0x00000000u;
|
|
/* 02770A14 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770A14 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02770A18 */ Gambit_fn_02771378(cpu);
|
|
/* 02770A1C */ cpu->r[4] = 0x00000001u;
|
|
/* 02770A20 */ cpu->r[3] = cpu->r[31];
|
|
/* 02770A24 */ cpu->r[5] = cpu->r[4];
|
|
/* 02770A28 */ Gambit_fn_027713D0(cpu);
|
|
/* 02770A2C */ cpu->r[3] = cpu->r[31];
|
|
/* 02770A30 */ cpu->r[4] = 0x00000002u;
|
|
/* 02770A34 */ cpu->r[5] = 0x00000001u;
|
|
/* 02770A38 */ Gambit_fn_02771428(cpu);
|
|
/* 02770A3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02770A40 */ cpu->r[4] = 0x00000003u;
|
|
/* 02770A44 */ cpu->r[5] = 0x00000001u;
|
|
/* 02770A48 */ Gambit_fn_02771480(cpu);
|
|
/* 02770A4C */ cpu->r[9] = 0x00000000u;
|
|
/* 02770A50 */ cpu->r[10] = 0x10100000u;
|
|
/* 02770A54 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02770A54 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02770A58 */ cpu->r[11] = 0x00000004u;
|
|
/* 02770A5C */ _t4 = cpu->r[10] + 0x00001A60u;
|
|
/* 02770A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770A60 */ cpu->r[3] = cpu->r[31];
|
|
/* 02770A64 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02770A64 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02770A68 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770A6C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02770A70 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770A70 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02770A74 */ Gambit_fn_02791774(cpu);
|
|
/* 02770A78 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02770A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02770A7C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02770A80 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02770A80 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02770A84 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770A84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02770A88 */ cpu->lr = cpu->r[0];
|
|
/* 02770A8C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02770A8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02770A90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02770A94 */ return;
|
|
}
|
|
|
|
// fn_02770A98 @ 0x2770a98
|
|
void Gambit_fn_02770A98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_02770A98: ; // 0x2770a98
|
|
/* 02770A98 */ _t0 = cpu->r[1] + 0xFFFFFF20u;
|
|
/* 02770A98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770A98 */ cpu->r[1] = _t0;
|
|
/* 02770A9C */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 02770A9C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[26]);
|
|
/* 02770AA0 */ /* nop */
|
|
/* 02770AA4 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 02770AA4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[21]);
|
|
/* 02770AA8 */ _t3 = cpu->r[1] + 0x000000B0u;
|
|
/* 02770AA8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 02770AAC */ /* nop */
|
|
/* 02770AB0 */ _t4 = cpu->r[1] + 0x000000A0u;
|
|
/* 02770AB0 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[28]);
|
|
/* 02770AB4 */ /* nop */
|
|
/* 02770AB8 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 02770AB8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[21]);
|
|
/* 02770ABC */ /* nop */
|
|
/* 02770AC0 */ _t6 = cpu->r[1] + 0x00000040u;
|
|
/* 02770AC0 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[22]);
|
|
/* 02770AC4 */ _t7 = cpu->r[1] + 0x00000090u;
|
|
/* 02770AC4 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[27]);
|
|
/* 02770AC8 */ /* nop */
|
|
/* 02770ACC */ _t8 = cpu->r[1] + 0x00000088u;
|
|
/* 02770ACC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[26]);
|
|
/* 02770AD0 */ /* nop */
|
|
/* 02770AD4 */ _t9 = cpu->r[1] + 0x000000B8u;
|
|
/* 02770AD4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 02770AD8 */ _t10 = cpu->r[1] + 0x00000048u;
|
|
/* 02770AD8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[22]);
|
|
/* 02770ADC */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 02770ADC */ rbrew_write_f64(cpu->mem, _t11, cpu->f[23]);
|
|
/* 02770AE0 */ _t12 = cpu->r[1] + 0x00000070u;
|
|
/* 02770AE0 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[25]);
|
|
/* 02770AE4 */ /* nop */
|
|
/* 02770AE8 */ _t13 = cpu->r[1] + 0x00000098u;
|
|
/* 02770AE8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[27]);
|
|
/* 02770AEC */ /* nop */
|
|
/* 02770AF0 */ _t14 = cpu->r[1] + 0x00000058u;
|
|
/* 02770AF0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[23]);
|
|
/* 02770AF4 */ _t15 = cpu->r[1] + 0x00000078u;
|
|
/* 02770AF4 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[25]);
|
|
/* 02770AF8 */ _t16 = cpu->r[1] + 0x00000060u;
|
|
/* 02770AF8 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[24]);
|
|
/* 02770AFC */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 02770AFC */ rbrew_write_f64(cpu->mem, _t17, cpu->f[20]);
|
|
/* 02770B00 */ /* nop */
|
|
/* 02770B04 */ _t18 = cpu->r[1] + 0x000000A8u;
|
|
/* 02770B04 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[28]);
|
|
/* 02770B08 */ /* nop */
|
|
/* 02770B0C */ _t19 = cpu->r[1] + 0x00000068u;
|
|
/* 02770B0C */ rbrew_write_f32(cpu->mem, _t19, cpu->f[24]);
|
|
/* 02770B10 */ cpu->r[0] = cpu->lr;
|
|
/* 02770B14 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 02770B14 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[20]);
|
|
/* 02770B18 */ _t21 = cpu->r[1] + 0x000000C0u;
|
|
/* 02770B18 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[30]);
|
|
/* 02770B1C */ /* nop */
|
|
/* 02770B20 */ _t22 = cpu->r[1] + 0x000000C8u;
|
|
/* 02770B20 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[30]);
|
|
/* 02770B24 */ _t23 = cpu->r[1] + 0x000000D0u;
|
|
/* 02770B24 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[31]);
|
|
/* 02770B28 */ /* nop */
|
|
/* 02770B2C */ _t24 = cpu->r[1] + 0x000000D8u;
|
|
/* 02770B2C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[31]);
|
|
/* 02770B30 */ _t25 = cpu->r[1] + 0x000000E4u;
|
|
/* 02770B30 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02770B34 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 02770B34 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02770B38 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 02770B38 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02770B3C */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770B3C */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 02770B40 */ cpu->r[30] = cpu->r[3];
|
|
/* 02770B44 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02770B48 */ _t29 = cpu->r[9] + 0xFFFF8C6Cu;
|
|
/* 02770B48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02770B4C */ cpu->r[29] = cpu->r[30] + 0x00000104u;
|
|
/* 02770B50 */ _t30 = cpu->r[29] + cpu->r[9];
|
|
/* 02770B50 */ cpu->r[8] = rbrew_read8(cpu->mem, _t30);
|
|
/* 02770B54 */ _t31 = cpu->r[30] + 0x00000030u;
|
|
/* 02770B54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02770B58 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02770B5C */ _t32 = cpu->r[9] + cpu->r[0];
|
|
/* 02770B5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02770B60 */ _t33 = cpu->r[12] + 0x00000004u;
|
|
/* 02770B60 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02770B64 */ _t34 = cpu->r[8] + 0x00000000u;
|
|
/* 02770B64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02770B68 */ cpu->r[3] = cpu->r[31];
|
|
/* 02770B6C */ Gambit_fn_02790458(cpu);
|
|
/* 02770B70 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02770B74 */ cpu->r[10] = cpu->r[10] + 0x00005DDCu;
|
|
/* 02770B78 */ _t35 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02770B78 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02770B7C */ _t36 = cpu->r[10] + 0x00000000u;
|
|
/* 02770B7C */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02770B80 */ _t37 = cpu->r[10] + 0x00000018u;
|
|
/* 02770B80 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02770B84 */ _t38 = cpu->r[31] + 0x00000050u;
|
|
/* 02770B84 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[21]);
|
|
/* 02770B88 */ _t39 = cpu->r[31] + 0x00000054u;
|
|
/* 02770B88 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[31]);
|
|
/* 02770B8C */ _t40 = cpu->r[31] + 0x00000058u;
|
|
/* 02770B8C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[30]);
|
|
/* 02770B90 */ _t41 = cpu->r[10] + 0x00000010u;
|
|
/* 02770B90 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02770B94 */ _t42 = cpu->r[10] + 0x00000004u;
|
|
/* 02770B94 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02770B98 */ _t43 = cpu->r[10] + 0x0000001Cu;
|
|
/* 02770B98 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02770B9C */ _t44 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02770B9C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[29]);
|
|
/* 02770BA0 */ _t45 = cpu->r[31] + 0x00000060u;
|
|
/* 02770BA0 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[28]);
|
|
/* 02770BA4 */ _t46 = cpu->r[31] + 0x00000064u;
|
|
/* 02770BA4 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[27]);
|
|
/* 02770BA8 */ _t47 = cpu->r[10] + 0x00000014u;
|
|
/* 02770BA8 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02770BAC */ _t48 = cpu->r[10] + 0x00000020u;
|
|
/* 02770BAC */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02770BB0 */ _t49 = cpu->r[10] + 0x00000008u;
|
|
/* 02770BB0 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02770BB4 */ _t50 = cpu->r[31] + 0x00000070u;
|
|
/* 02770BB4 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[24]);
|
|
/* 02770BB8 */ _t51 = cpu->r[31] + 0x0000006Cu;
|
|
/* 02770BB8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[25]);
|
|
/* 02770BBC */ cpu->r[12] = 0x101F0000u;
|
|
/* 02770BC0 */ _t52 = cpu->r[31] + 0x00000068u;
|
|
/* 02770BC0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[26]);
|
|
/* 02770BC4 */ _t53 = cpu->r[12] + 0x00006338u;
|
|
/* 02770BC4 */ cpu->f[20] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02770BC4 */ cpu->r[12] = _t53;
|
|
/* 02770BC8 */ _t54 = cpu->r[31] + 0x00000074u;
|
|
/* 02770BC8 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[20]);
|
|
/* 02770BCC */ _t55 = cpu->r[12] + 0x00000004u;
|
|
/* 02770BCC */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02770BD0 */ _t56 = cpu->r[31] + 0x00000078u;
|
|
/* 02770BD0 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[23]);
|
|
/* 02770BD4 */ _t57 = cpu->r[12] + 0x00000008u;
|
|
/* 02770BD4 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02770BD8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02770BDC */ _t58 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02770BDC */ rbrew_write_f32(cpu->mem, _t58, cpu->f[22]);
|
|
/* 02770BE0 */ _t59 = cpu->r[10] + 0xFFFF8C58u;
|
|
/* 02770BE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02770BE4 */ _t60 = cpu->r[29] + cpu->r[10];
|
|
/* 02770BE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t60);
|
|
/* 02770BE8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02770BEC */ _t61 = cpu->r[30] + 0x00000030u;
|
|
/* 02770BEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02770BF0 */ _t62 = cpu->r[9] + cpu->r[0];
|
|
/* 02770BF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02770BF4 */ _t63 = cpu->r[11] + 0x00000004u;
|
|
/* 02770BF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02770BF8 */ _t64 = cpu->r[12] + 0x00000000u;
|
|
/* 02770BF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02770BFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02770C00 */ Gambit_fn_02790458(cpu);
|
|
/* 02770C04 */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 02770C04 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[27]);
|
|
/* 02770C08 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02770C0C */ _t66 = cpu->r[31] + 0x00000068u;
|
|
/* 02770C0C */ rbrew_write_f32(cpu->mem, _t66, cpu->f[26]);
|
|
/* 02770C10 */ _t67 = cpu->r[31] + 0x00000058u;
|
|
/* 02770C10 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[30]);
|
|
/* 02770C14 */ _t68 = cpu->r[31] + 0x00000078u;
|
|
/* 02770C14 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[23]);
|
|
/* 02770C18 */ _t69 = cpu->r[31] + 0x00000054u;
|
|
/* 02770C18 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[31]);
|
|
/* 02770C1C */ _t70 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02770C1C */ rbrew_write_f32(cpu->mem, _t70, cpu->f[22]);
|
|
/* 02770C20 */ _t71 = cpu->r[31] + 0x00000074u;
|
|
/* 02770C20 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[20]);
|
|
/* 02770C24 */ _t72 = cpu->r[31] + 0x00000060u;
|
|
/* 02770C24 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[28]);
|
|
/* 02770C28 */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02770C28 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[29]);
|
|
/* 02770C2C */ _t74 = cpu->r[31] + 0x00000070u;
|
|
/* 02770C2C */ rbrew_write_f32(cpu->mem, _t74, cpu->f[24]);
|
|
/* 02770C30 */ _t75 = cpu->r[31] + 0x00000050u;
|
|
/* 02770C30 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[21]);
|
|
/* 02770C34 */ _t76 = cpu->r[31] + 0x0000006Cu;
|
|
/* 02770C34 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[25]);
|
|
/* 02770C38 */ _t77 = cpu->r[12] + 0xFFFF8C74u;
|
|
/* 02770C38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02770C3C */ _t78 = cpu->r[29] + cpu->r[12];
|
|
/* 02770C3C */ cpu->r[0] = rbrew_read8(cpu->mem, _t78);
|
|
/* 02770C40 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02770C44 */ _t79 = cpu->r[30] + 0x00000030u;
|
|
/* 02770C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02770C48 */ _t80 = cpu->r[12] + cpu->r[0];
|
|
/* 02770C48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02770C4C */ _t81 = cpu->r[9] + 0x00000004u;
|
|
/* 02770C4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02770C50 */ _t82 = cpu->r[11] + 0x00000000u;
|
|
/* 02770C50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02770C54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02770C58 */ Gambit_fn_02790458(cpu);
|
|
/* 02770C5C */ _t83 = cpu->r[31] + 0x0000006Cu;
|
|
/* 02770C5C */ rbrew_write_f32(cpu->mem, _t83, cpu->f[25]);
|
|
/* 02770C60 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02770C64 */ _t84 = cpu->r[31] + 0x00000064u;
|
|
/* 02770C64 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[27]);
|
|
/* 02770C68 */ _t85 = cpu->r[31] + 0x00000054u;
|
|
/* 02770C68 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[31]);
|
|
/* 02770C6C */ _t86 = cpu->r[31] + 0x00000060u;
|
|
/* 02770C6C */ rbrew_write_f32(cpu->mem, _t86, cpu->f[28]);
|
|
/* 02770C70 */ _t87 = cpu->r[31] + 0x00000050u;
|
|
/* 02770C70 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[21]);
|
|
/* 02770C74 */ _t88 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02770C74 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[29]);
|
|
/* 02770C78 */ _t89 = cpu->r[31] + 0x00000070u;
|
|
/* 02770C78 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[24]);
|
|
/* 02770C7C */ _t90 = cpu->r[31] + 0x00000078u;
|
|
/* 02770C7C */ rbrew_write_f32(cpu->mem, _t90, cpu->f[23]);
|
|
/* 02770C80 */ _t91 = cpu->r[31] + 0x00000074u;
|
|
/* 02770C80 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[20]);
|
|
/* 02770C84 */ _t92 = cpu->r[31] + 0x00000068u;
|
|
/* 02770C84 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[26]);
|
|
/* 02770C88 */ _t93 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02770C88 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[22]);
|
|
/* 02770C8C */ _t94 = cpu->r[31] + 0x00000058u;
|
|
/* 02770C8C */ rbrew_write_f32(cpu->mem, _t94, cpu->f[30]);
|
|
/* 02770C90 */ _t95 = cpu->r[11] + 0xFFFF8C64u;
|
|
/* 02770C90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02770C94 */ _t96 = cpu->r[29] + cpu->r[11];
|
|
/* 02770C94 */ cpu->r[10] = rbrew_read8(cpu->mem, _t96);
|
|
/* 02770C98 */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02770C9C */ _t97 = cpu->r[30] + 0x00000030u;
|
|
/* 02770C9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02770CA0 */ _t98 = cpu->r[9] + cpu->r[0];
|
|
/* 02770CA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02770CA4 */ _t99 = cpu->r[11] + 0x00000004u;
|
|
/* 02770CA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02770CA8 */ _t100 = cpu->r[12] + 0x00000000u;
|
|
/* 02770CA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02770CAC */ cpu->r[3] = cpu->r[31];
|
|
/* 02770CB0 */ Gambit_fn_02790458(cpu);
|
|
/* 02770CB4 */ _t101 = cpu->r[31] + 0x00000054u;
|
|
/* 02770CB4 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[31]);
|
|
/* 02770CB8 */ cpu->r[9] = 0x10100000u;
|
|
/* 02770CBC */ _t102 = cpu->r[31] + 0x00000068u;
|
|
/* 02770CBC */ rbrew_write_f32(cpu->mem, _t102, cpu->f[26]);
|
|
/* 02770CC0 */ _t103 = cpu->r[31] + 0x0000006Cu;
|
|
/* 02770CC0 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[25]);
|
|
/* 02770CC4 */ _t104 = cpu->r[31] + 0x00000058u;
|
|
/* 02770CC4 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[30]);
|
|
/* 02770CC8 */ _t105 = cpu->r[31] + 0x00000050u;
|
|
/* 02770CC8 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[21]);
|
|
/* 02770CCC */ _t106 = cpu->r[31] + 0x00000074u;
|
|
/* 02770CCC */ rbrew_write_f32(cpu->mem, _t106, cpu->f[20]);
|
|
/* 02770CD0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770CD4 */ _t107 = cpu->r[31] + 0x00000064u;
|
|
/* 02770CD4 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[27]);
|
|
/* 02770CD8 */ cpu->r[0] = 0x00000002u;
|
|
/* 02770CDC */ _t108 = cpu->r[31] + 0x00000060u;
|
|
/* 02770CDC */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 02770CE0 */ _t109 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02770CE0 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[29]);
|
|
/* 02770CE4 */ _t110 = cpu->r[31] + 0x00000078u;
|
|
/* 02770CE4 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[23]);
|
|
/* 02770CE8 */ _t111 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02770CE8 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[22]);
|
|
/* 02770CEC */ _t112 = cpu->r[31] + 0x00000070u;
|
|
/* 02770CEC */ rbrew_write_f32(cpu->mem, _t112, cpu->f[24]);
|
|
/* 02770CF0 */ _t113 = cpu->r[9] + 0x00001A70u;
|
|
/* 02770CF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02770CF4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02770CF8 */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 02770CF8 */ rbrew_write32(cpu->mem, _t114, cpu->r[0]);
|
|
/* 02770CFC */ cpu->r[0] = 0x00000004u;
|
|
/* 02770D00 */ _t115 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770D00 */ rbrew_write32(cpu->mem, _t115, cpu->r[12]);
|
|
/* 02770D04 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02770D08 */ _t116 = cpu->r[1] + 0x00000010u;
|
|
/* 02770D08 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 02770D0C */ Gambit_fn_02791774(cpu);
|
|
/* 02770D10 */ _t117 = cpu->r[30] + 0x00000230u;
|
|
/* 02770D10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02770D14 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 02770D18 */ _t118 = cpu->r[30] + 0x00000230u;
|
|
/* 02770D18 */ rbrew_write32(cpu->mem, _t118, cpu->r[0]);
|
|
/* 02770D1C */ _t119 = cpu->r[1] + 0x00000014u;
|
|
/* 02770D1C */ cpu->r[29] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02770D20 */ _t120 = cpu->r[1] + 0x00000068u;
|
|
/* 02770D20 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 02770D24 */ _t121 = cpu->r[1] + 0x00000038u;
|
|
/* 02770D24 */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 02770D28 */ _t122 = cpu->r[1] + 0x00000060u;
|
|
/* 02770D28 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t122);
|
|
/* 02770D2C */ _t123 = cpu->r[1] + 0x00000048u;
|
|
/* 02770D2C */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 02770D30 */ _t124 = cpu->r[1] + 0x00000030u;
|
|
/* 02770D30 */ cpu->f[21] = rbrew_read_f64(cpu->mem, _t124);
|
|
/* 02770D34 */ _t125 = cpu->r[1] + 0x00000040u;
|
|
/* 02770D34 */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t125);
|
|
/* 02770D38 */ _t126 = cpu->r[1] + 0x00000088u;
|
|
/* 02770D38 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 02770D3C */ _t127 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770D3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02770D40 */ _t128 = cpu->r[1] + 0x00000080u;
|
|
/* 02770D40 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t128);
|
|
/* 02770D44 */ _t129 = cpu->r[1] + 0x00000018u;
|
|
/* 02770D44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02770D48 */ _t130 = cpu->r[1] + 0x000000A8u;
|
|
/* 02770D48 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 02770D4C */ _t131 = cpu->r[1] + 0x00000078u;
|
|
/* 02770D4C */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02770D50 */ _t132 = cpu->r[1] + 0x000000A0u;
|
|
/* 02770D50 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t132);
|
|
/* 02770D54 */ _t133 = cpu->r[1] + 0x000000B8u;
|
|
/* 02770D54 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 02770D58 */ _t134 = cpu->r[1] + 0x00000028u;
|
|
/* 02770D58 */ cpu->f[20] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 02770D5C */ _t135 = cpu->r[1] + 0x000000B0u;
|
|
/* 02770D5C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t135);
|
|
/* 02770D60 */ _t136 = cpu->r[1] + 0x00000020u;
|
|
/* 02770D60 */ cpu->f[20] = rbrew_read_f64(cpu->mem, _t136);
|
|
/* 02770D64 */ _t137 = cpu->r[1] + 0x00000058u;
|
|
/* 02770D64 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 02770D68 */ _t138 = cpu->r[1] + 0x000000D8u;
|
|
/* 02770D68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 02770D6C */ _t139 = cpu->r[1] + 0x00000050u;
|
|
/* 02770D6C */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 02770D70 */ _t140 = cpu->r[1] + 0x000000D0u;
|
|
/* 02770D70 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t140);
|
|
/* 02770D74 */ _t141 = cpu->r[1] + 0x00000070u;
|
|
/* 02770D74 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t141);
|
|
/* 02770D78 */ _t142 = cpu->r[1] + 0x00000098u;
|
|
/* 02770D78 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 02770D7C */ _t143 = cpu->r[1] + 0x000000C8u;
|
|
/* 02770D7C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02770D80 */ _t144 = cpu->r[1] + 0x00000090u;
|
|
/* 02770D80 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t144);
|
|
/* 02770D84 */ _t145 = cpu->r[1] + 0x000000C0u;
|
|
/* 02770D84 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t145);
|
|
/* 02770D88 */ _t146 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02770D88 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02770D88 */ if (_t147) goto L_02770D8C; // else: addr-0 trap, fall-through
|
|
L_02770D8C: ; // 0x2770d8c
|
|
/* 02770D8C */ _t148 = cpu->r[1] + 0x000000E4u;
|
|
/* 02770D8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02770D90 */ cpu->lr = cpu->r[0];
|
|
/* 02770D94 */ cpu->r[1] = cpu->r[1] + 0x000000E0u;
|
|
/* 02770D98 */ return;
|
|
}
|
|
|
|
// fn_02770D9C @ 0x2770d9c
|
|
void Gambit_fn_02770D9C(CPUState* cpu) {
|
|
L_02770D9C: ; // 0x2770d9c
|
|
/* 02770D9C */ return;
|
|
}
|
|
|
|
// fn_02770DA0 @ 0x2770da0
|
|
void Gambit_fn_02770DA0(CPUState* cpu) {
|
|
L_02770DA0: ; // 0x2770da0
|
|
/* 02770DA0 */ return;
|
|
}
|
|
|
|
// fn_02770DA4 @ 0x2770da4
|
|
void Gambit_fn_02770DA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02770DA4: ; // 0x2770da4
|
|
/* 02770DA4 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02770DA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770DA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770DAC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770DAC */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770DAC */ if (_t2) goto L_02770DB8; else goto L_02770DB0;
|
|
L_02770DB0: ; // 0x2770db0
|
|
/* 02770DB0 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02770DB4 */ return;
|
|
L_02770DB8: ; // 0x2770db8
|
|
/* 02770DB8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02770DBC */ return;
|
|
}
|
|
|
|
// fn_02770DC0 @ 0x2770dc0
|
|
void Gambit_fn_02770DC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02770DC0: ; // 0x2770dc0
|
|
/* 02770DC0 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02770DC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770DC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770DC8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770DC8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770DC8 */ if (_t2) goto L_02770DD4; else goto L_02770DCC;
|
|
L_02770DCC: ; // 0x2770dcc
|
|
/* 02770DCC */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02770DD0 */ return;
|
|
L_02770DD4: ; // 0x2770dd4
|
|
/* 02770DD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02770DD8 */ return;
|
|
}
|
|
|
|
// fn_02770DDC @ 0x2770ddc
|
|
void Gambit_fn_02770DDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02770DDC: ; // 0x2770ddc
|
|
/* 02770DDC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02770DDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770DE0 */ _t1 = cpu->r[12] + 0x00000114u;
|
|
/* 02770DE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02770DE4 */ cpu->ctr = cpu->r[0];
|
|
/* 02770DE8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770DEC @ 0x2770dec
|
|
void Gambit_fn_02770DEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02770DEC: ; // 0x2770dec
|
|
/* 02770DEC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02770DEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770DF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770DF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02770DF4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770DF4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770DF4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02770DF4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770DF4 */ goto L_02770DF8;
|
|
L_02770DF8: ; // 0x2770df8
|
|
/* 02770DF8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02770DF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770DFC */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 02770DFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02770E00 */ cpu->ctr = cpu->r[12];
|
|
/* 02770E04 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770E08 @ 0x2770e08
|
|
void Gambit_fn_02770E08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02770E08: ; // 0x2770e08
|
|
/* 02770E08 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02770E08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770E0C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770E0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770E10 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770E10 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770E10 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02770E10 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770E10 */ goto L_02770E14;
|
|
L_02770E14: ; // 0x2770e14
|
|
/* 02770E14 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02770E14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770E18 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02770E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02770E1C */ cpu->ctr = cpu->r[0];
|
|
/* 02770E20 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770E24 @ 0x2770e24
|
|
void Gambit_fn_02770E24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02770E24: ; // 0x2770e24
|
|
/* 02770E24 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02770E24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770E28 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770E28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770E2C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770E2C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770E2C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02770E2C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770E2C */ goto L_02770E30;
|
|
L_02770E30: ; // 0x2770e30
|
|
/* 02770E30 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02770E30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770E34 */ _t5 = cpu->r[12] + 0x00000054u;
|
|
/* 02770E34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02770E38 */ cpu->ctr = cpu->r[0];
|
|
/* 02770E3C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770E40 @ 0x2770e40
|
|
void Gambit_fn_02770E40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02770E40: ; // 0x2770e40
|
|
/* 02770E40 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02770E40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770E44 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770E48 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770E48 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770E48 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02770E48 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770E48 */ goto L_02770E4C;
|
|
L_02770E4C: ; // 0x2770e4c
|
|
/* 02770E4C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02770E4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770E50 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02770E50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02770E54 */ cpu->ctr = cpu->r[0];
|
|
/* 02770E58 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770E5C @ 0x2770e5c
|
|
void Gambit_fn_02770E5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02770E5C: ; // 0x2770e5c
|
|
/* 02770E5C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02770E5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770E60 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770E64 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770E64 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770E64 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02770E64 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770E64 */ goto L_02770E68;
|
|
L_02770E68: ; // 0x2770e68
|
|
/* 02770E68 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02770E68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770E6C */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 02770E6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02770E70 */ cpu->ctr = cpu->r[0];
|
|
/* 02770E74 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770E78 @ 0x2770e78
|
|
void Gambit_fn_02770E78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02770E78: ; // 0x2770e78
|
|
/* 02770E78 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02770E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770E7C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770E7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770E80 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770E80 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770E80 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02770E80 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770E80 */ goto L_02770E84;
|
|
L_02770E84: ; // 0x2770e84
|
|
/* 02770E84 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02770E84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770E88 */ _t5 = cpu->r[11] + 0x0000006Cu;
|
|
/* 02770E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02770E8C */ cpu->ctr = cpu->r[0];
|
|
/* 02770E90 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770E94 @ 0x2770e94
|
|
void Gambit_fn_02770E94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02770E94: ; // 0x2770e94
|
|
/* 02770E94 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02770E94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770E98 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02770E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02770E9C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770E9C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770E9C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02770E9C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02770E9C */ goto L_02770EA0;
|
|
L_02770EA0: ; // 0x2770ea0
|
|
/* 02770EA0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02770EA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770EA4 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02770EA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02770EA8 */ cpu->ctr = cpu->r[0];
|
|
/* 02770EAC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770EB0 @ 0x2770eb0
|
|
void Gambit_fn_02770EB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02770EB0: ; // 0x2770eb0
|
|
/* 02770EB0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02770EB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770EB4 */ _t1 = cpu->r[12] + 0x00000024u;
|
|
/* 02770EB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02770EB8 */ cpu->ctr = cpu->r[0];
|
|
/* 02770EBC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770EC0 @ 0x2770ec0
|
|
void Gambit_fn_02770EC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02770EC0: ; // 0x2770ec0
|
|
/* 02770EC0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02770EC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770EC4 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02770EC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02770EC8 */ cpu->ctr = cpu->r[0];
|
|
/* 02770ECC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770ED0 @ 0x2770ed0
|
|
void Gambit_fn_02770ED0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02770ED0: ; // 0x2770ed0
|
|
/* 02770ED0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02770ED0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770ED4 */ _t1 = cpu->r[12] + 0x00000034u;
|
|
/* 02770ED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02770ED8 */ cpu->ctr = cpu->r[0];
|
|
/* 02770EDC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770EE0 @ 0x2770ee0
|
|
void Gambit_fn_02770EE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02770EE0: ; // 0x2770ee0
|
|
/* 02770EE0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02770EE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770EE4 */ _t1 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02770EE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02770EE8 */ cpu->ctr = cpu->r[0];
|
|
/* 02770EEC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770EF0 @ 0x2770ef0
|
|
void Gambit_fn_02770EF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02770EF0: ; // 0x2770ef0
|
|
/* 02770EF0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02770EF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770EF4 */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 02770EF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02770EF8 */ cpu->ctr = cpu->r[0];
|
|
/* 02770EFC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770F00 @ 0x2770f00
|
|
void Gambit_fn_02770F00(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02770F00: ; // 0x2770f00
|
|
/* 02770F00 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02770F00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770F04 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 02770F04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02770F08 */ cpu->ctr = cpu->r[0];
|
|
/* 02770F0C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02770F10 @ 0x2770f10
|
|
void Gambit_fn_02770F10(CPUState* cpu) {
|
|
L_02770F10: ; // 0x2770f10
|
|
/* 02770F10 */ return;
|
|
}
|
|
|
|
// fn_02770F14 @ 0x2770f14
|
|
void Gambit_fn_02770F14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02770F14: ; // 0x2770f14
|
|
/* 02770F14 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02770F18 */ _t0 = cpu->r[9] + 0xFFFFD9BCu;
|
|
/* 02770F18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02770F18 */ cpu->r[9] = _t0;
|
|
/* 02770F1C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02770F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02770F24 */ cpu->r[12] = cpu->r[12] + 0xFFFFDB18u;
|
|
/* 02770F28 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770F28 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02770F28 */ if (_t2) goto L_02770F2C; else goto L_02770F40;
|
|
L_02770F2C: ; // 0x2770f2c
|
|
/* 02770F2C */ cpu->r[7] = 0x10100000u;
|
|
/* 02770F30 */ cpu->r[0] = 0x00000001u;
|
|
/* 02770F34 */ cpu->r[7] = cpu->r[7] + 0x00001AD0u;
|
|
/* 02770F38 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02770F38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02770F3C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02770F3C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02770F40: ; // 0x2770f40
|
|
/* 02770F40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02770F44 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770F44 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02770F44 */ if (_t6) goto L_02770F48; else goto L_02770F50;
|
|
L_02770F48: ; // 0x2770f48
|
|
/* 02770F48 */ cpu->r[3] = 0x00000001u;
|
|
/* 02770F4C */ return;
|
|
L_02770F50: ; // 0x2770f50
|
|
/* 02770F50 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02770F54 */ _t7 = cpu->r[7] + 0xFFFFD4E0u;
|
|
/* 02770F54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02770F54 */ cpu->r[7] = _t7;
|
|
/* 02770F58 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02770F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02770F60 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02770F64 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02770F64 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02770F64 */ if (_t9) goto L_02770F68; else goto L_02770F7C;
|
|
L_02770F68: ; // 0x2770f68
|
|
/* 02770F68 */ cpu->r[0] = 0x10100000u;
|
|
/* 02770F6C */ cpu->r[9] = 0x00000001u;
|
|
/* 02770F70 */ cpu->r[0] = cpu->r[0] + 0x00001AC0u;
|
|
/* 02770F74 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02770F74 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02770F78 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02770F78 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02770F7C: ; // 0x2770f7c
|
|
/* 02770F7C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02770F80 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02770F84 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02770F88 */ return;
|
|
}
|
|
|
|
// fn_02770F8C @ 0x2770f8c
|
|
void Gambit_fn_02770F8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02770F8C: ; // 0x2770f8c
|
|
/* 02770F8C */ cpu->r[0] = cpu->lr;
|
|
/* 02770F90 */ cpu->r[12] = 0x10100000u;
|
|
/* 02770F94 */ cpu->r[10] = 0x00000001u;
|
|
/* 02770F98 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02770F98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770F98 */ cpu->r[1] = _t0;
|
|
/* 02770F9C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02770F9C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02770FA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02770FA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02770FA4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770FA8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770FA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02770FAC */ cpu->r[0] = 0x00000004u;
|
|
/* 02770FB0 */ _t4 = cpu->r[12] + 0x00001A68u;
|
|
/* 02770FB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770FB4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02770FB8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02770FB8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02770FBC */ cpu->r[31] = cpu->r[3];
|
|
/* 02770FC0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770FC0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02770FC4 */ Gambit_fn_02791774(cpu);
|
|
/* 02770FC8 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02770FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02770FCC */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 02770FD0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02770FD0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02770FD4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02770FD8 */ cpu->lr = cpu->r[0];
|
|
/* 02770FDC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02770FDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02770FE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02770FE4 */ return;
|
|
}
|
|
|
|
// fn_02770F98 @ 0x2770f98
|
|
void Gambit_fn_02770F98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02770F98: ; // 0x2770f98
|
|
/* 02770F98 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02770F98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770F98 */ cpu->r[1] = _t0;
|
|
/* 02770F9C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02770F9C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02770FA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02770FA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02770FA4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770FA8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770FA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02770FAC */ cpu->r[0] = 0x00000004u;
|
|
/* 02770FB0 */ _t4 = cpu->r[12] + 0x00001A68u;
|
|
/* 02770FB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02770FB4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02770FB8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02770FB8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02770FBC */ cpu->r[31] = cpu->r[3];
|
|
/* 02770FC0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02770FC0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02770FC4 */ Gambit_fn_02791774(cpu);
|
|
/* 02770FC8 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02770FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02770FCC */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 02770FD0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02770FD0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02770FD4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02770FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02770FD8 */ cpu->lr = cpu->r[0];
|
|
/* 02770FDC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02770FDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02770FE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02770FE4 */ return;
|
|
}
|
|
|
|
// fn_02770FE8 @ 0x2770fe8
|
|
void Gambit_fn_02770FE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02770FE8: ; // 0x2770fe8
|
|
/* 02770FE8 */ cpu->r[0] = cpu->lr;
|
|
/* 02770FEC */ cpu->r[12] = 0x10100000u;
|
|
/* 02770FF0 */ cpu->r[10] = 0x00000003u;
|
|
/* 02770FF4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02770FF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770FF4 */ cpu->r[1] = _t0;
|
|
/* 02770FF8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02770FF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02770FFC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02770FFC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02771000 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771004 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771004 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771008 */ cpu->r[0] = 0x00000004u;
|
|
/* 0277100C */ _t4 = cpu->r[12] + 0x00001A78u;
|
|
/* 0277100C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771010 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771014 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771014 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02771018 */ cpu->r[31] = cpu->r[3];
|
|
/* 0277101C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277101C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02771020 */ Gambit_fn_02791774(cpu);
|
|
/* 02771024 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771028 */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0277102C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0277102C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02771030 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771034 */ cpu->lr = cpu->r[0];
|
|
/* 02771038 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02771038 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0277103C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02771040 */ return;
|
|
}
|
|
|
|
// fn_02770FF4 @ 0x2770ff4
|
|
void Gambit_fn_02770FF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02770FF4: ; // 0x2770ff4
|
|
/* 02770FF4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02770FF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02770FF4 */ cpu->r[1] = _t0;
|
|
/* 02770FF8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02770FF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02770FFC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02770FFC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02771000 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771004 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771004 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771008 */ cpu->r[0] = 0x00000004u;
|
|
/* 0277100C */ _t4 = cpu->r[12] + 0x00001A78u;
|
|
/* 0277100C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771010 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771014 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771014 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02771018 */ cpu->r[31] = cpu->r[3];
|
|
/* 0277101C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277101C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02771020 */ Gambit_fn_02791774(cpu);
|
|
/* 02771024 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771028 */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0277102C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0277102C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02771030 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771034 */ cpu->lr = cpu->r[0];
|
|
/* 02771038 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02771038 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0277103C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02771040 */ return;
|
|
}
|
|
|
|
// fn_02771044 @ 0x2771044
|
|
void Gambit_fn_02771044(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02771044: ; // 0x2771044
|
|
/* 02771044 */ cpu->r[0] = cpu->lr;
|
|
/* 02771048 */ cpu->r[12] = 0x10100000u;
|
|
/* 0277104C */ cpu->r[10] = 0x00000006u;
|
|
/* 02771050 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771050 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771050 */ cpu->r[1] = _t0;
|
|
/* 02771054 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02771054 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02771058 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02771058 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0277105C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771060 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771060 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771064 */ cpu->r[0] = 0x00000004u;
|
|
/* 02771068 */ _t4 = cpu->r[12] + 0x00001A80u;
|
|
/* 02771068 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0277106C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771070 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771070 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02771074 */ cpu->r[31] = cpu->r[3];
|
|
/* 02771078 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771078 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0277107C */ Gambit_fn_02791888(cpu);
|
|
/* 02771080 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771084 */ cpu->r[0] = cpu->r[0] | 0x00000040u;
|
|
/* 02771088 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02771088 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0277108C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277108C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771090 */ cpu->lr = cpu->r[0];
|
|
/* 02771094 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02771094 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771098 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277109C */ return;
|
|
}
|
|
|
|
// fn_02771050 @ 0x2771050
|
|
void Gambit_fn_02771050(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02771050: ; // 0x2771050
|
|
/* 02771050 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771050 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771050 */ cpu->r[1] = _t0;
|
|
/* 02771054 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02771054 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02771058 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02771058 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0277105C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771060 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771060 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771064 */ cpu->r[0] = 0x00000004u;
|
|
/* 02771068 */ _t4 = cpu->r[12] + 0x00001A80u;
|
|
/* 02771068 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0277106C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771070 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771070 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02771074 */ cpu->r[31] = cpu->r[3];
|
|
/* 02771078 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771078 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0277107C */ Gambit_fn_02791888(cpu);
|
|
/* 02771080 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771084 */ cpu->r[0] = cpu->r[0] | 0x00000040u;
|
|
/* 02771088 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02771088 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0277108C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277108C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771090 */ cpu->lr = cpu->r[0];
|
|
/* 02771094 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02771094 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771098 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277109C */ return;
|
|
}
|
|
|
|
// fn_027710A0 @ 0x27710a0
|
|
void Gambit_fn_027710A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027710A0: ; // 0x27710a0
|
|
/* 027710A0 */ cpu->r[0] = cpu->lr;
|
|
/* 027710A4 */ cpu->r[12] = 0x10100000u;
|
|
/* 027710A8 */ cpu->r[10] = 0x00000007u;
|
|
/* 027710AC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027710AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027710AC */ cpu->r[1] = _t0;
|
|
/* 027710B0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027710B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 027710B4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027710B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027710B8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027710BC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027710BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027710C0 */ cpu->r[0] = 0x00000004u;
|
|
/* 027710C4 */ _t4 = cpu->r[12] + 0x00001A88u;
|
|
/* 027710C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027710C8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027710CC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 027710CC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027710D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027710D4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027710D4 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 027710D8 */ Gambit_fn_02791888(cpu);
|
|
/* 027710DC */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 027710DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027710E0 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 027710E4 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 027710E4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027710E8 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027710E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027710EC */ cpu->lr = cpu->r[0];
|
|
/* 027710F0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027710F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027710F4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027710F8 */ return;
|
|
}
|
|
|
|
// fn_027710AC @ 0x27710ac
|
|
void Gambit_fn_027710AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027710AC: ; // 0x27710ac
|
|
/* 027710AC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027710AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027710AC */ cpu->r[1] = _t0;
|
|
/* 027710B0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027710B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 027710B4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027710B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027710B8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027710BC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027710BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027710C0 */ cpu->r[0] = 0x00000004u;
|
|
/* 027710C4 */ _t4 = cpu->r[12] + 0x00001A88u;
|
|
/* 027710C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027710C8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027710CC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 027710CC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027710D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027710D4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027710D4 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 027710D8 */ Gambit_fn_02791888(cpu);
|
|
/* 027710DC */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 027710DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027710E0 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 027710E4 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 027710E4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027710E8 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027710E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027710EC */ cpu->lr = cpu->r[0];
|
|
/* 027710F0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027710F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027710F4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027710F8 */ return;
|
|
}
|
|
|
|
// fn_027710FC @ 0x27710fc
|
|
void Gambit_fn_027710FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027710FC: ; // 0x27710fc
|
|
/* 027710FC */ cpu->r[0] = cpu->lr;
|
|
/* 02771100 */ cpu->r[12] = 0x10100000u;
|
|
/* 02771104 */ cpu->r[10] = 0x00000008u;
|
|
/* 02771108 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771108 */ cpu->r[1] = _t0;
|
|
/* 0277110C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0277110C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02771110 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02771110 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02771114 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771118 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771118 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0277111C */ cpu->r[0] = 0x00000004u;
|
|
/* 02771120 */ _t4 = cpu->r[12] + 0x00001A90u;
|
|
/* 02771120 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771124 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771128 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771128 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0277112C */ cpu->r[31] = cpu->r[3];
|
|
/* 02771130 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771130 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02771134 */ Gambit_fn_02791888(cpu);
|
|
/* 02771138 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771138 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0277113C */ cpu->r[0] = cpu->r[0] | 0x00000100u;
|
|
/* 02771140 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02771140 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02771144 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771144 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771148 */ cpu->lr = cpu->r[0];
|
|
/* 0277114C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0277114C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771150 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02771154 */ return;
|
|
}
|
|
|
|
// fn_02771108 @ 0x2771108
|
|
void Gambit_fn_02771108(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02771108: ; // 0x2771108
|
|
/* 02771108 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771108 */ cpu->r[1] = _t0;
|
|
/* 0277110C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0277110C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02771110 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02771110 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02771114 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771118 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771118 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0277111C */ cpu->r[0] = 0x00000004u;
|
|
/* 02771120 */ _t4 = cpu->r[12] + 0x00001A90u;
|
|
/* 02771120 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771124 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771128 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771128 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0277112C */ cpu->r[31] = cpu->r[3];
|
|
/* 02771130 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771130 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02771134 */ Gambit_fn_02791888(cpu);
|
|
/* 02771138 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771138 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0277113C */ cpu->r[0] = cpu->r[0] | 0x00000100u;
|
|
/* 02771140 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02771140 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02771144 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771144 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771148 */ cpu->lr = cpu->r[0];
|
|
/* 0277114C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0277114C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771150 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02771154 */ return;
|
|
}
|
|
|
|
// fn_02771158 @ 0x2771158
|
|
void Gambit_fn_02771158(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02771158: ; // 0x2771158
|
|
/* 02771158 */ cpu->r[0] = cpu->lr;
|
|
/* 0277115C */ cpu->r[12] = 0x10100000u;
|
|
/* 02771160 */ cpu->r[10] = 0x00000009u;
|
|
/* 02771164 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771164 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771164 */ cpu->r[1] = _t0;
|
|
/* 02771168 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02771168 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0277116C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0277116C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02771170 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771174 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771174 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771178 */ cpu->r[0] = 0x00000004u;
|
|
/* 0277117C */ _t4 = cpu->r[12] + 0x00001A98u;
|
|
/* 0277117C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771180 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771184 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771184 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02771188 */ cpu->r[31] = cpu->r[3];
|
|
/* 0277118C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277118C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02771190 */ Gambit_fn_02791888(cpu);
|
|
/* 02771194 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771198 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0277119C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0277119C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027711A0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027711A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027711A4 */ cpu->lr = cpu->r[0];
|
|
/* 027711A8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027711A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027711AC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027711B0 */ return;
|
|
}
|
|
|
|
// fn_02771164 @ 0x2771164
|
|
void Gambit_fn_02771164(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02771164: ; // 0x2771164
|
|
/* 02771164 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771164 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771164 */ cpu->r[1] = _t0;
|
|
/* 02771168 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02771168 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0277116C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0277116C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02771170 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771174 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771174 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771178 */ cpu->r[0] = 0x00000004u;
|
|
/* 0277117C */ _t4 = cpu->r[12] + 0x00001A98u;
|
|
/* 0277117C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771180 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771184 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771184 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02771188 */ cpu->r[31] = cpu->r[3];
|
|
/* 0277118C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277118C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02771190 */ Gambit_fn_02791888(cpu);
|
|
/* 02771194 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771198 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0277119C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0277119C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027711A0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027711A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027711A4 */ cpu->lr = cpu->r[0];
|
|
/* 027711A8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027711A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027711AC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027711B0 */ return;
|
|
}
|
|
|
|
// fn_027711B4 @ 0x27711b4
|
|
void Gambit_fn_027711B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027711B4: ; // 0x27711b4
|
|
/* 027711B4 */ cpu->r[0] = cpu->lr;
|
|
/* 027711B8 */ cpu->r[12] = 0x10100000u;
|
|
/* 027711BC */ cpu->r[10] = 0x0000000Au;
|
|
/* 027711C0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027711C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027711C0 */ cpu->r[1] = _t0;
|
|
/* 027711C4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027711C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 027711C8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027711C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027711CC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027711D0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027711D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027711D4 */ cpu->r[0] = 0x00000004u;
|
|
/* 027711D8 */ _t4 = cpu->r[12] + 0x00001AA0u;
|
|
/* 027711D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027711DC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027711E0 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 027711E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027711E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027711E8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027711E8 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 027711EC */ Gambit_fn_02791888(cpu);
|
|
/* 027711F0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 027711F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027711F4 */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 027711F8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 027711F8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027711FC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027711FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771200 */ cpu->lr = cpu->r[0];
|
|
/* 02771204 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02771204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771208 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277120C */ return;
|
|
}
|
|
|
|
// fn_027711C0 @ 0x27711c0
|
|
void Gambit_fn_027711C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027711C0: ; // 0x27711c0
|
|
/* 027711C0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027711C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027711C0 */ cpu->r[1] = _t0;
|
|
/* 027711C4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027711C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 027711C8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027711C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027711CC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027711D0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027711D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027711D4 */ cpu->r[0] = 0x00000004u;
|
|
/* 027711D8 */ _t4 = cpu->r[12] + 0x00001AA0u;
|
|
/* 027711D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027711DC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027711E0 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 027711E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027711E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027711E8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027711E8 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 027711EC */ Gambit_fn_02791888(cpu);
|
|
/* 027711F0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 027711F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027711F4 */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 027711F8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 027711F8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027711FC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027711FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771200 */ cpu->lr = cpu->r[0];
|
|
/* 02771204 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02771204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771208 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277120C */ return;
|
|
}
|
|
|
|
// fn_02771210 @ 0x2771210
|
|
void Gambit_fn_02771210(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02771210: ; // 0x2771210
|
|
/* 02771210 */ cpu->r[0] = cpu->lr;
|
|
/* 02771214 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771214 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771214 */ cpu->r[1] = _t0;
|
|
/* 02771218 */ cpu->r[8] = 0x10100000u;
|
|
/* 0277121C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0277121C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771220 */ cpu->r[12] = 0x0000000Bu;
|
|
/* 02771224 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02771224 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02771228 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277122C */ cpu->r[31] = cpu->r[3];
|
|
/* 02771230 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771230 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771234 */ cpu->r[0] = 0x00000004u;
|
|
/* 02771238 */ _t4 = cpu->r[8] + 0x00001AA8u;
|
|
/* 02771238 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0277123C */ cpu->r[6] = cpu->r[4];
|
|
/* 02771240 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771240 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02771244 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771248 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771248 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0277124C */ Gambit_fn_027919C4(cpu);
|
|
/* 02771250 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771250 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771254 */ cpu->r[10] = cpu->r[10] | 0x00000800u;
|
|
/* 02771258 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02771258 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0277125C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277125C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771260 */ cpu->lr = cpu->r[0];
|
|
/* 02771264 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02771264 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771268 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277126C */ return;
|
|
}
|
|
|
|
// fn_02771214 @ 0x2771214
|
|
void Gambit_fn_02771214(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02771214: ; // 0x2771214
|
|
/* 02771214 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771214 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771214 */ cpu->r[1] = _t0;
|
|
/* 02771218 */ cpu->r[8] = 0x10100000u;
|
|
/* 0277121C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0277121C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771220 */ cpu->r[12] = 0x0000000Bu;
|
|
/* 02771224 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02771224 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02771228 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277122C */ cpu->r[31] = cpu->r[3];
|
|
/* 02771230 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771230 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771234 */ cpu->r[0] = 0x00000004u;
|
|
/* 02771238 */ _t4 = cpu->r[8] + 0x00001AA8u;
|
|
/* 02771238 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0277123C */ cpu->r[6] = cpu->r[4];
|
|
/* 02771240 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02771240 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02771244 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771248 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771248 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0277124C */ Gambit_fn_027919C4(cpu);
|
|
/* 02771250 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02771250 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771254 */ cpu->r[10] = cpu->r[10] | 0x00000800u;
|
|
/* 02771258 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02771258 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0277125C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277125C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02771260 */ cpu->lr = cpu->r[0];
|
|
/* 02771264 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02771264 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771268 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277126C */ return;
|
|
}
|
|
|
|
// fn_02771270 @ 0x2771270
|
|
void Gambit_fn_02771270(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02771270: ; // 0x2771270
|
|
/* 02771270 */ cpu->r[0] = cpu->lr;
|
|
/* 02771274 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771274 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771274 */ cpu->r[1] = _t0;
|
|
/* 02771278 */ cpu->r[8] = 0x10100000u;
|
|
/* 0277127C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0277127C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771280 */ cpu->r[12] = 0x0000000Cu;
|
|
/* 02771284 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02771284 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02771288 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277128C */ cpu->r[31] = cpu->r[3];
|
|
/* 02771290 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771290 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771294 */ cpu->r[0] = 0x00000004u;
|
|
/* 02771298 */ _t4 = cpu->r[8] + 0x00001AB0u;
|
|
/* 02771298 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0277129C */ cpu->r[6] = cpu->r[4];
|
|
/* 027712A0 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 027712A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027712A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027712A8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027712A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 027712AC */ Gambit_fn_027919C4(cpu);
|
|
/* 027712B0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 027712B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027712B4 */ cpu->r[10] = cpu->r[10] | 0x00001000u;
|
|
/* 027712B8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 027712B8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 027712BC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027712BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027712C0 */ cpu->lr = cpu->r[0];
|
|
/* 027712C4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027712C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027712C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027712CC */ return;
|
|
}
|
|
|
|
// fn_02771274 @ 0x2771274
|
|
void Gambit_fn_02771274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02771274: ; // 0x2771274
|
|
/* 02771274 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771274 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771274 */ cpu->r[1] = _t0;
|
|
/* 02771278 */ cpu->r[8] = 0x10100000u;
|
|
/* 0277127C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0277127C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771280 */ cpu->r[12] = 0x0000000Cu;
|
|
/* 02771284 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02771284 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02771288 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277128C */ cpu->r[31] = cpu->r[3];
|
|
/* 02771290 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771290 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771294 */ cpu->r[0] = 0x00000004u;
|
|
/* 02771298 */ _t4 = cpu->r[8] + 0x00001AB0u;
|
|
/* 02771298 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0277129C */ cpu->r[6] = cpu->r[4];
|
|
/* 027712A0 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 027712A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027712A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027712A8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027712A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 027712AC */ Gambit_fn_027919C4(cpu);
|
|
/* 027712B0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 027712B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027712B4 */ cpu->r[10] = cpu->r[10] | 0x00001000u;
|
|
/* 027712B8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 027712B8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 027712BC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027712BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027712C0 */ cpu->lr = cpu->r[0];
|
|
/* 027712C4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027712C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027712C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027712CC */ return;
|
|
}
|
|
|
|
// fn_027712D0 @ 0x27712d0
|
|
void Gambit_fn_027712D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027712D0: ; // 0x27712d0
|
|
/* 027712D0 */ cpu->r[0] = cpu->lr;
|
|
/* 027712D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027712D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027712D4 */ cpu->r[1] = _t0;
|
|
/* 027712D8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027712D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027712DC */ cpu->r[31] = cpu->r[3];
|
|
/* 027712E0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027712E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027712E4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027712E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027712E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 027712EC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027712EC */ _t5 = _t4 & 0x00000001u;
|
|
/* 027712EC */ if (_t5) goto L_027712F0; else goto L_0277130C;
|
|
L_027712F0: ; // 0x27712f0
|
|
/* 027712F0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 027712F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027712F4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 027712F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027712F8 */ cpu->ctr = cpu->r[0];
|
|
/* 027712FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02771300 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02771304 */ cpu->r[10] = 0x00000002u;
|
|
/* 02771308 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02771308 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0277130C: ; // 0x277130c
|
|
/* 0277130C */ cpu->r[0] = 0x00000005u;
|
|
/* 02771310 */ cpu->r[12] = 0x10100000u;
|
|
/* 02771314 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02771314 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02771318 */ _t10 = cpu->r[12] + 0x00001AB8u;
|
|
/* 02771318 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771318 */ cpu->r[12] = _t10;
|
|
/* 0277131C */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0277131C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02771320 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771324 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771324 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 02771328 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0277132C */ cpu->r[3] = cpu->r[31];
|
|
/* 02771330 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02771330 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02771334 */ Gambit_fn_02791888(cpu);
|
|
/* 02771338 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771338 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0277133C */ cpu->lr = cpu->r[0];
|
|
/* 02771340 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02771340 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02771344 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02771348 */ return;
|
|
}
|
|
|
|
// fn_027712D4 @ 0x27712d4
|
|
void Gambit_fn_027712D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027712D4: ; // 0x27712d4
|
|
/* 027712D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027712D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027712D4 */ cpu->r[1] = _t0;
|
|
/* 027712D8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027712D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027712DC */ cpu->r[31] = cpu->r[3];
|
|
/* 027712E0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027712E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027712E4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027712E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027712E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 027712EC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027712EC */ _t5 = _t4 & 0x00000001u;
|
|
/* 027712EC */ if (_t5) goto L_027712F0; else goto L_0277130C;
|
|
L_027712F0: ; // 0x27712f0
|
|
/* 027712F0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 027712F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027712F4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 027712F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027712F8 */ cpu->ctr = cpu->r[0];
|
|
/* 027712FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02771300 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02771304 */ cpu->r[10] = 0x00000002u;
|
|
/* 02771308 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02771308 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0277130C: ; // 0x277130c
|
|
/* 0277130C */ cpu->r[0] = 0x00000005u;
|
|
/* 02771310 */ cpu->r[12] = 0x10100000u;
|
|
/* 02771314 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02771314 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02771318 */ _t10 = cpu->r[12] + 0x00001AB8u;
|
|
/* 02771318 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02771318 */ cpu->r[12] = _t10;
|
|
/* 0277131C */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0277131C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02771320 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771324 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771324 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 02771328 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0277132C */ cpu->r[3] = cpu->r[31];
|
|
/* 02771330 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02771330 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02771334 */ Gambit_fn_02791888(cpu);
|
|
/* 02771338 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771338 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0277133C */ cpu->lr = cpu->r[0];
|
|
/* 02771340 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02771340 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02771344 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02771348 */ return;
|
|
}
|
|
|
|
// fn_0277136C @ 0x277136c
|
|
void Gambit_fn_0277136C(CPUState* cpu) {
|
|
L_0277136C: ; // 0x277136c
|
|
/* 0277136C */ cpu->r[3] = 0x10100000u;
|
|
/* 02771370 */ cpu->r[3] = cpu->r[3] + 0x00001AE0u;
|
|
/* 02771374 */ return;
|
|
}
|
|
|
|
// fn_02771378 @ 0x2771378
|
|
void Gambit_fn_02771378(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02771378: ; // 0x2771378
|
|
/* 02771378 */ cpu->r[0] = cpu->lr;
|
|
/* 0277137C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02771380 */ cpu->r[7] = 0x02770000u;
|
|
/* 02771384 */ cpu->r[6] = 0x02770000u;
|
|
/* 02771388 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0277138C */ cpu->r[7] = cpu->r[7] + 0x0000134Cu;
|
|
/* 02771390 */ cpu->r[6] = cpu->r[6] + 0x0000134Cu;
|
|
/* 02771394 */ cpu->r[10] = cpu->r[10] + 0xFFFF8C78u;
|
|
/* 02771398 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02771398 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0277139C */ cpu->r[0] = 0x101D0000u;
|
|
/* 027713A0 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027713A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027713A0 */ cpu->r[1] = _t1;
|
|
/* 027713A4 */ cpu->r[0] = cpu->r[0] + 0xFFFF8C74u;
|
|
/* 027713A8 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 027713A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027713AC */ cpu->r[8] = 0x00000000u;
|
|
/* 027713B0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 027713B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027713B4 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027713B8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027713B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 027713BC */ Gambit_fn_02791B10(cpu);
|
|
/* 027713C0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027713C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027713C4 */ cpu->lr = cpu->r[0];
|
|
/* 027713C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027713CC */ return;
|
|
}
|
|
|
|
// fn_027713A0 @ 0x27713a0
|
|
void Gambit_fn_027713A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027713A0: ; // 0x27713a0
|
|
/* 027713A0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027713A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027713A0 */ cpu->r[1] = _t0;
|
|
/* 027713A4 */ cpu->r[0] = cpu->r[0] + 0xFFFF8C74u;
|
|
/* 027713A8 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 027713A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027713AC */ cpu->r[8] = 0x00000000u;
|
|
/* 027713B0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027713B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027713B4 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027713B8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027713B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 027713BC */ Gambit_fn_02791B10(cpu);
|
|
/* 027713C0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027713C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027713C4 */ cpu->lr = cpu->r[0];
|
|
/* 027713C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027713CC */ return;
|
|
}
|
|
|
|
// fn_027713D0 @ 0x27713d0
|
|
void Gambit_fn_027713D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027713D0: ; // 0x27713d0
|
|
/* 027713D0 */ cpu->r[0] = cpu->lr;
|
|
/* 027713D4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027713D8 */ cpu->r[7] = 0x02770000u;
|
|
/* 027713DC */ cpu->r[6] = 0x02770000u;
|
|
/* 027713E0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 027713E4 */ cpu->r[7] = cpu->r[7] + 0x00001354u;
|
|
/* 027713E8 */ cpu->r[6] = cpu->r[6] + 0x00001354u;
|
|
/* 027713EC */ cpu->r[10] = cpu->r[10] + 0xFFFF8C70u;
|
|
/* 027713F0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027713F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027713F4 */ cpu->r[0] = 0x101D0000u;
|
|
/* 027713F8 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027713F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027713F8 */ cpu->r[1] = _t1;
|
|
/* 027713FC */ cpu->r[0] = cpu->r[0] + 0xFFFF8C6Cu;
|
|
/* 02771400 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02771400 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02771404 */ cpu->r[8] = 0x00000000u;
|
|
/* 02771408 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02771408 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0277140C */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771410 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771410 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02771414 */ Gambit_fn_02791B10(cpu);
|
|
/* 02771418 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02771418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0277141C */ cpu->lr = cpu->r[0];
|
|
/* 02771420 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02771424 */ return;
|
|
}
|
|
|
|
// fn_027713F8 @ 0x27713f8
|
|
void Gambit_fn_027713F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027713F8: ; // 0x27713f8
|
|
/* 027713F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027713F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027713F8 */ cpu->r[1] = _t0;
|
|
/* 027713FC */ cpu->r[0] = cpu->r[0] + 0xFFFF8C6Cu;
|
|
/* 02771400 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02771400 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02771404 */ cpu->r[8] = 0x00000000u;
|
|
/* 02771408 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02771408 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0277140C */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771410 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771410 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02771414 */ Gambit_fn_02791B10(cpu);
|
|
/* 02771418 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02771418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0277141C */ cpu->lr = cpu->r[0];
|
|
/* 02771420 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02771424 */ return;
|
|
}
|
|
|
|
// fn_02771428 @ 0x2771428
|
|
void Gambit_fn_02771428(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02771428: ; // 0x2771428
|
|
/* 02771428 */ cpu->r[0] = cpu->lr;
|
|
/* 0277142C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02771430 */ cpu->r[7] = 0x02770000u;
|
|
/* 02771434 */ cpu->r[6] = 0x02770000u;
|
|
/* 02771438 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0277143C */ cpu->r[7] = cpu->r[7] + 0x0000135Cu;
|
|
/* 02771440 */ cpu->r[6] = cpu->r[6] + 0x0000135Cu;
|
|
/* 02771444 */ cpu->r[10] = cpu->r[10] + 0xFFFF8C68u;
|
|
/* 02771448 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02771448 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0277144C */ cpu->r[0] = 0x101D0000u;
|
|
/* 02771450 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02771450 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02771450 */ cpu->r[1] = _t1;
|
|
/* 02771454 */ cpu->r[0] = cpu->r[0] + 0xFFFF8C64u;
|
|
/* 02771458 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02771458 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0277145C */ cpu->r[8] = 0x00000000u;
|
|
/* 02771460 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02771460 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771464 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771468 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771468 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0277146C */ Gambit_fn_02791B10(cpu);
|
|
/* 02771470 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02771470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02771474 */ cpu->lr = cpu->r[0];
|
|
/* 02771478 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0277147C */ return;
|
|
}
|
|
|
|
// fn_02771450 @ 0x2771450
|
|
void Gambit_fn_02771450(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02771450: ; // 0x2771450
|
|
/* 02771450 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02771450 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771450 */ cpu->r[1] = _t0;
|
|
/* 02771454 */ cpu->r[0] = cpu->r[0] + 0xFFFF8C64u;
|
|
/* 02771458 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02771458 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0277145C */ cpu->r[8] = 0x00000000u;
|
|
/* 02771460 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02771460 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02771464 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771468 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771468 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0277146C */ Gambit_fn_02791B10(cpu);
|
|
/* 02771470 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02771470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771474 */ cpu->lr = cpu->r[0];
|
|
/* 02771478 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0277147C */ return;
|
|
}
|
|
|
|
// fn_02771480 @ 0x2771480
|
|
void Gambit_fn_02771480(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02771480: ; // 0x2771480
|
|
/* 02771480 */ cpu->r[0] = cpu->lr;
|
|
/* 02771484 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02771488 */ cpu->r[7] = 0x02770000u;
|
|
/* 0277148C */ cpu->r[6] = 0x02770000u;
|
|
/* 02771490 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02771494 */ cpu->r[7] = cpu->r[7] + 0x00001364u;
|
|
/* 02771498 */ cpu->r[6] = cpu->r[6] + 0x00001364u;
|
|
/* 0277149C */ cpu->r[10] = cpu->r[10] + 0xFFFF8C5Cu;
|
|
/* 027714A0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027714A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027714A4 */ cpu->r[0] = 0x101D0000u;
|
|
/* 027714A8 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027714A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027714A8 */ cpu->r[1] = _t1;
|
|
/* 027714AC */ cpu->r[0] = cpu->r[0] + 0xFFFF8C58u;
|
|
/* 027714B0 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 027714B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027714B4 */ cpu->r[8] = 0x00000000u;
|
|
/* 027714B8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 027714B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027714BC */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027714C0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027714C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 027714C4 */ Gambit_fn_02791B10(cpu);
|
|
/* 027714C8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027714C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027714CC */ cpu->lr = cpu->r[0];
|
|
/* 027714D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027714D4 */ return;
|
|
}
|
|
|
|
// fn_027714A8 @ 0x27714a8
|
|
void Gambit_fn_027714A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027714A8: ; // 0x27714a8
|
|
/* 027714A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027714A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027714A8 */ cpu->r[1] = _t0;
|
|
/* 027714AC */ cpu->r[0] = cpu->r[0] + 0xFFFF8C58u;
|
|
/* 027714B0 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 027714B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027714B4 */ cpu->r[8] = 0x00000000u;
|
|
/* 027714B8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027714B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027714BC */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027714C0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027714C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 027714C4 */ Gambit_fn_02791B10(cpu);
|
|
/* 027714C8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027714C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027714CC */ cpu->lr = cpu->r[0];
|
|
/* 027714D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027714D4 */ return;
|
|
}
|
|
|
|
// fn_027714D8 @ 0x27714d8
|
|
void Gambit_fn_027714D8(CPUState* cpu) {
|
|
L_027714D8: ; // 0x27714d8
|
|
/* 027714D8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 027714DC */ goto L_02773E9C;
|
|
L_02773E9C: ; // 0x2773e9c
|
|
/* 02773E9C */ cpu->r[3] = 0x00000000u;
|
|
/* 02773EA0 */ return;
|
|
}
|
|
|
|
// fn_027714E0 @ 0x27714e0
|
|
void Gambit_fn_027714E0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_027714E0: ; // 0x27714e0
|
|
/* 027714E0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 027714E4 */ goto L_02773EA4;
|
|
L_02773EA4: ; // 0x2773ea4
|
|
/* 02773EA4 */ _t0 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02773EA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773EA8 */ return;
|
|
}
|
|
|
|
// fn_027714E8 @ 0x27714e8
|
|
void Gambit_fn_027714E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027714E8: ; // 0x27714e8
|
|
/* 027714E8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 027714EC */ goto L_02773EAC;
|
|
L_02773EAC: ; // 0x2773eac
|
|
/* 02773EAC */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 02773EAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02773EB4 */ cpu->r[12] = cpu->r[3] + 0x00000290u;
|
|
/* 02773EB8 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02773EB8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02773EB8 */ if (_t2) goto L_02773EBC; else goto L_02773EC4;
|
|
L_02773EBC: ; // 0x2773ebc
|
|
/* 02773EBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02773EC0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02773EC4: ; // 0x2773ec4
|
|
/* 02773EC4 */ _t3 = cpu->r[12] + 0x00000000u;
|
|
/* 02773EC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02773EC8 */ return;
|
|
}
|
|
|
|
// fn_027714F0 @ 0x27714f0
|
|
void Gambit_fn_027714F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_027714F0: ; // 0x27714f0
|
|
/* 027714F0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027714F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027714F0 */ cpu->r[1] = _t0;
|
|
/* 027714F4 */ cpu->r[0] = cpu->lr;
|
|
/* 027714F8 */ /* nop */
|
|
/* 027714FC */ cpu->r[28] = cpu->r[5];
|
|
/* 02771500 */ cpu->r[27] = cpu->r[6];
|
|
/* 02771504 */ cpu->r[30] = 0x00000000u;
|
|
/* 02771508 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02771508 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0277150C */ cpu->r[29] = cpu->r[4];
|
|
/* 0277150C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02771510 */ cpu->r[31] = cpu->r[3];
|
|
/* 02771514 */ cpu->r[3] = cpu->r[29];
|
|
/* 02771518 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771518 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02771518 */ if (_t3) goto L_0277151C; else goto L_0277152C;
|
|
L_0277151C: ; // 0x277151c
|
|
/* 0277151C */ cpu->r[3] = 0x00000010u;
|
|
/* 02771520 */ Gambit_fn_02801A78(cpu);
|
|
/* 02771524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771528 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771528 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02771528 */ if (_t5) goto L_02771548; else goto L_0277152C;
|
|
L_0277152C: ; // 0x277152c
|
|
/* 0277152C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0277152C */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02771530 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02771530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771534 */ cpu->r[6] = 0x00000001u;
|
|
/* 02771538 */ _t8 = cpu->r[3] + 0x00000008u;
|
|
/* 02771538 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0277153C */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02771540 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02771540 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[6]);
|
|
/* 02771544 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02771544 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
L_02771548: ; // 0x2771548
|
|
/* 02771548 */ _t11 = cpu->r[28] + 0x00000000u;
|
|
/* 02771548 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0277154C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 02771550 */ cpu->r[10] = cpu->r[31] + 0x00000260u;
|
|
/* 02771554 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771554 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02771554 */ if (_t13) goto L_02771558; else goto L_02771560;
|
|
L_02771558: ; // 0x2771558
|
|
/* 02771558 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0277155C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02771560: ; // 0x2771560
|
|
/* 02771560 */ _t14 = cpu->r[10] + 0x00000000u;
|
|
/* 02771560 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02771564 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[9]);
|
|
/* 02771568 */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 02771568 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0277156C */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277156C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0277156C */ if (_t17) goto L_02771570; else goto L_02771578;
|
|
L_02771570: ; // 0x2771570
|
|
/* 02771570 */ cpu->r[0] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02771574 */ cpu->r[11] = cpu->r[11] + cpu->r[0];
|
|
L_02771578: ; // 0x2771578
|
|
/* 02771578 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 02771578 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0277157C */ _t19 = cpu->r[29] + 0x00000000u;
|
|
/* 0277157C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 02771580 */ _t20 = cpu->r[28] + 0x00000000u;
|
|
/* 02771580 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02771584 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 02771588 */ cpu->r[12] = cpu->r[31] + 0x00000278u;
|
|
/* 0277158C */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277158C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0277158C */ if (_t22) goto L_02771590; else goto L_02771598;
|
|
L_02771590: ; // 0x2771590
|
|
/* 02771590 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02771594 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02771598: ; // 0x2771598
|
|
/* 02771598 */ _t23 = cpu->r[12] + 0x00000000u;
|
|
/* 02771598 */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0277159C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[6]);
|
|
/* 027715A0 */ _t24 = cpu->r[12] + 0x00000004u;
|
|
/* 027715A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027715A4 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027715A4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027715A4 */ if (_t26) goto L_027715A8; else goto L_027715B0;
|
|
L_027715A8: ; // 0x27715a8
|
|
/* 027715A8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027715AC */ cpu->r[8] = cpu->r[8] + cpu->r[7];
|
|
L_027715B0: ; // 0x27715b0
|
|
/* 027715B0 */ _t27 = cpu->r[8] + 0x00000000u;
|
|
/* 027715B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027715B4 */ _t28 = cpu->r[29] + 0x00000008u;
|
|
/* 027715B4 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 027715B8 */ _t29 = cpu->r[28] + 0x00000000u;
|
|
/* 027715B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027715BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000004u);
|
|
/* 027715C0 */ cpu->r[9] = cpu->r[31] + 0x00000250u;
|
|
/* 027715C4 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027715C4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027715C4 */ if (_t31) goto L_027715C8; else goto L_027715D0;
|
|
L_027715C8: ; // 0x27715c8
|
|
/* 027715C8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027715CC */ cpu->r[9] = cpu->r[9] + cpu->r[0];
|
|
L_027715D0: ; // 0x27715d0
|
|
/* 027715D0 */ _t32 = cpu->r[29] + 0x00000000u;
|
|
/* 027715D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027715D4 */ _t33 = cpu->r[9] + 0x00000000u;
|
|
/* 027715D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027715D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 027715DC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027715DC */ _t35 = _t34 & 0x00000001u;
|
|
/* 027715DC */ if (_t35) goto L_027715E0; else goto L_027715F0;
|
|
L_027715E0: ; // 0x27715e0
|
|
/* 027715E0 */ _t36 = cpu->r[29] + 0x00000004u;
|
|
/* 027715E0 */ rbrew_write32(cpu->mem, _t36, cpu->r[30]);
|
|
/* 027715E4 */ _t37 = cpu->r[29] + 0x00000004u;
|
|
/* 027715E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027715E8 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 027715E8 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 027715EC */ goto L_02771600;
|
|
L_027715F0: ; // 0x27715f0
|
|
/* 027715F0 */ cpu->r[0] = 0x00000002u;
|
|
/* 027715F4 */ _t39 = cpu->r[29] + 0x00000004u;
|
|
/* 027715F4 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 027715F8 */ _t40 = cpu->r[29] + 0x00000004u;
|
|
/* 027715F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027715FC */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027715FC */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
L_02771600: ; // 0x2771600
|
|
/* 02771600 */ /* nop */
|
|
/* 02771604 */ _t42 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02771604 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02771608 */ cpu->lr = cpu->r[0];
|
|
/* 0277160C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02771610 */ return;
|
|
}
|
|
|
|
// fn_02771614 @ 0x2771614
|
|
void Gambit_fn_02771614(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_027714F0: ; // 0x27714f0
|
|
/* 027714F0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027714F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027714F0 */ cpu->r[1] = _t0;
|
|
/* 027714F4 */ cpu->r[0] = cpu->lr;
|
|
/* 027714F8 */ /* nop */
|
|
/* 027714FC */ cpu->r[28] = cpu->r[5];
|
|
/* 02771500 */ cpu->r[27] = cpu->r[6];
|
|
/* 02771504 */ cpu->r[30] = 0x00000000u;
|
|
/* 02771508 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02771508 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0277150C */ cpu->r[29] = cpu->r[4];
|
|
/* 0277150C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02771510 */ cpu->r[31] = cpu->r[3];
|
|
/* 02771514 */ cpu->r[3] = cpu->r[29];
|
|
/* 02771518 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771518 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02771518 */ if (_t3) goto L_0277151C; else goto L_0277152C;
|
|
L_0277151C: ; // 0x277151c
|
|
/* 0277151C */ cpu->r[3] = 0x00000010u;
|
|
/* 02771520 */ Gambit_fn_02801A78(cpu);
|
|
/* 02771524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771528 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771528 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02771528 */ if (_t5) goto L_02771548; else goto L_0277152C;
|
|
L_0277152C: ; // 0x277152c
|
|
/* 0277152C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0277152C */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02771530 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02771530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02771534 */ cpu->r[6] = 0x00000001u;
|
|
/* 02771538 */ _t8 = cpu->r[3] + 0x00000008u;
|
|
/* 02771538 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0277153C */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02771540 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02771540 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[6]);
|
|
/* 02771544 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02771544 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
L_02771548: ; // 0x2771548
|
|
/* 02771548 */ _t11 = cpu->r[28] + 0x00000000u;
|
|
/* 02771548 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0277154C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 02771550 */ cpu->r[10] = cpu->r[31] + 0x00000260u;
|
|
/* 02771554 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771554 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02771554 */ if (_t13) goto L_02771558; else goto L_02771560;
|
|
L_02771558: ; // 0x2771558
|
|
/* 02771558 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0277155C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02771560: ; // 0x2771560
|
|
/* 02771560 */ _t14 = cpu->r[10] + 0x00000000u;
|
|
/* 02771560 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02771564 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[9]);
|
|
/* 02771568 */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 02771568 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0277156C */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277156C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0277156C */ if (_t17) goto L_02771570; else goto L_02771578;
|
|
L_02771570: ; // 0x2771570
|
|
/* 02771570 */ cpu->r[0] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02771574 */ cpu->r[11] = cpu->r[11] + cpu->r[0];
|
|
L_02771578: ; // 0x2771578
|
|
/* 02771578 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 02771578 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0277157C */ _t19 = cpu->r[29] + 0x00000000u;
|
|
/* 0277157C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 02771580 */ _t20 = cpu->r[28] + 0x00000000u;
|
|
/* 02771580 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02771584 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 02771588 */ cpu->r[12] = cpu->r[31] + 0x00000278u;
|
|
/* 0277158C */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277158C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0277158C */ if (_t22) goto L_02771590; else goto L_02771598;
|
|
L_02771590: ; // 0x2771590
|
|
/* 02771590 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02771594 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02771598: ; // 0x2771598
|
|
/* 02771598 */ _t23 = cpu->r[12] + 0x00000000u;
|
|
/* 02771598 */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0277159C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[6]);
|
|
/* 027715A0 */ _t24 = cpu->r[12] + 0x00000004u;
|
|
/* 027715A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027715A4 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027715A4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027715A4 */ if (_t26) goto L_027715A8; else goto L_027715B0;
|
|
L_027715A8: ; // 0x27715a8
|
|
/* 027715A8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027715AC */ cpu->r[8] = cpu->r[8] + cpu->r[7];
|
|
L_027715B0: ; // 0x27715b0
|
|
/* 027715B0 */ _t27 = cpu->r[8] + 0x00000000u;
|
|
/* 027715B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027715B4 */ _t28 = cpu->r[29] + 0x00000008u;
|
|
/* 027715B4 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 027715B8 */ _t29 = cpu->r[28] + 0x00000000u;
|
|
/* 027715B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027715BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000004u);
|
|
/* 027715C0 */ cpu->r[9] = cpu->r[31] + 0x00000250u;
|
|
/* 027715C4 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027715C4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027715C4 */ if (_t31) goto L_027715C8; else goto L_027715D0;
|
|
L_027715C8: ; // 0x27715c8
|
|
/* 027715C8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027715CC */ cpu->r[9] = cpu->r[9] + cpu->r[0];
|
|
L_027715D0: ; // 0x27715d0
|
|
/* 027715D0 */ _t32 = cpu->r[29] + 0x00000000u;
|
|
/* 027715D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027715D4 */ _t33 = cpu->r[9] + 0x00000000u;
|
|
/* 027715D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027715D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 027715DC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027715DC */ _t35 = _t34 & 0x00000001u;
|
|
/* 027715DC */ if (_t35) goto L_027715E0; else goto L_027715F0;
|
|
L_027715E0: ; // 0x27715e0
|
|
/* 027715E0 */ _t36 = cpu->r[29] + 0x00000004u;
|
|
/* 027715E0 */ rbrew_write32(cpu->mem, _t36, cpu->r[30]);
|
|
/* 027715E4 */ _t37 = cpu->r[29] + 0x00000004u;
|
|
/* 027715E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027715E8 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 027715E8 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 027715EC */ goto L_02771600;
|
|
L_027715F0: ; // 0x27715f0
|
|
/* 027715F0 */ cpu->r[0] = 0x00000002u;
|
|
/* 027715F4 */ _t39 = cpu->r[29] + 0x00000004u;
|
|
/* 027715F4 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 027715F8 */ _t40 = cpu->r[29] + 0x00000004u;
|
|
/* 027715F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027715FC */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027715FC */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
L_02771600: ; // 0x2771600
|
|
/* 02771600 */ /* nop */
|
|
/* 02771604 */ _t42 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02771604 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02771608 */ cpu->lr = cpu->r[0];
|
|
/* 0277160C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02771610 */ return;
|
|
L_02771614: ; // 0x2771614
|
|
/* 02771614 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 02771618 */ goto L_027714F0;
|
|
}
|
|
|
|
// fn_0277161C @ 0x277161c
|
|
void Gambit_fn_0277161C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0277161C: ; // 0x277161c
|
|
/* 0277161C */ cpu->r[0] = cpu->lr;
|
|
/* 02771620 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771620 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771620 */ cpu->r[1] = _t0;
|
|
/* 02771624 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02771624 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771628 */ cpu->r[31] = cpu->r[4];
|
|
/* 0277162C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02771630 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771630 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02771634 */ Gambit_fn_02175308(cpu);
|
|
/* 02771638 */ cpu->r[4] = cpu->r[31];
|
|
/* 0277163C */ Gambit_fn_021755E8(cpu);
|
|
/* 02771640 */ cpu->r[4] = 0x00000002u;
|
|
/* 02771644 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02771648 */ Gambit_fn_021753A0(cpu);
|
|
/* 0277164C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277164C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02771650 */ cpu->lr = cpu->r[0];
|
|
/* 02771654 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02771654 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771658 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277165C */ return;
|
|
}
|
|
|
|
// fn_02771620 @ 0x2771620
|
|
void Gambit_fn_02771620(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02771620: ; // 0x2771620
|
|
/* 02771620 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771620 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771620 */ cpu->r[1] = _t0;
|
|
/* 02771624 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02771624 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771628 */ cpu->r[31] = cpu->r[4];
|
|
/* 0277162C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02771630 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771630 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02771634 */ Gambit_fn_02175308(cpu);
|
|
/* 02771638 */ cpu->r[4] = cpu->r[31];
|
|
/* 0277163C */ Gambit_fn_021755E8(cpu);
|
|
/* 02771640 */ cpu->r[4] = 0x00000002u;
|
|
/* 02771644 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02771648 */ Gambit_fn_021753A0(cpu);
|
|
/* 0277164C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277164C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02771650 */ cpu->lr = cpu->r[0];
|
|
/* 02771654 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02771654 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771658 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277165C */ return;
|
|
}
|
|
|
|
// fn_02771660 @ 0x2771660
|
|
void Gambit_fn_02771660(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0277161C: ; // 0x277161c
|
|
/* 0277161C */ cpu->r[0] = cpu->lr;
|
|
/* 02771620 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02771620 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771620 */ cpu->r[1] = _t0;
|
|
/* 02771624 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02771624 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771628 */ cpu->r[31] = cpu->r[4];
|
|
/* 0277162C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02771630 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771630 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02771634 */ Gambit_fn_02175308(cpu);
|
|
/* 02771638 */ cpu->r[4] = cpu->r[31];
|
|
/* 0277163C */ Gambit_fn_021755E8(cpu);
|
|
/* 02771640 */ cpu->r[4] = 0x00000002u;
|
|
/* 02771644 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02771648 */ Gambit_fn_021753A0(cpu);
|
|
/* 0277164C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277164C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02771650 */ cpu->lr = cpu->r[0];
|
|
/* 02771654 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02771654 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771658 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0277165C */ return;
|
|
L_02771660: ; // 0x2771660
|
|
/* 02771660 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 02771664 */ goto L_0277161C;
|
|
}
|
|
|
|
// fn_02771668 @ 0x2771668
|
|
void Gambit_fn_02771668(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02771668: ; // 0x2771668
|
|
/* 02771668 */ cpu->r[0] = cpu->lr;
|
|
/* 0277166C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0277166C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0277166C */ cpu->r[1] = _t0;
|
|
/* 02771670 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771670 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771674 */ cpu->r[31] = 0x101C0000u;
|
|
/* 02771678 */ cpu->r[3] = cpu->r[4];
|
|
/* 02771678 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0277167C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0277167C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02771680 */ _t3 = cpu->r[31] + 0x00001358u;
|
|
/* 02771680 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02771684 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771684 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02771684 */ if (_t5) goto L_02771688; else goto L_02771698;
|
|
L_02771688: ; // 0x2771688
|
|
/* 02771688 */ cpu->r[3] = 0x00000004u;
|
|
/* 0277168C */ Gambit_fn_02801A78(cpu);
|
|
/* 02771690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771694 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771694 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02771694 */ if (_t7) goto L_027716A0; else goto L_02771698;
|
|
L_02771698: ; // 0x2771698
|
|
/* 02771698 */ _t8 = cpu->r[31] + 0x00000014u;
|
|
/* 02771698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0277169C */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 0277169C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_027716A0: ; // 0x27716a0
|
|
/* 027716A0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027716A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027716A4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027716A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027716A8 */ cpu->lr = cpu->r[0];
|
|
/* 027716AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027716B0 */ return;
|
|
}
|
|
|
|
// fn_0277166C @ 0x277166c
|
|
void Gambit_fn_0277166C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0277166C: ; // 0x277166c
|
|
/* 0277166C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0277166C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0277166C */ cpu->r[1] = _t0;
|
|
/* 02771670 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771670 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771674 */ cpu->r[31] = 0x101C0000u;
|
|
/* 02771678 */ cpu->r[3] = cpu->r[4];
|
|
/* 02771678 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0277167C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0277167C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02771680 */ _t3 = cpu->r[31] + 0x00001358u;
|
|
/* 02771680 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02771684 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771684 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02771684 */ if (_t5) goto L_02771688; else goto L_02771698;
|
|
L_02771688: ; // 0x2771688
|
|
/* 02771688 */ cpu->r[3] = 0x00000004u;
|
|
/* 0277168C */ Gambit_fn_02801A78(cpu);
|
|
/* 02771690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771694 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771694 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02771694 */ if (_t7) goto L_027716A0; else goto L_02771698;
|
|
L_02771698: ; // 0x2771698
|
|
/* 02771698 */ _t8 = cpu->r[31] + 0x00000014u;
|
|
/* 02771698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0277169C */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 0277169C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_027716A0: ; // 0x27716a0
|
|
/* 027716A0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027716A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027716A4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027716A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027716A8 */ cpu->lr = cpu->r[0];
|
|
/* 027716AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027716B0 */ return;
|
|
}
|
|
|
|
// fn_027716B4 @ 0x27716b4
|
|
void Gambit_fn_027716B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02771668: ; // 0x2771668
|
|
/* 02771668 */ cpu->r[0] = cpu->lr;
|
|
/* 0277166C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0277166C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0277166C */ cpu->r[1] = _t0;
|
|
/* 02771670 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771670 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771674 */ cpu->r[31] = 0x101C0000u;
|
|
/* 02771678 */ cpu->r[3] = cpu->r[4];
|
|
/* 02771678 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0277167C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0277167C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02771680 */ _t3 = cpu->r[31] + 0x00001358u;
|
|
/* 02771680 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02771684 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771684 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02771684 */ if (_t5) goto L_02771688; else goto L_02771698;
|
|
L_02771688: ; // 0x2771688
|
|
/* 02771688 */ cpu->r[3] = 0x00000004u;
|
|
/* 0277168C */ Gambit_fn_02801A78(cpu);
|
|
/* 02771690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771694 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771694 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02771694 */ if (_t7) goto L_027716A0; else goto L_02771698;
|
|
L_02771698: ; // 0x2771698
|
|
/* 02771698 */ _t8 = cpu->r[31] + 0x00000014u;
|
|
/* 02771698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0277169C */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 0277169C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_027716A0: ; // 0x27716a0
|
|
/* 027716A0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027716A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027716A4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027716A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027716A8 */ cpu->lr = cpu->r[0];
|
|
/* 027716AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027716B0 */ return;
|
|
L_027716B4: ; // 0x27716b4
|
|
/* 027716B4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 027716B8 */ goto L_02771668;
|
|
}
|
|
|
|
// fn_027716BC @ 0x27716bc
|
|
void Gambit_fn_027716BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027716BC: ; // 0x27716bc
|
|
/* 027716BC */ cpu->r[3] = cpu->r[4];
|
|
/* 027716C0 */ goto L_027F81A4;
|
|
L_027F81A4: ; // 0x27f81a4
|
|
/* 027F81A4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F81A8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F81A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F81A8 */ cpu->r[1] = _t0;
|
|
/* 027F81AC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F81AC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F81B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F81B4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F81B8 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027F81B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F81BC */ Gambit_fn_021734AC(cpu);
|
|
/* 027F81C0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F81C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F81C8 */ Gambit_fn_021735AC(cpu);
|
|
/* 027F81CC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F81D0 */ Gambit_fn_02173560(cpu);
|
|
/* 027F81D4 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F81D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F81DC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027F81E0 */ Gambit_fn_027F7FD0(cpu);
|
|
/* 027F81E4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F81E8 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F81EC */ Gambit_fn_0217354C(cpu);
|
|
/* 027F81F0 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 027F81F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F81F4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F81F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F81F8 */ cpu->lr = cpu->r[0];
|
|
/* 027F81FC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F8200 */ return;
|
|
}
|
|
|
|
// fn_027716C4 @ 0x27716c4
|
|
void Gambit_fn_027716C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027716BC: ; // 0x27716bc
|
|
/* 027716BC */ cpu->r[3] = cpu->r[4];
|
|
/* 027716C0 */ goto L_027F81A4;
|
|
L_027716C4: ; // 0x27716c4
|
|
/* 027716C4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 027716C8 */ goto L_027716BC;
|
|
L_027F81A4: ; // 0x27f81a4
|
|
/* 027F81A4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F81A8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F81A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F81A8 */ cpu->r[1] = _t0;
|
|
/* 027F81AC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F81AC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F81B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F81B4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F81B8 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027F81B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F81BC */ Gambit_fn_021734AC(cpu);
|
|
/* 027F81C0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F81C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F81C8 */ Gambit_fn_021735AC(cpu);
|
|
/* 027F81CC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F81D0 */ Gambit_fn_02173560(cpu);
|
|
/* 027F81D4 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F81D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F81DC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027F81E0 */ Gambit_fn_027F7FD0(cpu);
|
|
/* 027F81E4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F81E8 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F81EC */ Gambit_fn_0217354C(cpu);
|
|
/* 027F81F0 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 027F81F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F81F4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F81F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F81F8 */ cpu->lr = cpu->r[0];
|
|
/* 027F81FC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F8200 */ return;
|
|
}
|
|
|
|
// fn_027716CC @ 0x27716cc
|
|
void Gambit_fn_027716CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027716CC: ; // 0x27716cc
|
|
/* 027716CC */ cpu->r[0] = cpu->lr;
|
|
/* 027716D0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027716D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027716D0 */ cpu->r[1] = _t0;
|
|
/* 027716D4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027716D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027716D8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027716DC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027716DC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027716E0 */ Gambit_fn_021734AC(cpu);
|
|
/* 027716E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027716E8 */ Gambit_fn_02173560(cpu);
|
|
/* 027716EC */ cpu->r[31] = cpu->r[3];
|
|
/* 027716F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027716F4 */ cpu->r[4] = 0x00000002u;
|
|
/* 027716F8 */ Gambit_fn_0217354C(cpu);
|
|
/* 027716FC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027716FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02771700 */ cpu->r[3] = cpu->r[31];
|
|
/* 02771704 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02771704 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771708 */ cpu->lr = cpu->r[0];
|
|
/* 0277170C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02771710 */ return;
|
|
}
|
|
|
|
// fn_027716D0 @ 0x27716d0
|
|
void Gambit_fn_027716D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027716D0: ; // 0x27716d0
|
|
/* 027716D0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027716D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027716D0 */ cpu->r[1] = _t0;
|
|
/* 027716D4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027716D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027716D8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027716DC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027716DC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027716E0 */ Gambit_fn_021734AC(cpu);
|
|
/* 027716E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027716E8 */ Gambit_fn_02173560(cpu);
|
|
/* 027716EC */ cpu->r[31] = cpu->r[3];
|
|
/* 027716F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027716F4 */ cpu->r[4] = 0x00000002u;
|
|
/* 027716F8 */ Gambit_fn_0217354C(cpu);
|
|
/* 027716FC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027716FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02771700 */ cpu->r[3] = cpu->r[31];
|
|
/* 02771704 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02771704 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771708 */ cpu->lr = cpu->r[0];
|
|
/* 0277170C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02771710 */ return;
|
|
}
|
|
|
|
// fn_02771714 @ 0x2771714
|
|
void Gambit_fn_02771714(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027716CC: ; // 0x27716cc
|
|
/* 027716CC */ cpu->r[0] = cpu->lr;
|
|
/* 027716D0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027716D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027716D0 */ cpu->r[1] = _t0;
|
|
/* 027716D4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027716D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027716D8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027716DC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027716DC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027716E0 */ Gambit_fn_021734AC(cpu);
|
|
/* 027716E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027716E8 */ Gambit_fn_02173560(cpu);
|
|
/* 027716EC */ cpu->r[31] = cpu->r[3];
|
|
/* 027716F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027716F4 */ cpu->r[4] = 0x00000002u;
|
|
/* 027716F8 */ Gambit_fn_0217354C(cpu);
|
|
/* 027716FC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027716FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02771700 */ cpu->r[3] = cpu->r[31];
|
|
/* 02771704 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02771704 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02771708 */ cpu->lr = cpu->r[0];
|
|
/* 0277170C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02771710 */ return;
|
|
L_02771714: ; // 0x2771714
|
|
/* 02771714 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 02771718 */ goto L_027716CC;
|
|
}
|
|
|
|
// fn_0277171C @ 0x277171c
|
|
void Gambit_fn_0277171C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0277171C: ; // 0x277171c
|
|
/* 0277171C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 02771720 */ goto L_02773ECC;
|
|
L_02773ECC: ; // 0x2773ecc
|
|
/* 02773ECC */ _t0 = cpu->r[3] + 0x000002A0u;
|
|
/* 02773ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773ED0 */ return;
|
|
}
|
|
|
|
// fn_02771724 @ 0x2771724
|
|
void Gambit_fn_02771724(CPUState* cpu) {
|
|
L_02771724: ; // 0x2771724
|
|
/* 02771724 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 02771728 */ goto L_02773ED4;
|
|
L_02773ED4: ; // 0x2773ed4
|
|
/* 02773ED4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02773ED8 */ return;
|
|
}
|
|
|
|
// fn_0277172C @ 0x277172c
|
|
void Gambit_fn_0277172C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0277172C: ; // 0x277172c
|
|
/* 0277172C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02771730 */ _t0 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 02771730 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02771734 */ _t1 = cpu->r[12] + 0x00000248u;
|
|
/* 02771734 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02771738 */ return;
|
|
}
|
|
|
|
// fn_0277173C @ 0x277173c
|
|
void Gambit_fn_0277173C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0277172C: ; // 0x277172c
|
|
/* 0277172C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02771730 */ _t0 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 02771730 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02771734 */ _t1 = cpu->r[12] + 0x00000248u;
|
|
/* 02771734 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02771738 */ return;
|
|
L_0277173C: ; // 0x277173c
|
|
/* 0277173C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE34u;
|
|
/* 02771740 */ goto L_0277172C;
|
|
}
|
|
|
|
// fn_02771744 @ 0x2771744
|
|
void Gambit_fn_02771744(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02771744: ; // 0x2771744
|
|
/* 02771744 */ cpu->r[0] = cpu->lr;
|
|
/* 02771748 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02771748 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771748 */ cpu->r[1] = _t0;
|
|
/* 0277174C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277174C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771750 */ cpu->r[31] = cpu->r[3];
|
|
/* 02771754 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771758 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02771758 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0277175C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0277175C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771760 */ Gambit_fn_02175308(cpu);
|
|
/* 02771764 */ cpu->r[0] = 0x00000000u;
|
|
/* 02771768 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277176C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771770 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02771770 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02771774 */ Gambit_fn_021753B4(cpu);
|
|
/* 02771778 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02771778 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0277177C */ cpu->r[0] = 0x00000001u;
|
|
/* 02771780 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771784 */ _t6 = cpu->r[31] + 0x00000250u;
|
|
/* 02771784 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02771788 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0277178C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0277178C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02771790 */ Gambit_fn_021753B4(cpu);
|
|
/* 02771794 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 02771794 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02771798 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277179C */ cpu->r[30] = 0x00000002u;
|
|
/* 027717A0 */ _t9 = cpu->r[31] + 0x00000254u;
|
|
/* 027717A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027717A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027717A8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 027717A8 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 027717AC */ Gambit_fn_021753B4(cpu);
|
|
/* 027717B0 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 027717B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027717B4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027717B8 */ _t12 = cpu->r[31] + 0x00000258u;
|
|
/* 027717B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027717BC */ Gambit_fn_02175514(cpu);
|
|
/* 027717C0 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 027717C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027717C4 */ cpu->r[4] = cpu->r[30];
|
|
/* 027717C8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027717CC */ _t14 = cpu->r[31] + 0x0000025Cu;
|
|
/* 027717CC */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 027717D0 */ Gambit_fn_021753A0(cpu);
|
|
/* 027717D4 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 027717D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027717D8 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027717D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027717DC */ cpu->lr = cpu->r[0];
|
|
/* 027717E0 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 027717E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027717E4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027717E8 */ return;
|
|
}
|
|
|
|
// fn_02771748 @ 0x2771748
|
|
void Gambit_fn_02771748(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02771748: ; // 0x2771748
|
|
/* 02771748 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02771748 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02771748 */ cpu->r[1] = _t0;
|
|
/* 0277174C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277174C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02771750 */ cpu->r[31] = cpu->r[3];
|
|
/* 02771754 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771758 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02771758 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0277175C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0277175C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02771760 */ Gambit_fn_02175308(cpu);
|
|
/* 02771764 */ cpu->r[0] = 0x00000000u;
|
|
/* 02771768 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277176C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02771770 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02771770 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02771774 */ Gambit_fn_021753B4(cpu);
|
|
/* 02771778 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02771778 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0277177C */ cpu->r[0] = 0x00000001u;
|
|
/* 02771780 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771784 */ _t6 = cpu->r[31] + 0x00000250u;
|
|
/* 02771784 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02771788 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0277178C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0277178C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02771790 */ Gambit_fn_021753B4(cpu);
|
|
/* 02771794 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 02771794 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02771798 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277179C */ cpu->r[30] = 0x00000002u;
|
|
/* 027717A0 */ _t9 = cpu->r[31] + 0x00000254u;
|
|
/* 027717A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027717A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027717A8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 027717A8 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 027717AC */ Gambit_fn_021753B4(cpu);
|
|
/* 027717B0 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 027717B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027717B4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027717B8 */ _t12 = cpu->r[31] + 0x00000258u;
|
|
/* 027717B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027717BC */ Gambit_fn_02175514(cpu);
|
|
/* 027717C0 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 027717C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027717C4 */ cpu->r[4] = cpu->r[30];
|
|
/* 027717C8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027717CC */ _t14 = cpu->r[31] + 0x0000025Cu;
|
|
/* 027717CC */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 027717D0 */ Gambit_fn_021753A0(cpu);
|
|
/* 027717D4 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 027717D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027717D8 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027717D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027717DC */ cpu->lr = cpu->r[0];
|
|
/* 027717E0 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 027717E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027717E4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027717E8 */ return;
|
|
}
|
|
|
|
// fn_027717F0 @ 0x27717f0
|
|
void Gambit_fn_027717F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418;
|
|
|
|
L_027717F0: ; // 0x27717f0
|
|
/* 027717F0 */ _t0 = cpu->r[1] + 0xFFFFFEF0u;
|
|
/* 027717F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027717F0 */ cpu->r[1] = _t0;
|
|
/* 027717F4 */ _t1 = cpu->r[1] + 0x00000114u;
|
|
/* 027717F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027717F8 */ /* nop */
|
|
/* 027717FC */ cpu->r[14] = cpu->r[3];
|
|
/* 027717FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[14], 0x00000000u);
|
|
/* 02771800 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771800 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02771800 */ if (_t3) goto L_02771804; else goto L_02771814;
|
|
L_02771804: ; // 0x2771804
|
|
/* 02771804 */ cpu->r[3] = 0x000002A4u;
|
|
/* 02771808 */ Gambit_fn_02801A78(cpu);
|
|
/* 0277180C */ cpu->r[14] = cpu->r[3];
|
|
/* 0277180C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[14], 0x00000000u);
|
|
/* 02771810 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771810 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02771810 */ if (_t5) goto L_027723EC; else goto L_02771814;
|
|
L_02771814: ; // 0x2771814
|
|
/* 02771814 */ cpu->r[3] = cpu->r[14];
|
|
/* 02771818 */ Gambit_fn_02001FA8(cpu);
|
|
/* 0277181C */ cpu->r[11] = 0x10100000u;
|
|
/* 02771820 */ cpu->r[0] = 0x10100000u;
|
|
/* 02771824 */ cpu->r[11] = cpu->r[11] + 0x00001F60u;
|
|
/* 02771828 */ cpu->r[0] = cpu->r[0] + 0x000021B0u;
|
|
/* 0277182C */ _t6 = cpu->r[14] + 0x00000004u;
|
|
/* 0277182C */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02771830 */ cpu->r[31] = cpu->r[14] + 0x000001D0u;
|
|
/* 02771830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02771834 */ _t7 = cpu->r[14] + 0x000001CCu;
|
|
/* 02771834 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02771838 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771838 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02771838 */ if (_t9) goto L_0277183C; else goto L_0277184C;
|
|
L_0277183C: ; // 0x277183c
|
|
/* 0277183C */ cpu->r[3] = 0x00000038u;
|
|
/* 02771840 */ Gambit_fn_02801A78(cpu);
|
|
/* 02771844 */ cpu->r[31] = cpu->r[3];
|
|
/* 02771844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02771848 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771848 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02771848 */ if (_t11) goto L_02771880; else goto L_0277184C;
|
|
L_0277184C: ; // 0x277184c
|
|
/* 0277184C */ cpu->r[3] = cpu->r[31];
|
|
/* 02771850 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02771854 */ cpu->r[0] = 0x00000000u;
|
|
/* 02771858 */ cpu->r[6] = 0x10000000u;
|
|
/* 0277185C */ _t12 = cpu->r[31] + 0x00000020u;
|
|
/* 0277185C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02771860 */ cpu->r[6] = cpu->r[6] + 0x00007058u;
|
|
/* 02771864 */ _t13 = cpu->r[31] + 0x00000034u;
|
|
/* 02771864 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02771868 */ _t14 = cpu->r[31] + 0x00000004u;
|
|
/* 02771868 */ rbrew_write32(cpu->mem, _t14, cpu->r[6]);
|
|
/* 0277186C */ _t15 = cpu->r[31] + 0x00000024u;
|
|
/* 0277186C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02771870 */ _t16 = cpu->r[31] + 0x00000030u;
|
|
/* 02771870 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02771874 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02771874 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02771878 */ _t18 = cpu->r[31] + 0x00000028u;
|
|
/* 02771878 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0277187C */ _t19 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0277187C */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_02771880: ; // 0x2771880
|
|
/* 02771880 */ cpu->r[6] = 0x00000000u;
|
|
/* 02771884 */ cpu->r[8] = 0x00000004u;
|
|
/* 02771888 */ _t20 = cpu->r[14] + 0x00000208u;
|
|
/* 02771888 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 0277188C */ cpu->r[12] = 0x10100000u;
|
|
/* 02771890 */ _t21 = cpu->r[14] + 0x00000218u;
|
|
/* 02771890 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 02771894 */ cpu->r[7] = 0x00000003u;
|
|
/* 02771898 */ _t22 = cpu->r[12] + 0x00001CF4u;
|
|
/* 02771898 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0277189C */ _t23 = cpu->r[14] + 0x00000214u;
|
|
/* 0277189C */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 027718A0 */ _t24 = cpu->r[14] + 0x0000020Cu;
|
|
/* 027718A0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 027718A4 */ _t25 = cpu->r[14] + 0x0000021Cu;
|
|
/* 027718A4 */ rbrew_write32(cpu->mem, _t25, cpu->r[6]);
|
|
/* 027718A8 */ cpu->r[3] = cpu->r[14] + 0x00000220u;
|
|
/* 027718A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027718AC */ _t26 = cpu->r[14] + 0x00000210u;
|
|
/* 027718AC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 027718B0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027718B0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027718B0 */ if (_t28) goto L_027718B4; else goto L_027718C4;
|
|
L_027718B4: ; // 0x27718b4
|
|
/* 027718B4 */ cpu->r[3] = 0x00000008u;
|
|
/* 027718B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 027718BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027718C0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027718C0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027718C0 */ if (_t30) goto L_027718D0; else goto L_027718C4;
|
|
L_027718C4: ; // 0x27718c4
|
|
/* 027718C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 027718C8 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 027718C8 */ rbrew_write32(cpu->mem, _t31, cpu->r[4]);
|
|
/* 027718CC */ _t32 = cpu->r[3] + 0x00000004u;
|
|
/* 027718CC */ rbrew_write32(cpu->mem, _t32, cpu->r[4]);
|
|
L_027718D0: ; // 0x27718d0
|
|
/* 027718D0 */ cpu->r[6] = 0x02770000u;
|
|
/* 027718D4 */ cpu->r[17] = cpu->r[14] + 0x00000228u;
|
|
/* 027718D8 */ cpu->r[4] = 0x00000003u;
|
|
/* 027718DC */ cpu->r[6] = cpu->r[6] + 0x000040ACu;
|
|
/* 027718E0 */ cpu->r[3] = cpu->r[17];
|
|
/* 027718E4 */ cpu->r[5] = 0x00000008u;
|
|
/* 027718E8 */ Gambit_fn_02C82E00(cpu);
|
|
/* 027718EC */ cpu->r[6] = 0x02770000u;
|
|
/* 027718F0 */ cpu->r[28] = cpu->r[14] + 0x00000260u;
|
|
/* 027718F4 */ cpu->r[4] = 0x00000003u;
|
|
/* 027718F8 */ cpu->r[6] = cpu->r[6] + 0x00003F38u;
|
|
/* 027718FC */ cpu->r[3] = cpu->r[28];
|
|
/* 02771900 */ cpu->r[5] = 0x00000008u;
|
|
/* 02771904 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02771908 */ cpu->r[6] = 0x02770000u;
|
|
/* 0277190C */ cpu->r[31] = cpu->r[14] + 0x00000278u;
|
|
/* 02771910 */ cpu->r[4] = 0x00000003u;
|
|
/* 02771914 */ cpu->r[5] = 0x00000008u;
|
|
/* 02771918 */ cpu->r[3] = cpu->r[31];
|
|
/* 0277191C */ cpu->r[6] = cpu->r[6] + 0x00004300u;
|
|
/* 02771920 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02771924 */ cpu->r[9] = 0x00000000u;
|
|
/* 02771928 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0277192C */ _t33 = cpu->r[14] + 0x000002A0u;
|
|
/* 0277192C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 02771930 */ cpu->r[11] = cpu->r[17];
|
|
/* 02771934 */ _t34 = cpu->r[14] + 0x0000029Cu;
|
|
/* 02771934 */ rbrew_write32(cpu->mem, _t34, cpu->r[10]);
|
|
/* 02771938 */ goto L_02771944;
|
|
L_0277193C: ; // 0x277193c
|
|
/* 0277193C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 02771940 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771940 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02771940 */ if (_t36) goto L_02771944; else goto L_0277194C;
|
|
L_02771944: ; // 0x2771944
|
|
/* 02771944 */ cpu->r[4] = cpu->r[11];
|
|
/* 02771948 */ goto L_02771950;
|
|
L_0277194C: ; // 0x277194c
|
|
/* 0277194C */ cpu->r[4] = cpu->r[17];
|
|
L_02771950: ; // 0x2771950
|
|
/* 02771950 */ _t37 = cpu->r[4] + 0x00000000u;
|
|
/* 02771950 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02771954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02771958 */ cpu->r[7] = 0x00000000u;
|
|
/* 0277195C */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0277195C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0277195C */ if (_t39) goto L_02771960; else goto L_02771978;
|
|
L_02771960: ; // 0x2771960
|
|
/* 02771960 */ cpu->ctr = cpu->r[6];
|
|
/* 02771964 */ cpu->r[0] = 0x00000000u;
|
|
L_02771968: ; // 0x2771968
|
|
/* 02771968 */ _t40 = cpu->r[4] + 0x00000004u;
|
|
/* 02771968 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0277196C */ _t41 = cpu->r[12] + cpu->r[7];
|
|
/* 0277196C */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[0]);
|
|
/* 02771970 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02771974 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02771974 */ _t42 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02771974 */ _t43 = _t42 >> (0x00000002u & 31u);
|
|
/* 02771974 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02771974 */ if (_t44) goto L_02771968; else goto L_02771978;
|
|
L_02771978: ; // 0x2771978
|
|
/* 02771978 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0277197C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u);
|
|
/* 02771980 */ cpu->r[11] = cpu->r[11] + 0x00000008u;
|
|
/* 02771984 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771984 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02771984 */ if (_t46) goto L_0277193C; else goto L_02771988;
|
|
L_02771988: ; // 0x2771988
|
|
/* 02771988 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0277198C */ _t47 = cpu->r[29] + 0x00001344u;
|
|
/* 0277198C */ cpu->r[4] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02771990 */ cpu->r[3] = cpu->r[14];
|
|
/* 02771994 */ _t48 = cpu->r[4] + 0x00000014u;
|
|
/* 02771994 */ cpu->r[25] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02771998 */ Gambit_fn_02771744(cpu);
|
|
/* 0277199C */ _t49 = cpu->r[29] + 0x00001344u;
|
|
/* 0277199C */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0277199C */ cpu->r[29] = _t49;
|
|
/* 027719A0 */ _t50 = cpu->r[5] + 0x00000020u;
|
|
/* 027719A0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027719A4 */ cpu->r[30] = cpu->r[14] + 0x00000250u;
|
|
/* 027719A8 */ _t51 = cpu->r[14] + 0x0000025Cu;
|
|
/* 027719A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027719AC */ cpu->r[3] = cpu->r[26];
|
|
/* 027719B0 */ cpu->r[27] = cpu->r[14] + 0x0000025Cu;
|
|
/* 027719B4 */ Gambit_fn_0202457C(cpu);
|
|
/* 027719B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027719BC */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027719BC */ _t53 = _t52 & 0x00000001u;
|
|
/* 027719BC */ if (_t53) goto L_027719C0; else goto L_027719D4;
|
|
L_027719C0: ; // 0x27719c0
|
|
/* 027719C0 */ cpu->r[3] = cpu->r[26];
|
|
/* 027719C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 027719C8 */ Gambit_fn_0202461C(cpu);
|
|
/* 027719CC */ _t54 = cpu->r[3] + 0x00000000u;
|
|
/* 027719CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027719D0 */ _t55 = cpu->r[27] + 0x00000000u;
|
|
/* 027719D0 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
L_027719D4: ; // 0x27719d4
|
|
/* 027719D4 */ _t56 = cpu->r[29] + 0x00000000u;
|
|
/* 027719D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027719D8 */ cpu->r[29] = cpu->r[1] + 0x00000078u;
|
|
/* 027719DC */ cpu->r[23] = 0x00000000u;
|
|
/* 027719E0 */ cpu->r[26] = 0x00000003u;
|
|
/* 027719E4 */ _t57 = cpu->r[8] + 0x00000014u;
|
|
/* 027719E4 */ cpu->r[22] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027719E8 */ cpu->r[27] = cpu->r[23];
|
|
L_027719EC: ; // 0x27719ec
|
|
/* 027719EC */ _t58 = cpu->r[1] + 0x00000078u;
|
|
/* 027719EC */ rbrew_write32(cpu->mem, _t58, cpu->r[23]);
|
|
/* 027719F0 */ _t59 = cpu->r[29] + 0x00000000u;
|
|
/* 027719F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t59);
|
|
/* 027719F4 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 027719F8 */ _t60 = cpu->r[1] + 0x00000050u;
|
|
/* 027719F8 */ rbrew_write32(cpu->mem, _t60, cpu->r[9]);
|
|
/* 027719FC */ _t61 = cpu->r[30] + cpu->r[27];
|
|
/* 027719FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02771A00 */ cpu->r[3] = cpu->r[22];
|
|
/* 02771A04 */ Gambit_fn_0201D9E4(cpu);
|
|
/* 02771A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771A0C */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771A0C */ _t63 = _t62 & 0x00000001u;
|
|
/* 02771A0C */ if (_t63) goto L_02771A10; else goto L_02771A30;
|
|
L_02771A10: ; // 0x2771a10
|
|
/* 02771A10 */ _t64 = cpu->r[29] + 0x00000000u;
|
|
/* 02771A10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02771A14 */ cpu->r[3] = cpu->r[22];
|
|
/* 02771A18 */ cpu->r[4] = cpu->r[1] + 0x00000054u;
|
|
/* 02771A1C */ cpu->r[5] = 0x00000000u;
|
|
/* 02771A20 */ _t65 = cpu->r[1] + 0x00000054u;
|
|
/* 02771A20 */ rbrew_write32(cpu->mem, _t65, cpu->r[11]);
|
|
/* 02771A24 */ Gambit_fn_0201DAF4(cpu);
|
|
/* 02771A28 */ _t66 = cpu->r[3] + 0x00000000u;
|
|
/* 02771A28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02771A2C */ _t67 = cpu->r[30] + cpu->r[27];
|
|
/* 02771A2C */ rbrew_write32(cpu->mem, _t67, cpu->r[12]);
|
|
L_02771A30: ; // 0x2771a30
|
|
/* 02771A30 */ cpu->r[26] = cpu->r[26] + 0xFFFFFFFFu;
|
|
/* 02771A30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02771A34 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02771A38 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02771A3C */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771A3C */ _t69 = _t68 & 0x00000001u;
|
|
/* 02771A3C */ if (_t69) goto L_02771A40; else goto L_027719EC;
|
|
L_02771A40: ; // 0x2771a40
|
|
/* 02771A40 */ cpu->r[4] = 0x00000000u;
|
|
/* 02771A44 */ cpu->r[7] = cpu->r[14] + 0x00000240u;
|
|
/* 02771A48 */ cpu->r[12] = cpu->r[4];
|
|
L_02771A4C: ; // 0x2771a4c
|
|
/* 02771A4C */ cpu->r[8] = cpu->r[12];
|
|
/* 02771A50 */ cpu->r[6] = cpu->r[7] + cpu->r[12];
|
|
L_02771A54: ; // 0x2771a54
|
|
/* 02771A54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000004u);
|
|
/* 02771A58 */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771A58 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02771A58 */ if (_t71) goto L_02771A5C; else goto L_02771A88;
|
|
L_02771A5C: ; // 0x2771a5c
|
|
/* 02771A5C */ _t72 = cpu->r[30] + cpu->r[8];
|
|
/* 02771A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02771A60 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02771A64 */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 02771A68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000004u);
|
|
/* 02771A6C */ _t73 = cpu->r[6] + 0x00000000u;
|
|
/* 02771A6C */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 02771A70 */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
/* 02771A74 */ _t74 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771A74 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02771A74 */ if (_t75) goto L_02771A78; else goto L_02771AA4;
|
|
L_02771A78: ; // 0x2771a78
|
|
/* 02771A78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000004u);
|
|
/* 02771A7C */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771A7C */ _t77 = _t76 & 0x00000001u;
|
|
/* 02771A7C */ if (_t77) goto L_02771A4C; else goto L_02771A80;
|
|
L_02771A80: ; // 0x2771a80
|
|
/* 02771A80 */ cpu->r[6] = cpu->r[7];
|
|
/* 02771A84 */ goto L_02771A54;
|
|
L_02771A88: ; // 0x2771a88
|
|
/* 02771A88 */ _t78 = cpu->r[30] + 0x00000000u;
|
|
/* 02771A88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02771A8C */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02771A90 */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 02771A94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000004u);
|
|
/* 02771A98 */ _t79 = cpu->r[6] + 0x00000000u;
|
|
/* 02771A98 */ rbrew_write32(cpu->mem, _t79, cpu->r[0]);
|
|
/* 02771A9C */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
/* 02771AA0 */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771AA0 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02771AA0 */ if (_t81) goto L_02771A78; else goto L_02771AA4;
|
|
L_02771AA4: ; // 0x2771aa4
|
|
/* 02771AA4 */ cpu->r[4] = cpu->r[1] + 0x0000007Cu;
|
|
/* 02771AA8 */ cpu->r[3] = cpu->r[25];
|
|
/* 02771AAC */ Gambit_fn_0201DFA0(cpu);
|
|
/* 02771AB0 */ cpu->r[12] = 0x00000003u;
|
|
/* 02771AB4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02771AB8 */ _t82 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02771AB8 */ rbrew_write32(cpu->mem, _t82, cpu->r[12]);
|
|
/* 02771ABC */ cpu->r[11] = cpu->r[11] + 0xFFFF98F0u;
|
|
/* 02771AC0 */ cpu->r[5] = 0x101D0000u;
|
|
/* 02771AC4 */ cpu->r[23] = 0x00000000u;
|
|
/* 02771AC8 */ _t83 = cpu->r[1] + 0x00000020u;
|
|
/* 02771AC8 */ rbrew_write32(cpu->mem, _t83, cpu->r[11]);
|
|
/* 02771ACC */ cpu->r[9] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02771AD0 */ _t84 = cpu->r[1] + 0x00000018u;
|
|
/* 02771AD0 */ rbrew_write32(cpu->mem, _t84, cpu->r[23]);
|
|
/* 02771AD4 */ cpu->r[5] = cpu->r[5] + 0xFFFF9884u;
|
|
/* 02771AD8 */ cpu->r[0] = 0x101D0000u;
|
|
/* 02771ADC */ _t85 = cpu->r[1] + 0x00000010u;
|
|
/* 02771ADC */ rbrew_write32(cpu->mem, _t85, cpu->r[9]);
|
|
/* 02771AE0 */ cpu->r[0] = cpu->r[0] + 0xFFFF8FC4u;
|
|
/* 02771AE4 */ _t86 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771AE4 */ rbrew_write32(cpu->mem, _t86, cpu->r[5]);
|
|
/* 02771AE8 */ cpu->r[21] = 0x00000000u;
|
|
/* 02771AEC */ cpu->r[16] = 0x10100000u;
|
|
/* 02771AF0 */ _t87 = cpu->r[1] + 0x00000008u;
|
|
/* 02771AF0 */ rbrew_write32(cpu->mem, _t87, cpu->r[0]);
|
|
/* 02771AF4 */ cpu->r[19] = cpu->r[1] + 0x0000007Cu;
|
|
/* 02771AF8 */ cpu->r[16] = cpu->r[16] + 0x00001C14u;
|
|
/* 02771AFC */ _t88 = cpu->r[1] + 0x00000014u;
|
|
/* 02771AFC */ rbrew_write32(cpu->mem, _t88, cpu->r[21]);
|
|
/* 02771B00 */ cpu->r[29] = cpu->r[14] + 0x00000290u;
|
|
L_02771B04: ; // 0x2771b04
|
|
/* 02771B04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771B08 */ _t89 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02771B08 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 02771B0C */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771B0C */ _t91 = _t90 & 0x00000001u;
|
|
/* 02771B0C */ if (_t91) goto L_02771B10; else goto L_02771B28;
|
|
L_02771B10: ; // 0x2771b10
|
|
/* 02771B10 */ _t92 = cpu->r[1] + 0x00000014u;
|
|
/* 02771B10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02771B14 */ cpu->r[11] = 0x00000007u;
|
|
/* 02771B18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771B1C */ _t93 = cpu->r[29] + cpu->r[0];
|
|
/* 02771B1C */ rbrew_write32(cpu->mem, _t93, cpu->r[11]);
|
|
/* 02771B20 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771B20 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02771B20 */ if (_t95) goto L_02771B38; else goto L_02771B24;
|
|
L_02771B24: ; // 0x2771b24
|
|
/* 02771B24 */ goto L_02771B48;
|
|
L_02771B28: ; // 0x2771b28
|
|
/* 02771B28 */ cpu->r[11] = 0x00000007u;
|
|
/* 02771B2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771B30 */ _t96 = cpu->r[29] + 0x00000000u;
|
|
/* 02771B30 */ rbrew_write32(cpu->mem, _t96, cpu->r[11]);
|
|
/* 02771B34 */ _t97 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771B34 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02771B34 */ if (_t98) goto L_02771B38; else goto L_02771B48;
|
|
L_02771B38: ; // 0x2771b38
|
|
/* 02771B38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771B3C */ cpu->r[26] = cpu->r[28] + cpu->r[21];
|
|
/* 02771B40 */ _t99 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771B40 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02771B40 */ if (_t100) goto L_02771B54; else goto L_02771B44;
|
|
L_02771B44: ; // 0x2771b44
|
|
/* 02771B44 */ goto L_02771B68;
|
|
L_02771B48: ; // 0x2771b48
|
|
/* 02771B48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771B4C */ cpu->r[26] = cpu->r[28];
|
|
/* 02771B50 */ _t101 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771B50 */ _t102 = _t101 & 0x00000001u;
|
|
/* 02771B50 */ if (_t102) goto L_02771B54; else goto L_02771B68;
|
|
L_02771B54: ; // 0x2771b54
|
|
/* 02771B54 */ _t103 = cpu->r[1] + 0x00000014u;
|
|
/* 02771B54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02771B58 */ _t104 = cpu->r[29] + cpu->r[10];
|
|
/* 02771B58 */ cpu->r[27] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02771B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02771B60 */ _t105 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02771B60 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02771B60 */ if (_t106) goto L_02771B64; else goto L_02771BB8;
|
|
L_02771B64: ; // 0x2771b64
|
|
/* 02771B64 */ goto L_02771B74;
|
|
L_02771B68: ; // 0x2771b68
|
|
/* 02771B68 */ _t107 = cpu->r[29] + 0x00000000u;
|
|
/* 02771B68 */ cpu->r[27] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02771B6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02771B70 */ _t108 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02771B70 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02771B70 */ if (_t109) goto L_02771B74; else goto L_02771BB8;
|
|
L_02771B74: ; // 0x2771b74
|
|
/* 02771B74 */ _t110 = cpu->r[1] + 0x00000020u;
|
|
/* 02771B74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02771B78 */ _t111 = cpu->r[7] + 0x00000000u;
|
|
/* 02771B78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02771B7C */ Gambit_fn_02826F20(cpu);
|
|
/* 02771B80 */ _t112 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02771B80 */ cpu->r[5] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02771B84 */ _t113 = cpu->r[5] + 0x00000034u;
|
|
/* 02771B84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02771B88 */ cpu->ctr = cpu->r[0];
|
|
/* 02771B8C */ cpu->r[5] = 0x00000004u;
|
|
/* 02771B90 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02771B94 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02771B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02771B9C */ cpu->r[0] = cpu->r[27];
|
|
/* 02771BA0 */ _t114 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02771BA0 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02771BA0 */ if (_t115) goto L_02771BA8; else goto L_02771BA4;
|
|
L_02771BA4: ; // 0x2771ba4
|
|
/* 02771BA4 */ cpu->r[0] = 0x00000001u;
|
|
L_02771BA8: ; // 0x2771ba8
|
|
/* 02771BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771BAC */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771BAC */ _t117 = _t116 & 0x00000001u;
|
|
/* 02771BAC */ if (_t117) goto L_02771BB8; else goto L_02771BB0;
|
|
L_02771BB0: ; // 0x2771bb0
|
|
/* 02771BB0 */ _t118 = cpu->r[26] + 0x00000004u;
|
|
/* 02771BB0 */ rbrew_write32(cpu->mem, _t118, cpu->r[3]);
|
|
/* 02771BB4 */ _t119 = cpu->r[26] + 0x00000000u;
|
|
/* 02771BB4 */ rbrew_write32(cpu->mem, _t119, cpu->r[27]);
|
|
L_02771BB8: ; // 0x2771bb8
|
|
/* 02771BB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771BBC */ _t120 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771BBC */ _t121 = _t120 & 0x00000001u;
|
|
/* 02771BBC */ if (_t121) goto L_02771BC0; else goto L_02771BD0;
|
|
L_02771BC0: ; // 0x2771bc0
|
|
/* 02771BC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771BC4 */ cpu->r[26] = cpu->r[17] + cpu->r[21];
|
|
/* 02771BC8 */ _t122 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771BC8 */ _t123 = _t122 & 0x00000001u;
|
|
/* 02771BC8 */ if (_t123) goto L_02771BDC; else goto L_02771BCC;
|
|
L_02771BCC: ; // 0x2771bcc
|
|
/* 02771BCC */ goto L_02771BF0;
|
|
L_02771BD0: ; // 0x2771bd0
|
|
/* 02771BD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771BD4 */ cpu->r[26] = cpu->r[17];
|
|
/* 02771BD8 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771BD8 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02771BD8 */ if (_t125) goto L_02771BDC; else goto L_02771BF0;
|
|
L_02771BDC: ; // 0x2771bdc
|
|
/* 02771BDC */ _t126 = cpu->r[1] + 0x00000014u;
|
|
/* 02771BDC */ cpu->r[6] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02771BE0 */ _t127 = cpu->r[29] + cpu->r[6];
|
|
/* 02771BE0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02771BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02771BE8 */ _t128 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02771BE8 */ _t129 = _t128 & 0x00000001u;
|
|
/* 02771BE8 */ if (_t129) goto L_02771BEC; else goto L_02771C40;
|
|
L_02771BEC: ; // 0x2771bec
|
|
/* 02771BEC */ goto L_02771BFC;
|
|
L_02771BF0: ; // 0x2771bf0
|
|
/* 02771BF0 */ _t130 = cpu->r[29] + 0x00000000u;
|
|
/* 02771BF0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02771BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02771BF8 */ _t131 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02771BF8 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02771BF8 */ if (_t132) goto L_02771BFC; else goto L_02771C40;
|
|
L_02771BFC: ; // 0x2771bfc
|
|
/* 02771BFC */ _t133 = cpu->r[1] + 0x00000020u;
|
|
/* 02771BFC */ cpu->r[5] = rbrew_read32(cpu->mem, _t133);
|
|
/* 02771C00 */ _t134 = cpu->r[5] + 0x00000000u;
|
|
/* 02771C00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02771C04 */ Gambit_fn_02826F20(cpu);
|
|
/* 02771C08 */ _t135 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02771C08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02771C0C */ _t136 = cpu->r[6] + 0x00000034u;
|
|
/* 02771C0C */ cpu->r[7] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02771C10 */ cpu->ctr = cpu->r[7];
|
|
/* 02771C14 */ cpu->r[5] = 0x00000004u;
|
|
/* 02771C18 */ cpu->r[4] = cpu->r[27];
|
|
/* 02771C1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02771C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02771C24 */ cpu->r[7] = cpu->r[27];
|
|
/* 02771C28 */ _t137 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02771C28 */ _t138 = _t137 & 0x00000001u;
|
|
/* 02771C28 */ if (_t138) goto L_02771C30; else goto L_02771C2C;
|
|
L_02771C2C: ; // 0x2771c2c
|
|
/* 02771C2C */ cpu->r[7] = 0x00000001u;
|
|
L_02771C30: ; // 0x2771c30
|
|
/* 02771C30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771C34 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771C34 */ _t140 = _t139 & 0x00000001u;
|
|
/* 02771C34 */ if (_t140) goto L_02771C40; else goto L_02771C38;
|
|
L_02771C38: ; // 0x2771c38
|
|
/* 02771C38 */ _t141 = cpu->r[26] + 0x00000004u;
|
|
/* 02771C38 */ rbrew_write32(cpu->mem, _t141, cpu->r[3]);
|
|
/* 02771C3C */ _t142 = cpu->r[26] + 0x00000000u;
|
|
/* 02771C3C */ rbrew_write32(cpu->mem, _t142, cpu->r[27]);
|
|
L_02771C40: ; // 0x2771c40
|
|
/* 02771C40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771C44 */ _t143 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771C44 */ _t144 = _t143 & 0x00000001u;
|
|
/* 02771C44 */ if (_t144) goto L_02771C48; else goto L_02771C84;
|
|
L_02771C48: ; // 0x2771c48
|
|
/* 02771C48 */ _t145 = cpu->r[1] + 0x00000014u;
|
|
/* 02771C48 */ cpu->r[4] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02771C4C */ cpu->r[12] = cpu->r[28] + cpu->r[21];
|
|
/* 02771C50 */ _t146 = cpu->r[1] + 0x00000018u;
|
|
/* 02771C50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02771C54 */ cpu->r[5] = cpu->r[30] + cpu->r[4];
|
|
/* 02771C58 */ _t147 = cpu->r[12] + 0x00000004u;
|
|
/* 02771C58 */ cpu->r[4] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02771C5C */ cpu->r[24] = 0x00000000u;
|
|
/* 02771C60 */ _t148 = cpu->r[1] + 0x00000024u;
|
|
/* 02771C60 */ rbrew_write32(cpu->mem, _t148, cpu->r[0]);
|
|
/* 02771C64 */ cpu->r[27] = cpu->r[24];
|
|
/* 02771C68 */ _t149 = cpu->r[5] + 0x00000000u;
|
|
/* 02771C68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02771C6C */ cpu->r[18] = 0x00000001u;
|
|
/* 02771C70 */ _t150 = cpu->r[1] + 0x00000008u;
|
|
/* 02771C70 */ cpu->r[26] = rbrew_read32(cpu->mem, _t150);
|
|
/* 02771C74 */ cpu->r[22] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02771C78 */ cpu->r[20] = 0x00000004u;
|
|
/* 02771C7C */ _t151 = cpu->r[4] + 0x00000000u;
|
|
/* 02771C7C */ rbrew_write32(cpu->mem, _t151, cpu->r[8]);
|
|
/* 02771C80 */ goto L_02771EC8;
|
|
L_02771C84: ; // 0x2771c84
|
|
/* 02771C84 */ _t152 = cpu->r[1] + 0x00000014u;
|
|
/* 02771C84 */ cpu->r[4] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02771C88 */ _t153 = cpu->r[1] + 0x00000018u;
|
|
/* 02771C88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t153);
|
|
/* 02771C8C */ cpu->r[5] = cpu->r[30] + cpu->r[4];
|
|
/* 02771C90 */ _t154 = cpu->r[28] + 0x00000004u;
|
|
/* 02771C90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02771C94 */ cpu->r[24] = 0x00000000u;
|
|
/* 02771C98 */ _t155 = cpu->r[5] + 0x00000000u;
|
|
/* 02771C98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02771C9C */ cpu->r[27] = cpu->r[24];
|
|
/* 02771CA0 */ _t156 = cpu->r[1] + 0x00000008u;
|
|
/* 02771CA0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02771CA4 */ cpu->r[18] = 0x00000001u;
|
|
/* 02771CA8 */ _t157 = cpu->r[4] + 0x00000000u;
|
|
/* 02771CA8 */ rbrew_write32(cpu->mem, _t157, cpu->r[8]);
|
|
/* 02771CAC */ cpu->r[22] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02771CB0 */ cpu->r[20] = 0x00000004u;
|
|
/* 02771CB4 */ _t158 = cpu->r[1] + 0x00000024u;
|
|
/* 02771CB4 */ rbrew_write32(cpu->mem, _t158, cpu->r[0]);
|
|
/* 02771CB8 */ goto L_02771EC8;
|
|
L_02771CBC: ; // 0x2771cbc
|
|
/* 02771CBC */ _t159 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02771CBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t159);
|
|
/* 02771CC0 */ cpu->r[9] = 0x10100000u;
|
|
/* 02771CC4 */ _t160 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02771CC4 */ rbrew_write32(cpu->mem, _t160, cpu->r[16]);
|
|
/* 02771CC8 */ cpu->r[9] = cpu->r[9] + 0x00001D14u;
|
|
/* 02771CCC */ _t161 = cpu->r[11] + 0x00000000u;
|
|
/* 02771CCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02771CD0 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02771CD4 */ cpu->r[5] = 0x00000001u;
|
|
/* 02771CD8 */ _t162 = cpu->r[1] + 0x00000028u;
|
|
/* 02771CD8 */ rbrew_write32(cpu->mem, _t162, cpu->r[9]);
|
|
/* 02771CDC */ Gambit_fn_028095AC(cpu);
|
|
/* 02771CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771CE4 */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771CE4 */ _t164 = _t163 & 0x00000001u;
|
|
/* 02771CE4 */ if (_t164) goto L_02771D74; else goto L_02771CE8;
|
|
L_02771CE8: ; // 0x2771ce8
|
|
/* 02771CE8 */ _t165 = cpu->r[3] + 0x00000000u;
|
|
/* 02771CE8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t165);
|
|
/* 02771CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02771CF0 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771CF0 */ _t167 = _t166 & 0x00000001u;
|
|
/* 02771CF0 */ if (_t167) goto L_02771D74; else goto L_02771CF4;
|
|
L_02771CF4: ; // 0x2771cf4
|
|
/* 02771CF4 */ _t168 = cpu->r[1] + 0x00000024u;
|
|
/* 02771CF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02771CF8 */ cpu->r[3] = cpu->r[25];
|
|
/* 02771CFC */ cpu->r[11] = cpu->r[10] + 0x101F0000u;
|
|
/* 02771D00 */ _t169 = cpu->r[22] + 0x00000000u;
|
|
/* 02771D00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02771D04 */ cpu->r[11] = cpu->r[11] + 0x00001CD0u;
|
|
/* 02771D08 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 02771D0C */ cpu->r[5] = cpu->r[11] + cpu->r[24];
|
|
/* 02771D10 */ _t170 = cpu->r[1] + 0x00000030u;
|
|
/* 02771D10 */ rbrew_write32(cpu->mem, _t170, cpu->r[0]);
|
|
/* 02771D14 */ Gambit_fn_0201DB44(cpu);
|
|
/* 02771D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771D1C */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771D1C */ _t172 = _t171 & 0x00000001u;
|
|
/* 02771D1C */ if (_t172) goto L_02771EB8; else goto L_02771D20;
|
|
L_02771D20: ; // 0x2771d20
|
|
/* 02771D20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771D24 */ _t173 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771D24 */ _t174 = _t173 & 0x00000001u;
|
|
/* 02771D24 */ if (_t174) goto L_02771D28; else goto L_02771D44;
|
|
L_02771D28: ; // 0x2771d28
|
|
/* 02771D28 */ _t175 = cpu->r[28] + cpu->r[21];
|
|
/* 02771D28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t175);
|
|
/* 02771D2C */ cpu->r[9] = cpu->r[28] + cpu->r[21];
|
|
/* 02771D30 */ _t176 = cpu->r[9] + 0x00000004u;
|
|
/* 02771D30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t176);
|
|
/* 02771D34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[5]);
|
|
/* 02771D38 */ _t177 = cpu->r[3] + 0x00000000u;
|
|
/* 02771D38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02771D3C */ _t178 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771D3C */ _t179 = _t178 & 0x00000001u;
|
|
/* 02771D3C */ if (_t179) goto L_02771D58; else goto L_02771D40;
|
|
L_02771D40: ; // 0x2771d40
|
|
/* 02771D40 */ goto L_02771D5C;
|
|
L_02771D44: ; // 0x2771d44
|
|
/* 02771D44 */ _t180 = cpu->r[28] + 0x00000000u;
|
|
/* 02771D44 */ cpu->r[5] = rbrew_read32(cpu->mem, _t180);
|
|
/* 02771D48 */ _t181 = cpu->r[28] + 0x00000004u;
|
|
/* 02771D48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t181);
|
|
/* 02771D4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[5]);
|
|
/* 02771D50 */ _t182 = cpu->r[3] + 0x00000000u;
|
|
/* 02771D50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t182);
|
|
/* 02771D54 */ _t183 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771D54 */ _t184 = _t183 & 0x00000001u;
|
|
/* 02771D54 */ if (_t184) goto L_02771D58; else goto L_02771D40;
|
|
L_02771D58: ; // 0x2771d58
|
|
/* 02771D58 */ cpu->r[10] = cpu->r[10] + cpu->r[20];
|
|
L_02771D5C: ; // 0x2771d5c
|
|
/* 02771D5C */ _t185 = cpu->r[10] + 0x00000000u;
|
|
/* 02771D5C */ rbrew_write32(cpu->mem, _t185, cpu->r[7]);
|
|
/* 02771D60 */ cpu->r[20] = cpu->r[20] + 0x00000004u;
|
|
/* 02771D64 */ cpu->r[24] = cpu->r[24] + 0x00000008u;
|
|
/* 02771D68 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02771D6C */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 02771D70 */ goto L_02771EC8;
|
|
L_02771D74: ; // 0x2771d74
|
|
/* 02771D74 */ _t186 = cpu->r[26] + 0x00000000u;
|
|
/* 02771D74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t186);
|
|
/* 02771D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771D7C */ _t187 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771D7C */ _t188 = _t187 & 0x00000001u;
|
|
/* 02771D7C */ if (_t188) goto L_02771E2C; else goto L_02771D80;
|
|
L_02771D80: ; // 0x2771d80
|
|
/* 02771D80 */ _t189 = cpu->r[22] + 0x00000000u;
|
|
/* 02771D80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t189);
|
|
/* 02771D84 */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 02771D88 */ _t190 = cpu->r[1] + 0x00000034u;
|
|
/* 02771D88 */ rbrew_write32(cpu->mem, _t190, cpu->r[0]);
|
|
/* 02771D8C */ Gambit_fn_0277A8DC(cpu);
|
|
/* 02771D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771D94 */ _t191 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771D94 */ _t192 = _t191 & 0x00000001u;
|
|
/* 02771D94 */ if (_t192) goto L_02771E2C; else goto L_02771D98;
|
|
L_02771D98: ; // 0x2771d98
|
|
/* 02771D98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771D9C */ _t193 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771D9C */ _t194 = _t193 & 0x00000001u;
|
|
/* 02771D9C */ if (_t194) goto L_02771DA0; else goto L_02771DE8;
|
|
L_02771DA0: ; // 0x2771da0
|
|
/* 02771DA0 */ _t195 = cpu->r[28] + cpu->r[21];
|
|
/* 02771DA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t195);
|
|
/* 02771DA4 */ cpu->r[6] = cpu->r[28] + cpu->r[21];
|
|
/* 02771DA8 */ _t196 = cpu->r[26] + 0x00000000u;
|
|
/* 02771DA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02771DAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[10]);
|
|
/* 02771DB0 */ _t197 = cpu->r[6] + 0x00000004u;
|
|
/* 02771DB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t197);
|
|
/* 02771DB4 */ _t198 = cpu->r[22] + 0x00000000u;
|
|
/* 02771DB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t198);
|
|
/* 02771DB8 */ _t199 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771DB8 */ _t200 = _t199 & 0x00000001u;
|
|
/* 02771DB8 */ if (_t200) goto L_02771E00; else goto L_02771DBC;
|
|
L_02771DBC: ; // 0x2771dbc
|
|
/* 02771DBC */ cpu->r[5] = cpu->r[27];
|
|
/* 02771DC0 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02771DC4 */ _t201 = cpu->r[1] + 0x00000038u;
|
|
/* 02771DC4 */ rbrew_write32(cpu->mem, _t201, cpu->r[0]);
|
|
/* 02771DC8 */ cpu->r[15] = cpu->r[11];
|
|
/* 02771DCC */ Gambit_fn_0277A8E4(cpu);
|
|
/* 02771DD0 */ cpu->r[20] = cpu->r[20] + 0x00000004u;
|
|
/* 02771DD4 */ cpu->r[24] = cpu->r[24] + 0x00000008u;
|
|
/* 02771DD8 */ _t202 = cpu->r[15] + 0x00000000u;
|
|
/* 02771DD8 */ rbrew_write32(cpu->mem, _t202, cpu->r[3]);
|
|
/* 02771DDC */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02771DE0 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 02771DE4 */ goto L_02771EC8;
|
|
L_02771DE8: ; // 0x2771de8
|
|
/* 02771DE8 */ _t203 = cpu->r[28] + 0x00000000u;
|
|
/* 02771DE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t203);
|
|
/* 02771DEC */ _t204 = cpu->r[26] + 0x00000000u;
|
|
/* 02771DEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t204);
|
|
/* 02771DF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[10]);
|
|
/* 02771DF4 */ _t205 = cpu->r[28] + 0x00000004u;
|
|
/* 02771DF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t205);
|
|
/* 02771DF8 */ _t206 = cpu->r[22] + 0x00000000u;
|
|
/* 02771DF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t206);
|
|
/* 02771DFC */ _t207 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771DFC */ _t208 = _t207 & 0x00000001u;
|
|
/* 02771DFC */ if (_t208) goto L_02771E00; else goto L_02771DBC;
|
|
L_02771E00: ; // 0x2771e00
|
|
/* 02771E00 */ cpu->r[5] = cpu->r[27];
|
|
/* 02771E04 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02771E08 */ _t209 = cpu->r[1] + 0x00000038u;
|
|
/* 02771E08 */ rbrew_write32(cpu->mem, _t209, cpu->r[0]);
|
|
/* 02771E0C */ cpu->r[15] = cpu->r[11] + cpu->r[20];
|
|
/* 02771E10 */ Gambit_fn_0277A8E4(cpu);
|
|
/* 02771E14 */ cpu->r[20] = cpu->r[20] + 0x00000004u;
|
|
/* 02771E18 */ cpu->r[24] = cpu->r[24] + 0x00000008u;
|
|
/* 02771E1C */ _t210 = cpu->r[15] + 0x00000000u;
|
|
/* 02771E1C */ rbrew_write32(cpu->mem, _t210, cpu->r[3]);
|
|
/* 02771E20 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02771E24 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 02771E28 */ goto L_02771EC8;
|
|
L_02771E2C: ; // 0x2771e2c
|
|
/* 02771E2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771E30 */ _t211 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771E30 */ _t212 = _t211 & 0x00000001u;
|
|
/* 02771E30 */ if (_t212) goto L_02771E34; else goto L_02771E50;
|
|
L_02771E34: ; // 0x2771e34
|
|
/* 02771E34 */ _t213 = cpu->r[28] + cpu->r[21];
|
|
/* 02771E34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t213);
|
|
/* 02771E38 */ cpu->r[7] = cpu->r[28] + cpu->r[21];
|
|
/* 02771E3C */ _t214 = cpu->r[7] + 0x00000004u;
|
|
/* 02771E3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t214);
|
|
/* 02771E40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[0]);
|
|
/* 02771E44 */ _t215 = cpu->r[22] + 0x00000000u;
|
|
/* 02771E44 */ cpu->r[4] = rbrew_read32(cpu->mem, _t215);
|
|
/* 02771E48 */ _t216 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771E48 */ _t217 = _t216 & 0x00000001u;
|
|
/* 02771E48 */ if (_t217) goto L_02771E64; else goto L_02771E4C;
|
|
L_02771E4C: ; // 0x2771e4c
|
|
/* 02771E4C */ goto L_02771E7C;
|
|
L_02771E50: ; // 0x2771e50
|
|
/* 02771E50 */ _t218 = cpu->r[28] + 0x00000000u;
|
|
/* 02771E50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t218);
|
|
/* 02771E54 */ _t219 = cpu->r[28] + 0x00000004u;
|
|
/* 02771E54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t219);
|
|
/* 02771E58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[0]);
|
|
/* 02771E5C */ _t220 = cpu->r[22] + 0x00000000u;
|
|
/* 02771E5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t220);
|
|
/* 02771E60 */ _t221 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771E60 */ _t222 = _t221 & 0x00000001u;
|
|
/* 02771E60 */ if (_t222) goto L_02771E64; else goto L_02771E7C;
|
|
L_02771E64: ; // 0x2771e64
|
|
/* 02771E64 */ cpu->r[15] = cpu->r[12] + cpu->r[20];
|
|
/* 02771E68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771E6C */ cpu->r[11] = cpu->r[1] + 0x0000007Cu;
|
|
/* 02771E70 */ _t223 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02771E70 */ rbrew_write32(cpu->mem, _t223, cpu->r[4]);
|
|
/* 02771E74 */ _t224 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771E74 */ _t225 = _t224 & 0x00000001u;
|
|
/* 02771E74 */ if (_t225) goto L_02771E78; else goto L_02771E94;
|
|
L_02771E78: ; // 0x2771e78
|
|
/* 02771E78 */ goto L_02771E90;
|
|
L_02771E7C: ; // 0x2771e7c
|
|
/* 02771E7C */ cpu->r[15] = cpu->r[12];
|
|
/* 02771E80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771E84 */ cpu->r[11] = cpu->r[1] + 0x0000007Cu;
|
|
/* 02771E88 */ _t226 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02771E88 */ rbrew_write32(cpu->mem, _t226, cpu->r[4]);
|
|
/* 02771E8C */ _t227 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771E8C */ _t228 = _t227 & 0x00000001u;
|
|
/* 02771E8C */ if (_t228) goto L_02771E90; else goto L_02771E94;
|
|
L_02771E90: ; // 0x2771e90
|
|
/* 02771E90 */ cpu->r[11] = cpu->r[19];
|
|
L_02771E94: ; // 0x2771e94
|
|
/* 02771E94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000006u);
|
|
/* 02771E98 */ _t229 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771E98 */ _t230 = _t229 & 0x00000001u;
|
|
/* 02771E98 */ if (_t230) goto L_02771E9C; else goto L_02771EA4;
|
|
L_02771E9C: ; // 0x2771e9c
|
|
/* 02771E9C */ cpu->r[5] = cpu->r[11] + cpu->r[20];
|
|
/* 02771EA0 */ cpu->r[11] = cpu->r[5] + 0xFFFFFFFCu;
|
|
L_02771EA4: ; // 0x2771ea4
|
|
/* 02771EA4 */ _t231 = cpu->r[11] + 0x00000000u;
|
|
/* 02771EA4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t231);
|
|
/* 02771EA8 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02771EAC */ cpu->r[3] = cpu->r[25];
|
|
/* 02771EB0 */ Gambit_fn_0201E3A8(cpu);
|
|
/* 02771EB4 */ _t232 = cpu->r[15] + 0x00000000u;
|
|
/* 02771EB4 */ rbrew_write32(cpu->mem, _t232, cpu->r[3]);
|
|
L_02771EB8: ; // 0x2771eb8
|
|
/* 02771EB8 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 02771EBC */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02771EC0 */ cpu->r[24] = cpu->r[24] + 0x00000008u;
|
|
/* 02771EC4 */ cpu->r[20] = cpu->r[20] + 0x00000004u;
|
|
L_02771EC8: ; // 0x2771ec8
|
|
/* 02771EC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771ECC */ _t233 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771ECC */ _t234 = _t233 & 0x00000001u;
|
|
/* 02771ECC */ if (_t234) goto L_02771ED0; else goto L_02771EE0;
|
|
L_02771ED0: ; // 0x2771ed0
|
|
/* 02771ED0 */ _t235 = cpu->r[28] + cpu->r[21];
|
|
/* 02771ED0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t235);
|
|
/* 02771ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[9]);
|
|
/* 02771ED8 */ _t236 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771ED8 */ _t237 = _t236 & 0x00000001u;
|
|
/* 02771ED8 */ if (_t237) goto L_02771CBC; else goto L_02771EDC;
|
|
L_02771EDC: ; // 0x2771edc
|
|
/* 02771EDC */ goto L_02771EEC;
|
|
L_02771EE0: ; // 0x2771ee0
|
|
/* 02771EE0 */ _t238 = cpu->r[28] + 0x00000000u;
|
|
/* 02771EE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02771EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[9]);
|
|
/* 02771EE8 */ _t239 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771EE8 */ _t240 = _t239 & 0x00000001u;
|
|
/* 02771EE8 */ if (_t240) goto L_02771CBC; else goto L_02771EEC;
|
|
L_02771EEC: ; // 0x2771eec
|
|
/* 02771EEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771EF0 */ _t241 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771EF0 */ _t242 = _t241 & 0x00000001u;
|
|
/* 02771EF0 */ if (_t242) goto L_02771EF4; else goto L_02771F04;
|
|
L_02771EF4: ; // 0x2771ef4
|
|
/* 02771EF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771EF8 */ cpu->r[26] = cpu->r[31] + cpu->r[21];
|
|
/* 02771EFC */ _t243 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771EFC */ _t244 = _t243 & 0x00000001u;
|
|
/* 02771EFC */ if (_t244) goto L_02771F10; else goto L_02771F00;
|
|
L_02771F00: ; // 0x2771f00
|
|
/* 02771F00 */ goto L_02771F24;
|
|
L_02771F04: ; // 0x2771f04
|
|
/* 02771F04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771F08 */ cpu->r[26] = cpu->r[31];
|
|
/* 02771F0C */ _t245 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771F0C */ _t246 = _t245 & 0x00000001u;
|
|
/* 02771F0C */ if (_t246) goto L_02771F10; else goto L_02771F24;
|
|
L_02771F10: ; // 0x2771f10
|
|
/* 02771F10 */ _t247 = cpu->r[1] + 0x00000014u;
|
|
/* 02771F10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t247);
|
|
/* 02771F14 */ _t248 = cpu->r[29] + cpu->r[0];
|
|
/* 02771F14 */ cpu->r[27] = rbrew_read32(cpu->mem, _t248);
|
|
/* 02771F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02771F1C */ _t249 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02771F1C */ _t250 = _t249 & 0x00000001u;
|
|
/* 02771F1C */ if (_t250) goto L_02771F20; else goto L_02771F74;
|
|
L_02771F20: ; // 0x2771f20
|
|
/* 02771F20 */ goto L_02771F30;
|
|
L_02771F24: ; // 0x2771f24
|
|
/* 02771F24 */ _t251 = cpu->r[29] + 0x00000000u;
|
|
/* 02771F24 */ cpu->r[27] = rbrew_read32(cpu->mem, _t251);
|
|
/* 02771F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02771F2C */ _t252 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02771F2C */ _t253 = _t252 & 0x00000001u;
|
|
/* 02771F2C */ if (_t253) goto L_02771F30; else goto L_02771F74;
|
|
L_02771F30: ; // 0x2771f30
|
|
/* 02771F30 */ _t254 = cpu->r[1] + 0x00000020u;
|
|
/* 02771F30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t254);
|
|
/* 02771F34 */ _t255 = cpu->r[8] + 0x00000000u;
|
|
/* 02771F34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t255);
|
|
/* 02771F38 */ Gambit_fn_02826F20(cpu);
|
|
/* 02771F3C */ _t256 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02771F3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t256);
|
|
/* 02771F40 */ _t257 = cpu->r[10] + 0x00000034u;
|
|
/* 02771F40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t257);
|
|
/* 02771F44 */ cpu->ctr = cpu->r[0];
|
|
/* 02771F48 */ cpu->r[5] = 0x00000004u;
|
|
/* 02771F4C */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02771F50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02771F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02771F58 */ cpu->r[6] = cpu->r[27];
|
|
/* 02771F5C */ _t258 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02771F5C */ _t259 = _t258 & 0x00000001u;
|
|
/* 02771F5C */ if (_t259) goto L_02771F64; else goto L_02771F60;
|
|
L_02771F60: ; // 0x2771f60
|
|
/* 02771F60 */ cpu->r[6] = 0x00000001u;
|
|
L_02771F64: ; // 0x2771f64
|
|
/* 02771F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02771F68 */ _t260 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02771F68 */ _t261 = _t260 & 0x00000001u;
|
|
/* 02771F68 */ if (_t261) goto L_02771F74; else goto L_02771F6C;
|
|
L_02771F6C: ; // 0x2771f6c
|
|
/* 02771F6C */ _t262 = cpu->r[26] + 0x00000004u;
|
|
/* 02771F6C */ rbrew_write32(cpu->mem, _t262, cpu->r[3]);
|
|
/* 02771F70 */ _t263 = cpu->r[26] + 0x00000000u;
|
|
/* 02771F70 */ rbrew_write32(cpu->mem, _t263, cpu->r[27]);
|
|
L_02771F74: ; // 0x2771f74
|
|
/* 02771F74 */ cpu->r[20] = 0x00000000u;
|
|
/* 02771F78 */ _t264 = cpu->r[1] + 0x00000010u;
|
|
/* 02771F78 */ cpu->r[26] = rbrew_read32(cpu->mem, _t264);
|
|
/* 02771F7C */ cpu->r[27] = cpu->r[21];
|
|
/* 02771F80 */ cpu->r[24] = cpu->r[20];
|
|
/* 02771F84 */ goto L_02772030;
|
|
L_02771F88: ; // 0x2771f88
|
|
/* 02771F88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771F8C */ _t265 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771F8C */ _t266 = _t265 & 0x00000001u;
|
|
/* 02771F8C */ if (_t266) goto L_02771F90; else goto L_02771FB0;
|
|
L_02771F90: ; // 0x2771f90
|
|
/* 02771F90 */ _t267 = cpu->r[31] + cpu->r[27];
|
|
/* 02771F90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t267);
|
|
/* 02771F94 */ cpu->r[10] = cpu->r[31] + cpu->r[27];
|
|
/* 02771F98 */ _t268 = cpu->r[26] + 0x00000000u;
|
|
/* 02771F98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t268);
|
|
/* 02771F9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[11]);
|
|
/* 02771FA0 */ _t269 = cpu->r[26] + 0x00000000u;
|
|
/* 02771FA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t269);
|
|
/* 02771FA4 */ _t270 = cpu->r[10] + 0x00000004u;
|
|
/* 02771FA4 */ cpu->r[22] = rbrew_read32(cpu->mem, _t270);
|
|
/* 02771FA8 */ _t271 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771FA8 */ _t272 = _t271 & 0x00000001u;
|
|
/* 02771FA8 */ if (_t272) goto L_02771FC8; else goto L_02771FAC;
|
|
L_02771FAC: ; // 0x2771fac
|
|
/* 02771FAC */ goto L_02771FCC;
|
|
L_02771FB0: ; // 0x2771fb0
|
|
/* 02771FB0 */ _t273 = cpu->r[31] + 0x00000000u;
|
|
/* 02771FB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t273);
|
|
/* 02771FB4 */ _t274 = cpu->r[26] + 0x00000000u;
|
|
/* 02771FB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t274);
|
|
/* 02771FB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[11]);
|
|
/* 02771FBC */ _t275 = cpu->r[31] + 0x00000004u;
|
|
/* 02771FBC */ cpu->r[22] = rbrew_read32(cpu->mem, _t275);
|
|
/* 02771FC0 */ _t276 = cpu->r[26] + 0x00000000u;
|
|
/* 02771FC0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t276);
|
|
/* 02771FC4 */ _t277 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771FC4 */ _t278 = _t277 & 0x00000001u;
|
|
/* 02771FC4 */ if (_t278) goto L_02771FC8; else goto L_02771FAC;
|
|
L_02771FC8: ; // 0x2771fc8
|
|
/* 02771FC8 */ cpu->r[22] = cpu->r[22] + cpu->r[24];
|
|
L_02771FCC: ; // 0x2771fcc
|
|
/* 02771FCC */ _t279 = cpu->r[1] + 0x00000040u;
|
|
/* 02771FCC */ rbrew_write32(cpu->mem, _t279, cpu->r[12]);
|
|
/* 02771FD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02771FD4 */ _t280 = cpu->r[1] + 0x00000044u;
|
|
/* 02771FD4 */ rbrew_write32(cpu->mem, _t280, cpu->r[4]);
|
|
/* 02771FD8 */ _t281 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771FD8 */ _t282 = _t281 & 0x00000001u;
|
|
/* 02771FD8 */ if (_t282) goto L_02771FDC; else goto L_02771FF4;
|
|
L_02771FDC: ; // 0x2771fdc
|
|
/* 02771FDC */ _t283 = cpu->r[28] + cpu->r[27];
|
|
/* 02771FDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t283);
|
|
/* 02771FE0 */ cpu->r[12] = cpu->r[28] + cpu->r[27];
|
|
/* 02771FE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[0]);
|
|
/* 02771FE8 */ _t284 = cpu->r[12] + 0x00000004u;
|
|
/* 02771FE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t284);
|
|
/* 02771FEC */ _t285 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02771FEC */ _t286 = _t285 & 0x00000001u;
|
|
/* 02771FEC */ if (_t286) goto L_02772004; else goto L_02771FF0;
|
|
L_02771FF0: ; // 0x2771ff0
|
|
/* 02771FF0 */ goto L_02772008;
|
|
L_02771FF4: ; // 0x2771ff4
|
|
/* 02771FF4 */ _t287 = cpu->r[28] + 0x00000000u;
|
|
/* 02771FF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t287);
|
|
/* 02771FF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[0]);
|
|
/* 02771FFC */ _t288 = cpu->r[28] + 0x00000004u;
|
|
/* 02771FFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t288);
|
|
/* 02772000 */ _t289 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772000 */ _t290 = _t289 & 0x00000001u;
|
|
/* 02772000 */ if (_t290) goto L_02772004; else goto L_02771FF0;
|
|
L_02772004: ; // 0x2772004
|
|
/* 02772004 */ cpu->r[9] = cpu->r[9] + cpu->r[24];
|
|
L_02772008: ; // 0x2772008
|
|
/* 02772008 */ _t291 = cpu->r[9] + 0x00000000u;
|
|
/* 02772008 */ cpu->r[5] = rbrew_read32(cpu->mem, _t291);
|
|
/* 0277200C */ cpu->r[3] = cpu->r[25];
|
|
/* 02772010 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 02772014 */ Gambit_fn_0201D9E4(cpu);
|
|
/* 02772018 */ cpu->r[4] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0277201C */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02772020 */ Gambit_fn_020199F0(cpu);
|
|
/* 02772024 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02772028 */ cpu->r[24] = cpu->r[24] + 0x00000004u;
|
|
/* 0277202C */ _t292 = cpu->r[22] + 0x00000000u;
|
|
/* 0277202C */ rbrew_write32(cpu->mem, _t292, cpu->r[3]);
|
|
L_02772030: ; // 0x2772030
|
|
/* 02772030 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000003u);
|
|
/* 02772034 */ _t293 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772034 */ _t294 = _t293 & 0x00000001u;
|
|
/* 02772034 */ if (_t294) goto L_02772038; else goto L_02772048;
|
|
L_02772038: ; // 0x2772038
|
|
/* 02772038 */ _t295 = cpu->r[31] + cpu->r[27];
|
|
/* 02772038 */ cpu->r[5] = rbrew_read32(cpu->mem, _t295);
|
|
/* 0277203C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[5]);
|
|
/* 02772040 */ _t296 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772040 */ _t297 = _t296 & 0x00000001u;
|
|
/* 02772040 */ if (_t297) goto L_02771F88; else goto L_02772044;
|
|
L_02772044: ; // 0x2772044
|
|
/* 02772044 */ goto L_02772054;
|
|
L_02772048: ; // 0x2772048
|
|
/* 02772048 */ _t298 = cpu->r[31] + 0x00000000u;
|
|
/* 02772048 */ cpu->r[5] = rbrew_read32(cpu->mem, _t298);
|
|
/* 0277204C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[5]);
|
|
/* 02772050 */ _t299 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772050 */ _t300 = _t299 & 0x00000001u;
|
|
/* 02772050 */ if (_t300) goto L_02771F88; else goto L_02772054;
|
|
L_02772054: ; // 0x2772054
|
|
/* 02772054 */ _t301 = cpu->r[1] + 0x00000018u;
|
|
/* 02772054 */ cpu->r[6] = rbrew_read32(cpu->mem, _t301);
|
|
/* 02772058 */ cpu->r[19] = cpu->r[19] + 0x00000018u;
|
|
/* 0277205C */ _t302 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277205C */ cpu->r[12] = rbrew_read32(cpu->mem, _t302);
|
|
/* 02772060 */ cpu->r[5] = cpu->r[6] + 0x00000030u;
|
|
/* 02772064 */ _t303 = cpu->r[1] + 0x00000014u;
|
|
/* 02772064 */ cpu->r[8] = rbrew_read32(cpu->mem, _t303);
|
|
/* 02772068 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02772068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0277206C */ _t304 = cpu->r[1] + 0x00000018u;
|
|
/* 0277206C */ rbrew_write32(cpu->mem, _t304, cpu->r[5]);
|
|
/* 02772070 */ cpu->r[7] = cpu->r[8] + 0x00000004u;
|
|
/* 02772074 */ _t305 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772074 */ rbrew_write32(cpu->mem, _t305, cpu->r[0]);
|
|
/* 02772078 */ cpu->r[21] = cpu->r[21] + 0x00000008u;
|
|
/* 0277207C */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02772080 */ _t306 = cpu->r[1] + 0x00000014u;
|
|
/* 02772080 */ rbrew_write32(cpu->mem, _t306, cpu->r[7]);
|
|
/* 02772084 */ _t307 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772084 */ _t308 = _t307 & 0x00000001u;
|
|
/* 02772084 */ if (_t308) goto L_02772088; else goto L_02771B04;
|
|
L_02772088: ; // 0x2772088
|
|
/* 02772088 */ cpu->r[31] = 0x00000000u;
|
|
/* 0277208C */ cpu->r[4] = cpu->r[29];
|
|
/* 02772090 */ cpu->r[8] = cpu->r[31];
|
|
/* 02772094 */ goto L_027720A0;
|
|
L_02772098: ; // 0x2772098
|
|
/* 02772098 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000003u);
|
|
/* 0277209C */ _t309 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277209C */ _t310 = _t309 & 0x00000001u;
|
|
/* 0277209C */ if (_t310) goto L_027720A0; else goto L_027720A8;
|
|
L_027720A0: ; // 0x27720a0
|
|
/* 027720A0 */ cpu->r[9] = cpu->r[4];
|
|
/* 027720A4 */ goto L_027720AC;
|
|
L_027720A8: ; // 0x27720a8
|
|
/* 027720A8 */ cpu->r[9] = cpu->r[29];
|
|
L_027720AC: ; // 0x27720ac
|
|
/* 027720AC */ _t311 = cpu->r[9] + 0x00000000u;
|
|
/* 027720AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t311);
|
|
/* 027720B0 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 027720B4 */ cpu->r[4] = cpu->r[4] + 0x00000004u;
|
|
/* 027720B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 027720BC */ cpu->r[31] = cpu->r[31] + cpu->r[0];
|
|
/* 027720C0 */ _t312 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027720C0 */ _t313 = _t312 & 0x00000001u;
|
|
/* 027720C0 */ if (_t313) goto L_02772098; else goto L_027720C4;
|
|
L_027720C4: ; // 0x27720c4
|
|
/* 027720C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027720C8 */ _t314 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027720C8 */ _t315 = _t314 & 0x00000001u;
|
|
/* 027720C8 */ if (_t315) goto L_027720CC; else goto L_02772134;
|
|
L_027720CC: ; // 0x27720cc
|
|
/* 027720CC */ _t316 = cpu->r[1] + 0x00000020u;
|
|
/* 027720CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t316);
|
|
/* 027720D0 */ _t317 = cpu->r[6] + 0x00000000u;
|
|
/* 027720D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t317);
|
|
/* 027720D4 */ Gambit_fn_02826F20(cpu);
|
|
/* 027720D8 */ _t318 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027720D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t318);
|
|
/* 027720DC */ _t319 = cpu->r[6] + 0x00000034u;
|
|
/* 027720DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t319);
|
|
/* 027720E0 */ cpu->ctr = cpu->r[0];
|
|
/* 027720E4 */ cpu->r[5] = 0x00000004u;
|
|
/* 027720E8 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 027720EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027720F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027720F4 */ cpu->r[0] = cpu->r[31];
|
|
/* 027720F8 */ cpu->r[12] = 0x00000000u;
|
|
/* 027720FC */ _t320 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027720FC */ _t321 = _t320 & 0x00000001u;
|
|
/* 027720FC */ if (_t321) goto L_02772104; else goto L_02772100;
|
|
L_02772100: ; // 0x2772100
|
|
/* 02772100 */ cpu->r[0] = 0x00000001u;
|
|
L_02772104: ; // 0x2772104
|
|
/* 02772104 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x0000000Cu);
|
|
/* 02772108 */ cpu->ctr = cpu->r[0];
|
|
/* 0277210C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
L_02772110: ; // 0x2772110
|
|
/* 02772110 */ cpu->r[11] = cpu->r[3] + cpu->r[12];
|
|
/* 02772110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02772114 */ _t322 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772114 */ _t323 = _t322 & 0x00000001u;
|
|
/* 02772114 */ if (_t323) goto L_0277211C; else goto L_02772118;
|
|
L_02772118: ; // 0x2772118
|
|
/* 02772118 */ _t324 = cpu->r[11] + 0x00000004u;
|
|
/* 02772118 */ rbrew_write32(cpu->mem, _t324, cpu->r[4]);
|
|
L_0277211C: ; // 0x277211c
|
|
/* 0277211C */ cpu->r[12] = cpu->r[12] + 0x0000000Cu;
|
|
/* 02772120 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02772120 */ _t325 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02772120 */ _t326 = _t325 >> (0x00000002u & 31u);
|
|
/* 02772120 */ _t327 = _t326 & 0x00000001u;
|
|
/* 02772120 */ if (_t327) goto L_02772110; else goto L_02772124;
|
|
L_02772124: ; // 0x2772124
|
|
/* 02772124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02772128 */ _t328 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772128 */ _t329 = _t328 & 0x00000001u;
|
|
/* 02772128 */ if (_t329) goto L_02772134; else goto L_0277212C;
|
|
L_0277212C: ; // 0x277212c
|
|
/* 0277212C */ _t330 = cpu->r[14] + 0x00000224u;
|
|
/* 0277212C */ rbrew_write32(cpu->mem, _t330, cpu->r[3]);
|
|
/* 02772130 */ _t331 = cpu->r[14] + 0x00000220u;
|
|
/* 02772130 */ rbrew_write32(cpu->mem, _t331, cpu->r[31]);
|
|
L_02772134: ; // 0x2772134
|
|
/* 02772134 */ _t332 = cpu->r[14] + 0x00000220u;
|
|
/* 02772134 */ cpu->r[0] = rbrew_read32(cpu->mem, _t332);
|
|
/* 02772138 */ cpu->r[6] = 0x00000000u;
|
|
/* 0277213C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 02772140 */ _t333 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772140 */ _t334 = _t333 & 0x00000001u;
|
|
/* 02772140 */ if (_t334) goto L_02772144; else goto L_027721B0;
|
|
L_02772144: ; // 0x2772144
|
|
/* 02772144 */ cpu->r[8] = 0x00000000u;
|
|
/* 02772148 */ cpu->r[11] = 0x00000001u;
|
|
/* 0277214C */ cpu->r[10] = cpu->r[8];
|
|
/* 02772150 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
L_02772154: ; // 0x2772154
|
|
/* 02772154 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 02772158 */ _t335 = cpu->r[14] + 0x00000224u;
|
|
/* 02772158 */ cpu->r[12] = rbrew_read32(cpu->mem, _t335);
|
|
/* 0277215C */ _t336 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277215C */ _t337 = _t336 & 0x00000001u;
|
|
/* 0277215C */ if (_t337) goto L_02772160; else goto L_02772164;
|
|
L_02772160: ; // 0x2772160
|
|
/* 02772160 */ cpu->r[12] = cpu->r[12] + cpu->r[8];
|
|
L_02772164: ; // 0x2772164
|
|
/* 02772164 */ _t338 = cpu->r[12] + 0x00000004u;
|
|
/* 02772164 */ rbrew_write32(cpu->mem, _t338, cpu->r[11]);
|
|
/* 02772168 */ _t339 = cpu->r[14] + 0x00000220u;
|
|
/* 02772168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t339);
|
|
/* 0277216C */ _t340 = cpu->r[12] + 0x00000004u;
|
|
/* 0277216C */ cpu->r[7] = rbrew_read32(cpu->mem, _t340);
|
|
/* 02772170 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 02772174 */ _t341 = cpu->r[14] + 0x00000224u;
|
|
/* 02772174 */ cpu->r[4] = rbrew_read32(cpu->mem, _t341);
|
|
/* 02772178 */ _t342 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772178 */ _t343 = _t342 & 0x00000001u;
|
|
/* 02772178 */ if (_t343) goto L_0277217C; else goto L_02772180;
|
|
L_0277217C: ; // 0x277217c
|
|
/* 0277217C */ cpu->r[4] = cpu->r[4] + cpu->r[8];
|
|
L_02772180: ; // 0x2772180
|
|
/* 02772180 */ _t344 = cpu->r[4] + 0x00000000u;
|
|
/* 02772180 */ rbrew_write32(cpu->mem, _t344, cpu->r[9]);
|
|
/* 02772184 */ _t345 = cpu->r[14] + 0x00000220u;
|
|
/* 02772184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t345);
|
|
/* 02772188 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 0277218C */ _t346 = cpu->r[14] + 0x00000224u;
|
|
/* 0277218C */ cpu->r[5] = rbrew_read32(cpu->mem, _t346);
|
|
/* 02772190 */ _t347 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772190 */ _t348 = _t347 & 0x00000001u;
|
|
/* 02772190 */ if (_t348) goto L_02772194; else goto L_02772198;
|
|
L_02772194: ; // 0x2772194
|
|
/* 02772194 */ cpu->r[5] = cpu->r[5] + cpu->r[8];
|
|
L_02772198: ; // 0x2772198
|
|
/* 02772198 */ _t349 = cpu->r[5] + 0x00000008u;
|
|
/* 02772198 */ rbrew_write8(cpu->mem, _t349, (uint8_t)cpu->r[10]);
|
|
/* 0277219C */ _t350 = cpu->r[14] + 0x00000220u;
|
|
/* 0277219C */ cpu->r[0] = rbrew_read32(cpu->mem, _t350);
|
|
/* 027721A0 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 027721A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 027721A8 */ cpu->r[8] = cpu->r[8] + 0x0000000Cu;
|
|
/* 027721AC */ _t351 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027721AC */ _t352 = _t351 & 0x00000001u;
|
|
/* 027721AC */ if (_t352) goto L_02772154; else goto L_027721B0;
|
|
L_027721B0: ; // 0x27721b0
|
|
/* 027721B0 */ cpu->r[0] = 0x00000002u;
|
|
/* 027721B4 */ cpu->r[3] = cpu->r[14] + 0x000001D0u;
|
|
/* 027721B8 */ cpu->r[4] = cpu->r[14];
|
|
/* 027721BC */ cpu->r[6] = 0x00000000u;
|
|
/* 027721C0 */ cpu->r[5] = cpu->r[1] + 0x00000048u;
|
|
/* 027721C4 */ _t353 = cpu->r[1] + 0x00000048u;
|
|
/* 027721C4 */ rbrew_write8(cpu->mem, _t353, (uint8_t)cpu->r[0]);
|
|
/* 027721C8 */ Gambit_fn_027743A0(cpu);
|
|
/* 027721CC */ cpu->r[4] = cpu->r[14] + 0x000001D0u;
|
|
/* 027721D0 */ cpu->r[3] = cpu->r[14];
|
|
/* 027721D4 */ Gambit_fn_02000834(cpu);
|
|
/* 027721D8 */ cpu->r[28] = 0x02770000u;
|
|
/* 027721DC */ cpu->r[9] = 0x10100000u;
|
|
/* 027721E0 */ cpu->r[28] = cpu->r[28] + 0x00003EDCu;
|
|
/* 027721E4 */ cpu->r[9] = cpu->r[9] + 0x00001CF8u;
|
|
/* 027721E8 */ _t354 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027721E8 */ rbrew_write32(cpu->mem, _t354, cpu->r[16]);
|
|
/* 027721EC */ cpu->ctr = cpu->r[28];
|
|
/* 027721F0 */ _t355 = cpu->r[1] + 0x00000058u;
|
|
/* 027721F0 */ rbrew_write32(cpu->mem, _t355, cpu->r[9]);
|
|
/* 027721F4 */ _t356 = cpu->r[14] + 0x000001E8u;
|
|
/* 027721F4 */ cpu->r[27] = rbrew_read32(cpu->mem, _t356);
|
|
/* 027721F8 */ _t357 = cpu->r[27] + 0x00000000u;
|
|
/* 027721F8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t357);
|
|
/* 027721FC */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02772200 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02772204 */ cpu->r[31] = 0x10110000u;
|
|
/* 02772208 */ _t358 = cpu->r[1] + 0x00000058u;
|
|
/* 02772208 */ cpu->r[6] = rbrew_read32(cpu->mem, _t358);
|
|
/* 0277220C */ _t359 = cpu->r[31] + 0x00007399u;
|
|
/* 0277220C */ cpu->r[31] = rbrew_read8(cpu->mem, _t359);
|
|
/* 02772210 */ _t360 = cpu->r[6] + 0x00000000u;
|
|
/* 02772210 */ cpu->r[0] = rbrew_read8(cpu->mem, _t360);
|
|
/* 02772214 */ cpu->r[7] = 0x00080000u;
|
|
/* 02772218 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0277221C */ cpu->r[30] = 0x00000000u;
|
|
/* 02772220 */ _t361 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772220 */ _t362 = _t361 & 0x00000001u;
|
|
/* 02772220 */ if (_t362) goto L_02772248; else goto L_02772224;
|
|
L_02772224: ; // 0x2772224
|
|
/* 02772224 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02772228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 0277222C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02772230 */ _t363 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02772230 */ _t364 = _t363 & 0x00000001u;
|
|
/* 02772230 */ if (_t364) goto L_02772244; else goto L_02772234;
|
|
L_02772234: ; // 0x2772234
|
|
/* 02772234 */ _t365 = cpu->r[6] + 0x00000000u;
|
|
/* 02772234 */ cpu->r[0] = rbrew_read8(cpu->mem, _t365);
|
|
/* 02772238 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0277223C */ _t366 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277223C */ _t367 = _t366 & 0x00000001u;
|
|
/* 0277223C */ if (_t367) goto L_02772240; else goto L_02772224;
|
|
L_02772240: ; // 0x2772240
|
|
/* 02772240 */ goto L_02772248;
|
|
L_02772244: ; // 0x2772244
|
|
/* 02772244 */ cpu->r[30] = 0x00000000u;
|
|
L_02772248: ; // 0x2772248
|
|
/* 02772248 */ _t368 = cpu->r[27] + 0x00000008u;
|
|
/* 02772248 */ cpu->r[5] = rbrew_read32(cpu->mem, _t368);
|
|
/* 0277224C */ _t369 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0277224C */ cpu->r[10] = rbrew_read32(cpu->mem, _t369);
|
|
/* 02772250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02772254 */ _t370 = cpu->r[10] + 0x00000014u;
|
|
/* 02772254 */ cpu->r[11] = rbrew_read32(cpu->mem, _t370);
|
|
/* 02772258 */ _t371 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772258 */ _t372 = _t371 & 0x00000001u;
|
|
/* 02772258 */ if (_t372) goto L_02772260; else goto L_0277225C;
|
|
L_0277225C: ; // 0x277225c
|
|
/* 0277225C */ cpu->r[30] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02772260: ; // 0x2772260
|
|
/* 02772260 */ cpu->ctr = cpu->r[11];
|
|
/* 02772264 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02772268 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0277226C */ _t373 = cpu->r[1] + 0x00000058u;
|
|
/* 0277226C */ cpu->r[4] = rbrew_read32(cpu->mem, _t373);
|
|
/* 02772270 */ cpu->r[6] = 0x00000000u;
|
|
/* 02772274 */ cpu->r[5] = cpu->r[30];
|
|
/* 02772278 */ cpu->r[3] = cpu->r[29];
|
|
/* 0277227C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02772280 */ _t374 = cpu->r[29] + cpu->r[30];
|
|
/* 02772280 */ rbrew_write8(cpu->mem, _t374, (uint8_t)cpu->r[31]);
|
|
/* 02772284 */ cpu->r[5] = 0x00000000u;
|
|
/* 02772288 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0277228C */ _t375 = cpu->r[1] + 0x00000068u;
|
|
/* 0277228C */ rbrew_write16(cpu->mem, _t375, (uint16_t)cpu->r[5]);
|
|
/* 02772290 */ cpu->r[12] = 0x02770000u;
|
|
/* 02772294 */ _t376 = cpu->r[1] + 0x00000070u;
|
|
/* 02772294 */ rbrew_write16(cpu->mem, _t376, (uint16_t)cpu->r[5]);
|
|
/* 02772298 */ cpu->r[12] = cpu->r[12] + 0x000038F4u;
|
|
/* 0277229C */ _t377 = cpu->r[1] + 0x00000074u;
|
|
/* 0277229C */ rbrew_write32(cpu->mem, _t377, cpu->r[5]);
|
|
/* 027722A0 */ cpu->r[4] = 0x02770000u;
|
|
/* 027722A4 */ _t378 = cpu->r[1] + 0x00000064u;
|
|
/* 027722A4 */ rbrew_write32(cpu->mem, _t378, cpu->r[12]);
|
|
/* 027722A8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027722AC */ _t379 = cpu->r[1] + 0x00000060u;
|
|
/* 027722AC */ rbrew_write16(cpu->mem, _t379, (uint16_t)cpu->r[5]);
|
|
/* 027722B0 */ cpu->r[4] = cpu->r[4] + 0x0000393Cu;
|
|
/* 027722B4 */ _t380 = cpu->r[1] + 0x00000062u;
|
|
/* 027722B4 */ rbrew_write16(cpu->mem, _t380, (uint16_t)cpu->r[0]);
|
|
/* 027722B8 */ cpu->r[7] = cpu->r[1] + 0x00000048u;
|
|
/* 027722BC */ _t381 = cpu->r[1] + 0x00000072u;
|
|
/* 027722BC */ rbrew_write16(cpu->mem, _t381, (uint16_t)cpu->r[5]);
|
|
/* 027722C0 */ cpu->r[5] = cpu->r[1] + 0x00000068u;
|
|
/* 027722C4 */ cpu->r[6] = cpu->r[1] + 0x00000070u;
|
|
/* 027722C8 */ _t382 = cpu->r[1] + 0x0000006Au;
|
|
/* 027722C8 */ rbrew_write16(cpu->mem, _t382, (uint16_t)cpu->r[8]);
|
|
/* 027722CC */ cpu->r[8] = 0x00000000u;
|
|
/* 027722D0 */ cpu->r[3] = cpu->r[14] + 0x000001D0u;
|
|
/* 027722D4 */ _t383 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027722D4 */ rbrew_write32(cpu->mem, _t383, cpu->r[4]);
|
|
/* 027722D8 */ cpu->r[4] = cpu->r[1] + 0x00000060u;
|
|
/* 027722DC */ _t384 = cpu->r[1] + 0x00000048u;
|
|
/* 027722DC */ rbrew_write8(cpu->mem, _t384, (uint8_t)cpu->r[8]);
|
|
/* 027722E0 */ Gambit_fn_02774650(cpu);
|
|
/* 027722E4 */ cpu->r[7] = 0x10100000u;
|
|
/* 027722E8 */ _t385 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027722E8 */ rbrew_write32(cpu->mem, _t385, cpu->r[16]);
|
|
/* 027722EC */ cpu->r[7] = cpu->r[7] + 0x00001D04u;
|
|
/* 027722F0 */ _t386 = cpu->r[1] + 0x00000058u;
|
|
/* 027722F0 */ rbrew_write32(cpu->mem, _t386, cpu->r[7]);
|
|
/* 027722F4 */ _t387 = cpu->r[14] + 0x000001E4u;
|
|
/* 027722F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t387);
|
|
/* 027722F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000001u);
|
|
/* 027722FC */ _t388 = cpu->r[14] + 0x000001E8u;
|
|
/* 027722FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t388);
|
|
/* 02772300 */ _t389 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02772300 */ _t390 = _t389 & 0x00000001u;
|
|
/* 02772300 */ if (_t390) goto L_02772304; else goto L_02772308;
|
|
L_02772304: ; // 0x2772304
|
|
/* 02772304 */ cpu->r[29] = cpu->r[29] + 0x00000024u;
|
|
L_02772308: ; // 0x2772308
|
|
/* 02772308 */ cpu->ctr = cpu->r[28];
|
|
/* 0277230C */ _t391 = cpu->r[29] + 0x00000000u;
|
|
/* 0277230C */ cpu->r[27] = rbrew_read32(cpu->mem, _t391);
|
|
/* 02772310 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02772314 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02772318 */ _t392 = cpu->r[1] + 0x00000058u;
|
|
/* 02772318 */ cpu->r[5] = rbrew_read32(cpu->mem, _t392);
|
|
/* 0277231C */ _t393 = cpu->r[5] + 0x00000000u;
|
|
/* 0277231C */ cpu->r[9] = rbrew_read8(cpu->mem, _t393);
|
|
/* 02772320 */ cpu->r[30] = 0x00000000u;
|
|
/* 02772324 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02772328 */ cpu->r[0] = 0x00080000u;
|
|
/* 0277232C */ _t394 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277232C */ _t395 = _t394 & 0x00000001u;
|
|
/* 0277232C */ if (_t395) goto L_02772354; else goto L_02772330;
|
|
L_02772330: ; // 0x2772330
|
|
/* 02772330 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02772334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02772338 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0277233C */ _t396 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0277233C */ _t397 = _t396 & 0x00000001u;
|
|
/* 0277233C */ if (_t397) goto L_02772350; else goto L_02772340;
|
|
L_02772340: ; // 0x2772340
|
|
/* 02772340 */ _t398 = cpu->r[5] + 0x00000000u;
|
|
/* 02772340 */ cpu->r[10] = rbrew_read8(cpu->mem, _t398);
|
|
/* 02772344 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02772348 */ _t399 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772348 */ _t400 = _t399 & 0x00000001u;
|
|
/* 02772348 */ if (_t400) goto L_0277234C; else goto L_02772330;
|
|
L_0277234C: ; // 0x277234c
|
|
/* 0277234C */ goto L_02772354;
|
|
L_02772350: ; // 0x2772350
|
|
/* 02772350 */ cpu->r[30] = 0x00000000u;
|
|
L_02772354: ; // 0x2772354
|
|
/* 02772354 */ _t401 = cpu->r[29] + 0x00000008u;
|
|
/* 02772354 */ cpu->r[6] = rbrew_read32(cpu->mem, _t401);
|
|
/* 02772358 */ _t402 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02772358 */ cpu->r[11] = rbrew_read32(cpu->mem, _t402);
|
|
/* 0277235C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 02772360 */ _t403 = cpu->r[11] + 0x00000014u;
|
|
/* 02772360 */ cpu->r[12] = rbrew_read32(cpu->mem, _t403);
|
|
/* 02772364 */ _t404 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772364 */ _t405 = _t404 & 0x00000001u;
|
|
/* 02772364 */ if (_t405) goto L_0277236C; else goto L_02772368;
|
|
L_02772368: ; // 0x2772368
|
|
/* 02772368 */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_0277236C: ; // 0x277236c
|
|
/* 0277236C */ cpu->ctr = cpu->r[12];
|
|
/* 02772370 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02772374 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02772378 */ _t406 = cpu->r[1] + 0x00000058u;
|
|
/* 02772378 */ cpu->r[4] = rbrew_read32(cpu->mem, _t406);
|
|
/* 0277237C */ cpu->r[3] = cpu->r[27];
|
|
/* 02772380 */ cpu->r[5] = cpu->r[30];
|
|
/* 02772384 */ cpu->r[6] = 0x00000000u;
|
|
/* 02772388 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0277238C */ _t407 = cpu->r[27] + cpu->r[30];
|
|
/* 0277238C */ rbrew_write8(cpu->mem, _t407, (uint8_t)cpu->r[31]);
|
|
/* 02772390 */ cpu->r[8] = 0x00000000u;
|
|
/* 02772394 */ cpu->r[6] = cpu->r[1] + 0x00000070u;
|
|
/* 02772398 */ _t408 = cpu->r[1] + 0x00000074u;
|
|
/* 02772398 */ rbrew_write32(cpu->mem, _t408, cpu->r[8]);
|
|
/* 0277239C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027723A0 */ _t409 = cpu->r[1] + 0x00000060u;
|
|
/* 027723A0 */ rbrew_write16(cpu->mem, _t409, (uint16_t)cpu->r[8]);
|
|
/* 027723A4 */ cpu->r[10] = 0x00000001u;
|
|
/* 027723A8 */ _t410 = cpu->r[1] + 0x0000006Au;
|
|
/* 027723A8 */ rbrew_write16(cpu->mem, _t410, (uint16_t)cpu->r[0]);
|
|
/* 027723AC */ cpu->r[4] = 0x02770000u;
|
|
/* 027723B0 */ _t411 = cpu->r[1] + 0x00000062u;
|
|
/* 027723B0 */ rbrew_write16(cpu->mem, _t411, (uint16_t)cpu->r[0]);
|
|
/* 027723B4 */ cpu->r[4] = cpu->r[4] + 0x00003A48u;
|
|
/* 027723B8 */ _t412 = cpu->r[1] + 0x00000048u;
|
|
/* 027723B8 */ rbrew_write8(cpu->mem, _t412, (uint8_t)cpu->r[10]);
|
|
/* 027723BC */ cpu->r[10] = 0x02770000u;
|
|
/* 027723C0 */ _t413 = cpu->r[1] + 0x00000070u;
|
|
/* 027723C0 */ rbrew_write16(cpu->mem, _t413, (uint16_t)cpu->r[8]);
|
|
/* 027723C4 */ cpu->r[10] = cpu->r[10] + 0x00003A88u;
|
|
/* 027723C8 */ _t414 = cpu->r[1] + 0x00000072u;
|
|
/* 027723C8 */ rbrew_write16(cpu->mem, _t414, (uint16_t)cpu->r[8]);
|
|
/* 027723CC */ cpu->r[3] = cpu->r[14] + 0x000001D0u;
|
|
/* 027723D0 */ _t415 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027723D0 */ rbrew_write32(cpu->mem, _t415, cpu->r[4]);
|
|
/* 027723D4 */ cpu->r[7] = cpu->r[1] + 0x00000048u;
|
|
/* 027723D8 */ cpu->r[5] = cpu->r[1] + 0x00000060u;
|
|
/* 027723DC */ _t416 = cpu->r[1] + 0x00000064u;
|
|
/* 027723DC */ rbrew_write32(cpu->mem, _t416, cpu->r[10]);
|
|
/* 027723E0 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 027723E4 */ _t417 = cpu->r[1] + 0x00000068u;
|
|
/* 027723E4 */ rbrew_write16(cpu->mem, _t417, (uint16_t)cpu->r[8]);
|
|
/* 027723E8 */ Gambit_fn_02774650(cpu);
|
|
L_027723EC: ; // 0x27723ec
|
|
/* 027723EC */ cpu->r[3] = cpu->r[14];
|
|
/* 027723F0 */ /* nop */
|
|
/* 027723F4 */ _t418 = cpu->r[1] + 0x00000114u;
|
|
/* 027723F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t418);
|
|
/* 027723F8 */ cpu->lr = cpu->r[0];
|
|
/* 027723FC */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 02772400 */ return;
|
|
}
|
|
|
|
// fn_02772404 @ 0x2772404
|
|
void Gambit_fn_02772404(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94;
|
|
|
|
L_02162478: ; // 0x2162478
|
|
/* 02162478 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02162478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02162478 */ cpu->r[1] = _t0;
|
|
/* 0216247C */ cpu->r[0] = cpu->lr;
|
|
/* 02162480 */ /* nop */
|
|
/* 02162484 */ cpu->r[7] = 0x0000000Bu;
|
|
/* 02162488 */ cpu->r[31] = cpu->r[3];
|
|
/* 0216248C */ cpu->r[28] = cpu->r[31] + 0x0000026Cu;
|
|
/* 02162490 */ cpu->r[10] = cpu->r[31] + 0x00000268u;
|
|
/* 02162494 */ cpu->ctr = cpu->r[7];
|
|
/* 02162498 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02162498 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0216249C */ cpu->r[0] = 0x00000000u;
|
|
/* 021624A0 */ _t2 = cpu->r[31] + 0x0000023Cu;
|
|
/* 021624A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[4]);
|
|
L_021624A4: ; // 0x21624a4
|
|
/* 021624A4 */ _t3 = cpu->r[10] + 0x00000004u;
|
|
/* 021624A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 021624A4 */ cpu->r[10] = _t3;
|
|
/* 021624A8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 021624A8 */ _t4 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 021624A8 */ _t5 = _t4 >> (0x00000002u & 31u);
|
|
/* 021624A8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 021624A8 */ if (_t6) goto L_021624A4; else goto L_021624AC;
|
|
L_021624AC: ; // 0x21624ac
|
|
/* 021624AC */ cpu->r[0] = 0x0000000Bu;
|
|
/* 021624B0 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 021624B4 */ cpu->r[8] = cpu->r[31] + 0x0000023Cu;
|
|
/* 021624B8 */ cpu->ctr = cpu->r[0];
|
|
/* 021624BC */ cpu->r[29] = cpu->r[31] + 0x00000240u;
|
|
L_021624C0: ; // 0x21624c0
|
|
/* 021624C0 */ _t7 = cpu->r[8] + 0x00000004u;
|
|
/* 021624C0 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 021624C0 */ cpu->r[8] = _t7;
|
|
/* 021624C4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 021624C4 */ _t8 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 021624C4 */ _t9 = _t8 >> (0x00000002u & 31u);
|
|
/* 021624C4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 021624C4 */ if (_t10) goto L_021624C0; else goto L_021624C8;
|
|
L_021624C8: ; // 0x21624c8
|
|
/* 021624C8 */ cpu->r[30] = 0x00000000u;
|
|
/* 021624CC */ _t11 = cpu->r[29] + 0x00000000u;
|
|
/* 021624CC */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 021624D0 */ _t12 = cpu->r[31] + 0x0000023Cu;
|
|
/* 021624D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 021624D4 */ cpu->r[4] = 0x00000001u;
|
|
/* 021624D8 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 021624D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 021624DC */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 021624DC */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 021624E0 */ _t15 = cpu->r[12] + 0x0000001Cu;
|
|
/* 021624E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 021624E4 */ cpu->ctr = cpu->r[11];
|
|
/* 021624E8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 021624EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 021624F0 */ _t16 = cpu->r[28] + 0x00000000u;
|
|
/* 021624F0 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 021624F4 */ cpu->r[27] = cpu->r[3];
|
|
/* 021624F8 */ _t17 = cpu->r[29] + 0x00000004u;
|
|
/* 021624F8 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 021624FC */ _t18 = cpu->r[31] + 0x0000023Cu;
|
|
/* 021624FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02162500 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 02162500 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02162504 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02162504 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 02162508 */ _t21 = cpu->r[10] + 0x0000001Cu;
|
|
/* 02162508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0216250C */ cpu->ctr = cpu->r[0];
|
|
/* 02162510 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02162514 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02162518 */ cpu->r[27] = cpu->r[27] + cpu->r[3];
|
|
/* 0216251C */ _t22 = cpu->r[28] + 0x00000004u;
|
|
/* 0216251C */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 02162520 */ _t23 = cpu->r[29] + 0x00000008u;
|
|
/* 02162520 */ rbrew_write32(cpu->mem, _t23, cpu->r[27]);
|
|
/* 02162524 */ _t24 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02162524 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02162528 */ _t25 = cpu->r[3] + 0x00000000u;
|
|
/* 02162528 */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0216252C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 0216252C */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02162530 */ _t27 = cpu->r[4] + 0x0000001Cu;
|
|
/* 02162530 */ cpu->r[5] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02162534 */ cpu->ctr = cpu->r[5];
|
|
/* 02162538 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0216253C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02162540 */ cpu->r[27] = cpu->r[27] + cpu->r[3];
|
|
/* 02162544 */ _t28 = cpu->r[28] + 0x00000008u;
|
|
/* 02162544 */ rbrew_write32(cpu->mem, _t28, cpu->r[3]);
|
|
/* 02162548 */ _t29 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02162548 */ rbrew_write32(cpu->mem, _t29, cpu->r[27]);
|
|
/* 0216254C */ _t30 = cpu->r[31] + 0x0000023Cu;
|
|
/* 0216254C */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02162550 */ cpu->r[26] = 0x00000002u;
|
|
/* 02162554 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 02162554 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02162558 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02162558 */ rbrew_write32(cpu->mem, _t32, cpu->r[26]);
|
|
/* 0216255C */ _t33 = cpu->r[6] + 0x0000001Cu;
|
|
/* 0216255C */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02162560 */ cpu->ctr = cpu->r[8];
|
|
/* 02162564 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02162568 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0216256C */ _t34 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0216256C */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 02162570 */ _t35 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02162570 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02162574 */ _t36 = cpu->r[3] + 0x00000000u;
|
|
/* 02162574 */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02162578 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 02162578 */ rbrew_write32(cpu->mem, _t37, cpu->r[26]);
|
|
/* 0216257C */ _t38 = cpu->r[10] + 0x0000001Cu;
|
|
/* 0216257C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02162580 */ cpu->ctr = cpu->r[0];
|
|
/* 02162584 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02162588 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0216258C */ cpu->r[27] = cpu->r[27] + cpu->r[3];
|
|
/* 02162590 */ _t39 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02162590 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02162594 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 02162594 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02162598 */ _t41 = cpu->r[4] + 0x00000034u;
|
|
/* 02162598 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0216259C */ cpu->ctr = cpu->r[5];
|
|
/* 021625A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 021625A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 021625A8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021625A8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 021625A8 */ if (_t43) goto L_02162630; else goto L_021625AC;
|
|
L_021625AC: ; // 0x21625ac
|
|
/* 021625AC */ cpu->r[4] = 0x00000010u;
|
|
/* 021625B0 */ cpu->r[5] = 0x00000004u;
|
|
L_021625B4: ; // 0x21625b4
|
|
/* 021625B4 */ cpu->r[11] = 0x00000003u;
|
|
/* 021625B8 */ cpu->r[9] = cpu->r[4];
|
|
/* 021625BC */ cpu->r[6] = cpu->r[29] + cpu->r[4];
|
|
L_021625C0: ; // 0x21625c0
|
|
/* 021625C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Bu);
|
|
/* 021625C4 */ _t44 = cpu->r[6] + 0x00000000u;
|
|
/* 021625C4 */ rbrew_write32(cpu->mem, _t44, cpu->r[27]);
|
|
/* 021625C8 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 021625C8 */ _t46 = _t45 & 0x00000001u;
|
|
/* 021625C8 */ if (_t46) goto L_021625CC; else goto L_021625DC;
|
|
L_021625CC: ; // 0x21625cc
|
|
/* 021625CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Bu);
|
|
/* 021625D0 */ _t47 = cpu->r[28] + cpu->r[9];
|
|
/* 021625D0 */ rbrew_write32(cpu->mem, _t47, cpu->r[11]);
|
|
/* 021625D4 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 021625D4 */ _t49 = _t48 & 0x00000001u;
|
|
/* 021625D4 */ if (_t49) goto L_021625E8; else goto L_021625D8;
|
|
L_021625D8: ; // 0x21625d8
|
|
/* 021625D8 */ goto L_02162614;
|
|
L_021625DC: ; // 0x21625dc
|
|
/* 021625DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Bu);
|
|
/* 021625E0 */ _t50 = cpu->r[28] + 0x00000000u;
|
|
/* 021625E0 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 021625E4 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 021625E4 */ _t52 = _t51 & 0x00000001u;
|
|
/* 021625E4 */ if (_t52) goto L_021625E8; else goto L_02162614;
|
|
L_021625E8: ; // 0x21625e8
|
|
/* 021625E8 */ _t53 = cpu->r[28] + cpu->r[9];
|
|
/* 021625E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53);
|
|
/* 021625EC */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 021625F0 */ cpu->r[9] = cpu->r[9] + 0x00000004u;
|
|
/* 021625F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000007u);
|
|
/* 021625F8 */ cpu->r[27] = cpu->r[27] + cpu->r[6];
|
|
/* 021625FC */ cpu->r[4] = cpu->r[4] + 0x00000004u;
|
|
/* 02162600 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02162600 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02162600 */ if (_t55) goto L_02162630; else goto L_02162604;
|
|
L_02162604: ; // 0x2162604
|
|
/* 02162604 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Bu);
|
|
/* 02162608 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02162608 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02162608 */ if (_t57) goto L_021625B4; else goto L_0216260C;
|
|
L_0216260C: ; // 0x216260c
|
|
/* 0216260C */ cpu->r[6] = cpu->r[29];
|
|
/* 02162610 */ goto L_021625C0;
|
|
L_02162614: ; // 0x2162614
|
|
/* 02162614 */ _t58 = cpu->r[28] + 0x00000000u;
|
|
/* 02162614 */ cpu->r[6] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02162618 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0216261C */ cpu->r[9] = cpu->r[9] + 0x00000004u;
|
|
/* 02162620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000007u);
|
|
/* 02162624 */ cpu->r[27] = cpu->r[27] + cpu->r[6];
|
|
/* 02162628 */ cpu->r[4] = cpu->r[4] + 0x00000004u;
|
|
/* 0216262C */ _t59 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0216262C */ _t60 = _t59 & 0x00000001u;
|
|
/* 0216262C */ if (_t60) goto L_02162630; else goto L_02162604;
|
|
L_02162630: ; // 0x2162630
|
|
/* 02162630 */ _t61 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02162630 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02162634 */ _t62 = cpu->r[3] + 0x00000000u;
|
|
/* 02162634 */ cpu->r[7] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02162638 */ _t63 = cpu->r[7] + 0x0000002Cu;
|
|
/* 02162638 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0216263C */ cpu->ctr = cpu->r[8];
|
|
/* 02162640 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02162644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02162648 */ cpu->r[26] = 0x101C0000u;
|
|
/* 0216264C */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0216264C */ _t65 = _t64 & 0x00000001u;
|
|
/* 0216264C */ if (_t65) goto L_02162668; else goto L_02162650;
|
|
L_02162650: ; // 0x2162650
|
|
/* 02162650 */ _t66 = cpu->r[26] + 0x00001344u;
|
|
/* 02162650 */ cpu->r[9] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02162654 */ _t67 = cpu->r[9] + 0x00000018u;
|
|
/* 02162654 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02162658 */ _t68 = cpu->r[29] + 0x00000020u;
|
|
/* 02162658 */ rbrew_write32(cpu->mem, _t68, cpu->r[27]);
|
|
/* 0216265C */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0216265C */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02162660 */ cpu->r[27] = cpu->r[27] + cpu->r[9];
|
|
/* 02162664 */ _t70 = cpu->r[28] + 0x00000020u;
|
|
/* 02162664 */ rbrew_write32(cpu->mem, _t70, cpu->r[9]);
|
|
L_02162668: ; // 0x2162668
|
|
/* 02162668 */ _t71 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02162668 */ cpu->r[3] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0216266C */ _t72 = cpu->r[3] + 0x00000000u;
|
|
/* 0216266C */ cpu->r[10] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02162670 */ _t73 = cpu->r[10] + 0x00000024u;
|
|
/* 02162670 */ cpu->r[11] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02162674 */ cpu->ctr = cpu->r[11];
|
|
/* 02162678 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0216267C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02162680 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02162680 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02162680 */ if (_t75) goto L_021626AC; else goto L_02162684;
|
|
L_02162684: ; // 0x2162684
|
|
/* 02162684 */ _t76 = cpu->r[26] + 0x00001344u;
|
|
/* 02162684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02162688 */ _t77 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02162688 */ cpu->r[11] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0216268C */ _t78 = cpu->r[29] + 0x00000024u;
|
|
/* 0216268C */ rbrew_write32(cpu->mem, _t78, cpu->r[27]);
|
|
/* 02162690 */ _t79 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02162690 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02162694 */ _t80 = cpu->r[28] + 0x00000024u;
|
|
/* 02162694 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 02162698 */ cpu->r[27] = cpu->r[27] + cpu->r[0];
|
|
/* 0216269C */ _t81 = cpu->r[29] + 0x00000028u;
|
|
/* 0216269C */ rbrew_write32(cpu->mem, _t81, cpu->r[27]);
|
|
/* 021626A0 */ _t82 = cpu->r[11] + 0x0000002Cu;
|
|
/* 021626A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 021626A4 */ cpu->r[27] = cpu->r[27] + cpu->r[0];
|
|
/* 021626A8 */ _t83 = cpu->r[28] + 0x00000028u;
|
|
/* 021626A8 */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
L_021626AC: ; // 0x21626ac
|
|
/* 021626AC */ cpu->r[4] = 0x00000000u;
|
|
/* 021626B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 021626B4 */ cpu->r[5] = cpu->r[31] + 0x00000238u;
|
|
/* 021626B8 */ cpu->r[6] = cpu->r[27];
|
|
/* 021626BC */ _t84 = cpu->r[31] + 0x00000298u;
|
|
/* 021626BC */ rbrew_write32(cpu->mem, _t84, cpu->r[27]);
|
|
/* 021626C0 */ Gambit_fn_021653C8(cpu);
|
|
/* 021626C4 */ cpu->r[8] = 0x00000001u;
|
|
/* 021626C8 */ _t85 = cpu->r[31] + 0x000002C4u;
|
|
/* 021626C8 */ rbrew_write32(cpu->mem, _t85, cpu->r[31]);
|
|
/* 021626CC */ _t86 = cpu->r[31] + 0x000002CEu;
|
|
/* 021626CC */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[8]);
|
|
/* 021626D0 */ _t87 = cpu->r[31] + 0x000002CCu;
|
|
/* 021626D0 */ rbrew_write8(cpu->mem, _t87, (uint8_t)cpu->r[30]);
|
|
/* 021626D4 */ _t88 = cpu->r[31] + 0x000002C8u;
|
|
/* 021626D4 */ rbrew_write32(cpu->mem, _t88, cpu->r[30]);
|
|
/* 021626D8 */ _t89 = cpu->r[31] + 0x000002CFu;
|
|
/* 021626D8 */ rbrew_write8(cpu->mem, _t89, (uint8_t)cpu->r[8]);
|
|
/* 021626DC */ _t90 = cpu->r[31] + 0x000002D0u;
|
|
/* 021626DC */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[8]);
|
|
/* 021626E0 */ _t91 = cpu->r[31] + 0x000002C0u;
|
|
/* 021626E0 */ rbrew_write8(cpu->mem, _t91, (uint8_t)cpu->r[30]);
|
|
/* 021626E4 */ _t92 = cpu->r[31] + 0x000002CDu;
|
|
/* 021626E4 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[8]);
|
|
/* 021626E8 */ /* nop */
|
|
/* 021626EC */ _t93 = cpu->r[1] + 0x0000002Cu;
|
|
/* 021626EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 021626F0 */ cpu->lr = cpu->r[0];
|
|
/* 021626F4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 021626F8 */ return;
|
|
L_02772404: ; // 0x2772404
|
|
/* 02772404 */ cpu->r[12] = cpu->r[3];
|
|
/* 02772408 */ cpu->r[3] = cpu->r[4];
|
|
/* 0277240C */ cpu->r[4] = cpu->r[12] + 0x000001CCu;
|
|
/* 02772410 */ _t94 = cpu->r[12] + 0x0000021Cu;
|
|
/* 02772410 */ rbrew_write32(cpu->mem, _t94, cpu->r[3]);
|
|
/* 02772414 */ goto L_02162478;
|
|
}
|
|
|
|
// fn_02772418 @ 0x2772418
|
|
void Gambit_fn_02772418(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_02772418: ; // 0x2772418
|
|
/* 02772418 */ cpu->r[0] = cpu->lr;
|
|
/* 0277241C */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0277241C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0277241C */ cpu->r[1] = _t0;
|
|
/* 02772420 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 02772420 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02772424 */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02772424 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02772428 */ cpu->r[30] = cpu->r[3];
|
|
/* 0277242C */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 0277242C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02772430 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772434 */ _t4 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02772434 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02772438 */ Gambit_fn_02175308(cpu);
|
|
/* 0277243C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02772440 */ _t5 = cpu->r[12] + 0x00001358u;
|
|
/* 02772440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02772444 */ _t6 = cpu->r[12] + 0x00000014u;
|
|
/* 02772444 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02772448 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277244C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772450 */ _t7 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02772450 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02772454 */ Gambit_fn_021755E8(cpu);
|
|
/* 02772458 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277245C */ Gambit_fn_026222B8(cpu);
|
|
/* 02772460 */ cpu->r[29] = cpu->r[3];
|
|
/* 02772464 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772468 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277246C */ Gambit_fn_021755E8(cpu);
|
|
/* 02772470 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772474 */ Gambit_fn_02622308(cpu);
|
|
/* 02772478 */ cpu->r[5] = 0x00000000u;
|
|
/* 0277247C */ cpu->r[31] = cpu->r[3];
|
|
/* 02772480 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 02772484 */ cpu->r[6] = cpu->r[5];
|
|
/* 02772488 */ cpu->r[4] = cpu->r[29];
|
|
/* 0277248C */ Gambit_fn_027C6980(cpu);
|
|
/* 02772490 */ cpu->r[5] = 0x00000000u;
|
|
/* 02772494 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02772498 */ cpu->r[4] = cpu->r[31];
|
|
/* 0277249C */ cpu->r[6] = cpu->r[5];
|
|
/* 027724A0 */ Gambit_fn_027C6980(cpu);
|
|
/* 027724A4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 027724A8 */ Gambit_fn_02982574(cpu);
|
|
/* 027724AC */ cpu->r[9] = 0x101D0000u;
|
|
/* 027724B0 */ cpu->r[7] = 0x101D0000u;
|
|
/* 027724B4 */ _t8 = cpu->r[9] + 0xFFFF97D8u;
|
|
/* 027724B4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 027724B8 */ _t9 = cpu->r[7] + 0xFFFF97D0u;
|
|
/* 027724B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027724BC */ _t10 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027724BC */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[10]);
|
|
/* 027724C0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 027724C4 */ _t11 = cpu->r[1] + 0x00000038u;
|
|
/* 027724C4 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 027724C8 */ cpu->r[8] = 0x101D0000u;
|
|
/* 027724CC */ _t12 = cpu->r[10] + 0xFFFF97D9u;
|
|
/* 027724CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027724D0 */ _t13 = cpu->r[8] + 0xFFFF97D4u;
|
|
/* 027724D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027724D4 */ _t14 = cpu->r[1] + 0x0000004Du;
|
|
/* 027724D4 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]);
|
|
/* 027724D8 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 027724DC */ _t15 = cpu->r[1] + 0x00000048u;
|
|
/* 027724DC */ rbrew_write32(cpu->mem, _t15, cpu->r[8]);
|
|
/* 027724E0 */ Gambit_fn_02984F3C(cpu);
|
|
/* 027724E4 */ cpu->r[0] = 0x00000006u;
|
|
/* 027724E8 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 027724E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027724EC */ _t17 = cpu->r[1] + 0x00000054u;
|
|
/* 027724EC */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 027724F0 */ _t18 = cpu->r[12] + 0x00000224u;
|
|
/* 027724F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027724F4 */ cpu->ctr = cpu->r[7];
|
|
/* 027724F8 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027724FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02772500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02772504 */ cpu->r[3] = cpu->r[29];
|
|
/* 02772508 */ cpu->r[10] = 0x00000000u;
|
|
/* 0277250C */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 02772510 */ cpu->r[4] = cpu->r[29];
|
|
/* 02772514 */ cpu->r[9] = cpu->r[1] + 0x00000020u;
|
|
/* 02772518 */ cpu->r[6] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0277251C */ cpu->r[7] = cpu->r[1] + 0x00000034u;
|
|
/* 02772520 */ cpu->r[8] = cpu->r[1] + 0x00000050u;
|
|
/* 02772524 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02772524 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 02772528 */ Gambit_fn_023C982C(cpu);
|
|
/* 0277252C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02772530 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02772530 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 02772534 */ _t21 = cpu->r[9] + 0xFFFF8FC4u;
|
|
/* 02772534 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02772538 */ _t22 = cpu->r[9] + 0x00000248u;
|
|
/* 02772538 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0277253C */ Gambit_fn_0297FD44(cpu);
|
|
/* 02772540 */ _t23 = cpu->r[30] + 0x00000008u;
|
|
/* 02772540 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02772544 */ _t24 = cpu->r[12] + 0x000000A4u;
|
|
/* 02772544 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02772548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0277254C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277254C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0277254C */ if (_t26) goto L_027725C8; else goto L_02772550;
|
|
L_02772550: ; // 0x2772550
|
|
/* 02772550 */ cpu->r[3] = 0x00000028u;
|
|
/* 02772554 */ Gambit_fn_02801A78(cpu);
|
|
/* 02772558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0277255C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277255C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0277255C */ if (_t28) goto L_0277256C; else goto L_02772560;
|
|
L_02772560: ; // 0x2772560
|
|
/* 02772560 */ cpu->r[5] = 0x00000000u;
|
|
/* 02772564 */ cpu->r[4] = 0x00000003u;
|
|
/* 02772568 */ Gambit_fn_02398200(cpu);
|
|
L_0277256C: ; // 0x277256c
|
|
/* 0277256C */ _t29 = cpu->r[30] + 0x00000008u;
|
|
/* 0277256C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02772570 */ _t30 = cpu->r[30] + 0x00000080u;
|
|
/* 02772570 */ rbrew_write32(cpu->mem, _t30, cpu->r[3]);
|
|
/* 02772574 */ _t31 = cpu->r[3] + 0x00000014u;
|
|
/* 02772574 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02772578 */ _t32 = cpu->r[30] + 0x00000080u;
|
|
/* 02772578 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0277257C */ cpu->r[4] = 0x00000002u;
|
|
/* 02772580 */ Gambit_fn_023982F0(cpu);
|
|
/* 02772584 */ cpu->r[3] = 0x000001FCu;
|
|
/* 02772588 */ Gambit_fn_02801A78(cpu);
|
|
/* 0277258C */ cpu->r[31] = cpu->r[3];
|
|
/* 0277258C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02772590 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772590 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02772590 */ if (_t34) goto L_027725A0; else goto L_02772594;
|
|
L_02772594: ; // 0x2772594
|
|
/* 02772594 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772598 */ Gambit_fn_02397560(cpu);
|
|
/* 0277259C */ cpu->r[31] = cpu->r[3];
|
|
L_027725A0: ; // 0x27725a0
|
|
/* 027725A0 */ _t35 = cpu->r[30] + 0x00000004u;
|
|
/* 027725A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027725A4 */ _t36 = cpu->r[30] + 0x00000084u;
|
|
/* 027725A4 */ rbrew_write32(cpu->mem, _t36, cpu->r[31]);
|
|
/* 027725A8 */ _t37 = cpu->r[12] + 0x000001ECu;
|
|
/* 027725A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027725AC */ cpu->ctr = cpu->r[9];
|
|
/* 027725B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027725B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027725B8 */ _t38 = cpu->r[30] + 0x00000008u;
|
|
/* 027725B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027725BC */ cpu->r[5] = cpu->r[3];
|
|
/* 027725C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027725C4 */ Gambit_fn_023979A0(cpu);
|
|
L_027725C8: ; // 0x27725c8
|
|
/* 027725C8 */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 027725C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027725CC */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 027725CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027725D0 */ _t41 = cpu->r[7] + 0x0000001Cu;
|
|
/* 027725D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027725D4 */ _t42 = cpu->r[9] + 0x0000001Cu;
|
|
/* 027725D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027725D8 */ cpu->r[5] = 0x00000001u;
|
|
/* 027725DC */ Gambit_fn_02C60BDC(cpu);
|
|
/* 027725E0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 027725E4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027725E8 */ Gambit_fn_021755E8(cpu);
|
|
/* 027725EC */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027725EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027725F0 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000009Cu);
|
|
/* 027725F4 */ cpu->r[4] = cpu->r[8] + 0x101D0000u;
|
|
/* 027725F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027725FC */ cpu->r[4] = cpu->r[4] + 0xFFFF8D08u;
|
|
/* 02772600 */ Gambit_fn_02002684(cpu);
|
|
/* 02772604 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772608 */ Gambit_fn_02175648(cpu);
|
|
/* 0277260C */ _t44 = cpu->r[30] + 0x00000218u;
|
|
/* 0277260C */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02772610 */ cpu->r[5] = cpu->r[3];
|
|
/* 02772614 */ _t45 = cpu->r[30] + 0x00000008u;
|
|
/* 02772614 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02772618 */ Gambit_fn_0216E218(cpu);
|
|
/* 0277261C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772620 */ Gambit_fn_02175678(cpu);
|
|
/* 02772624 */ _t46 = cpu->r[30] + 0x00000214u;
|
|
/* 02772624 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02772628 */ cpu->r[5] = cpu->r[3];
|
|
/* 0277262C */ _t47 = cpu->r[30] + 0x00000008u;
|
|
/* 0277262C */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02772630 */ Gambit_fn_0216E264(cpu);
|
|
/* 02772634 */ _t48 = cpu->r[30] + 0x00000008u;
|
|
/* 02772634 */ cpu->r[4] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02772638 */ cpu->r[3] = 0x00000000u;
|
|
/* 0277263C */ Gambit_fn_02161BFC(cpu);
|
|
/* 02772640 */ _t49 = cpu->r[30] + 0x000002A0u;
|
|
/* 02772640 */ rbrew_write32(cpu->mem, _t49, cpu->r[3]);
|
|
/* 02772644 */ _t50 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02772644 */ cpu->r[3] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02772648 */ Gambit_fn_021626FC(cpu);
|
|
/* 0277264C */ cpu->r[4] = 0x00000002u;
|
|
/* 02772650 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772654 */ Gambit_fn_021753A0(cpu);
|
|
/* 02772658 */ _t51 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02772658 */ cpu->r[29] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0277265C */ _t52 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0277265C */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02772660 */ _t53 = cpu->r[1] + 0x00000060u;
|
|
/* 02772660 */ cpu->r[30] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02772664 */ cpu->lr = cpu->r[0];
|
|
/* 02772668 */ _t54 = cpu->r[1] + 0x00000064u;
|
|
/* 02772668 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0277266C */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02772670 */ return;
|
|
}
|
|
|
|
// fn_0277241C @ 0x277241c
|
|
void Gambit_fn_0277241C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_0277241C: ; // 0x277241c
|
|
/* 0277241C */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0277241C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0277241C */ cpu->r[1] = _t0;
|
|
/* 02772420 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 02772420 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02772424 */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02772424 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02772428 */ cpu->r[30] = cpu->r[3];
|
|
/* 0277242C */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 0277242C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02772430 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772434 */ _t4 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02772434 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02772438 */ Gambit_fn_02175308(cpu);
|
|
/* 0277243C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02772440 */ _t5 = cpu->r[12] + 0x00001358u;
|
|
/* 02772440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02772444 */ _t6 = cpu->r[12] + 0x00000014u;
|
|
/* 02772444 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02772448 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277244C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772450 */ _t7 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02772450 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02772454 */ Gambit_fn_021755E8(cpu);
|
|
/* 02772458 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277245C */ Gambit_fn_026222B8(cpu);
|
|
/* 02772460 */ cpu->r[29] = cpu->r[3];
|
|
/* 02772464 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772468 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277246C */ Gambit_fn_021755E8(cpu);
|
|
/* 02772470 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772474 */ Gambit_fn_02622308(cpu);
|
|
/* 02772478 */ cpu->r[5] = 0x00000000u;
|
|
/* 0277247C */ cpu->r[31] = cpu->r[3];
|
|
/* 02772480 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 02772484 */ cpu->r[6] = cpu->r[5];
|
|
/* 02772488 */ cpu->r[4] = cpu->r[29];
|
|
/* 0277248C */ Gambit_fn_027C6980(cpu);
|
|
/* 02772490 */ cpu->r[5] = 0x00000000u;
|
|
/* 02772494 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02772498 */ cpu->r[4] = cpu->r[31];
|
|
/* 0277249C */ cpu->r[6] = cpu->r[5];
|
|
/* 027724A0 */ Gambit_fn_027C6980(cpu);
|
|
/* 027724A4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 027724A8 */ Gambit_fn_02982574(cpu);
|
|
/* 027724AC */ cpu->r[9] = 0x101D0000u;
|
|
/* 027724B0 */ cpu->r[7] = 0x101D0000u;
|
|
/* 027724B4 */ _t8 = cpu->r[9] + 0xFFFF97D8u;
|
|
/* 027724B4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t8);
|
|
/* 027724B8 */ _t9 = cpu->r[7] + 0xFFFF97D0u;
|
|
/* 027724B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027724BC */ _t10 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027724BC */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[10]);
|
|
/* 027724C0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 027724C4 */ _t11 = cpu->r[1] + 0x00000038u;
|
|
/* 027724C4 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 027724C8 */ cpu->r[8] = 0x101D0000u;
|
|
/* 027724CC */ _t12 = cpu->r[10] + 0xFFFF97D9u;
|
|
/* 027724CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027724D0 */ _t13 = cpu->r[8] + 0xFFFF97D4u;
|
|
/* 027724D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027724D4 */ _t14 = cpu->r[1] + 0x0000004Du;
|
|
/* 027724D4 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]);
|
|
/* 027724D8 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 027724DC */ _t15 = cpu->r[1] + 0x00000048u;
|
|
/* 027724DC */ rbrew_write32(cpu->mem, _t15, cpu->r[8]);
|
|
/* 027724E0 */ Gambit_fn_02984F3C(cpu);
|
|
/* 027724E4 */ cpu->r[0] = 0x00000006u;
|
|
/* 027724E8 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 027724E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027724EC */ _t17 = cpu->r[1] + 0x00000054u;
|
|
/* 027724EC */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 027724F0 */ _t18 = cpu->r[12] + 0x00000224u;
|
|
/* 027724F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027724F4 */ cpu->ctr = cpu->r[7];
|
|
/* 027724F8 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027724FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02772500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02772504 */ cpu->r[3] = cpu->r[29];
|
|
/* 02772508 */ cpu->r[10] = 0x00000000u;
|
|
/* 0277250C */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 02772510 */ cpu->r[4] = cpu->r[29];
|
|
/* 02772514 */ cpu->r[9] = cpu->r[1] + 0x00000020u;
|
|
/* 02772518 */ cpu->r[6] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0277251C */ cpu->r[7] = cpu->r[1] + 0x00000034u;
|
|
/* 02772520 */ cpu->r[8] = cpu->r[1] + 0x00000050u;
|
|
/* 02772524 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02772524 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 02772528 */ Gambit_fn_023C982C(cpu);
|
|
/* 0277252C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02772530 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02772530 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 02772534 */ _t21 = cpu->r[9] + 0xFFFF8FC4u;
|
|
/* 02772534 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02772538 */ _t22 = cpu->r[9] + 0x00000248u;
|
|
/* 02772538 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0277253C */ Gambit_fn_0297FD44(cpu);
|
|
/* 02772540 */ _t23 = cpu->r[30] + 0x00000008u;
|
|
/* 02772540 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02772544 */ _t24 = cpu->r[12] + 0x000000A4u;
|
|
/* 02772544 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02772548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0277254C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277254C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0277254C */ if (_t26) goto L_027725C8; else goto L_02772550;
|
|
L_02772550: ; // 0x2772550
|
|
/* 02772550 */ cpu->r[3] = 0x00000028u;
|
|
/* 02772554 */ Gambit_fn_02801A78(cpu);
|
|
/* 02772558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0277255C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277255C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0277255C */ if (_t28) goto L_0277256C; else goto L_02772560;
|
|
L_02772560: ; // 0x2772560
|
|
/* 02772560 */ cpu->r[5] = 0x00000000u;
|
|
/* 02772564 */ cpu->r[4] = 0x00000003u;
|
|
/* 02772568 */ Gambit_fn_02398200(cpu);
|
|
L_0277256C: ; // 0x277256c
|
|
/* 0277256C */ _t29 = cpu->r[30] + 0x00000008u;
|
|
/* 0277256C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02772570 */ _t30 = cpu->r[30] + 0x00000080u;
|
|
/* 02772570 */ rbrew_write32(cpu->mem, _t30, cpu->r[3]);
|
|
/* 02772574 */ _t31 = cpu->r[3] + 0x00000014u;
|
|
/* 02772574 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02772578 */ _t32 = cpu->r[30] + 0x00000080u;
|
|
/* 02772578 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0277257C */ cpu->r[4] = 0x00000002u;
|
|
/* 02772580 */ Gambit_fn_023982F0(cpu);
|
|
/* 02772584 */ cpu->r[3] = 0x000001FCu;
|
|
/* 02772588 */ Gambit_fn_02801A78(cpu);
|
|
/* 0277258C */ cpu->r[31] = cpu->r[3];
|
|
/* 0277258C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02772590 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772590 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02772590 */ if (_t34) goto L_027725A0; else goto L_02772594;
|
|
L_02772594: ; // 0x2772594
|
|
/* 02772594 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772598 */ Gambit_fn_02397560(cpu);
|
|
/* 0277259C */ cpu->r[31] = cpu->r[3];
|
|
L_027725A0: ; // 0x27725a0
|
|
/* 027725A0 */ _t35 = cpu->r[30] + 0x00000004u;
|
|
/* 027725A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027725A4 */ _t36 = cpu->r[30] + 0x00000084u;
|
|
/* 027725A4 */ rbrew_write32(cpu->mem, _t36, cpu->r[31]);
|
|
/* 027725A8 */ _t37 = cpu->r[12] + 0x000001ECu;
|
|
/* 027725A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027725AC */ cpu->ctr = cpu->r[9];
|
|
/* 027725B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027725B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027725B8 */ _t38 = cpu->r[30] + 0x00000008u;
|
|
/* 027725B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027725BC */ cpu->r[5] = cpu->r[3];
|
|
/* 027725C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027725C4 */ Gambit_fn_023979A0(cpu);
|
|
L_027725C8: ; // 0x27725c8
|
|
/* 027725C8 */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 027725C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027725CC */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 027725CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027725D0 */ _t41 = cpu->r[7] + 0x0000001Cu;
|
|
/* 027725D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027725D4 */ _t42 = cpu->r[9] + 0x0000001Cu;
|
|
/* 027725D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027725D8 */ cpu->r[5] = 0x00000001u;
|
|
/* 027725DC */ Gambit_fn_02C60BDC(cpu);
|
|
/* 027725E0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 027725E4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027725E8 */ Gambit_fn_021755E8(cpu);
|
|
/* 027725EC */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027725EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027725F0 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000009Cu);
|
|
/* 027725F4 */ cpu->r[4] = cpu->r[8] + 0x101D0000u;
|
|
/* 027725F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027725FC */ cpu->r[4] = cpu->r[4] + 0xFFFF8D08u;
|
|
/* 02772600 */ Gambit_fn_02002684(cpu);
|
|
/* 02772604 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772608 */ Gambit_fn_02175648(cpu);
|
|
/* 0277260C */ _t44 = cpu->r[30] + 0x00000218u;
|
|
/* 0277260C */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02772610 */ cpu->r[5] = cpu->r[3];
|
|
/* 02772614 */ _t45 = cpu->r[30] + 0x00000008u;
|
|
/* 02772614 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02772618 */ Gambit_fn_0216E218(cpu);
|
|
/* 0277261C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772620 */ Gambit_fn_02175678(cpu);
|
|
/* 02772624 */ _t46 = cpu->r[30] + 0x00000214u;
|
|
/* 02772624 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02772628 */ cpu->r[5] = cpu->r[3];
|
|
/* 0277262C */ _t47 = cpu->r[30] + 0x00000008u;
|
|
/* 0277262C */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02772630 */ Gambit_fn_0216E264(cpu);
|
|
/* 02772634 */ _t48 = cpu->r[30] + 0x00000008u;
|
|
/* 02772634 */ cpu->r[4] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02772638 */ cpu->r[3] = 0x00000000u;
|
|
/* 0277263C */ Gambit_fn_02161BFC(cpu);
|
|
/* 02772640 */ _t49 = cpu->r[30] + 0x000002A0u;
|
|
/* 02772640 */ rbrew_write32(cpu->mem, _t49, cpu->r[3]);
|
|
/* 02772644 */ _t50 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02772644 */ cpu->r[3] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02772648 */ Gambit_fn_021626FC(cpu);
|
|
/* 0277264C */ cpu->r[4] = 0x00000002u;
|
|
/* 02772650 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02772654 */ Gambit_fn_021753A0(cpu);
|
|
/* 02772658 */ _t51 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02772658 */ cpu->r[29] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0277265C */ _t52 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0277265C */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02772660 */ _t53 = cpu->r[1] + 0x00000060u;
|
|
/* 02772660 */ cpu->r[30] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02772664 */ cpu->lr = cpu->r[0];
|
|
/* 02772668 */ _t54 = cpu->r[1] + 0x00000064u;
|
|
/* 02772668 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0277266C */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02772670 */ return;
|
|
}
|
|
|
|
// fn_02772674 @ 0x2772674
|
|
void Gambit_fn_02772674(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02772674: ; // 0x2772674
|
|
/* 02772674 */ cpu->r[0] = cpu->lr;
|
|
/* 02772678 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02772678 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772678 */ cpu->r[1] = _t0;
|
|
/* 0277267C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277267C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772680 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772684 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02772684 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02772688 */ cpu->r[4] = 0x00000000u;
|
|
/* 0277268C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0277268C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772690 */ _t4 = cpu->r[31] + 0x00000008u;
|
|
/* 02772690 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02772694 */ cpu->r[5] = cpu->r[4];
|
|
/* 02772698 */ _t5 = cpu->r[31] + 0x00000208u;
|
|
/* 02772698 */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 0277269C */ Gambit_fn_029804F0(cpu);
|
|
/* 027726A0 */ cpu->r[4] = 0x00000000u;
|
|
/* 027726A4 */ _t6 = cpu->r[31] + 0x0000021Cu;
|
|
/* 027726A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027726A8 */ cpu->r[6] = cpu->r[4];
|
|
/* 027726AC */ cpu->r[5] = cpu->r[4];
|
|
/* 027726B0 */ cpu->r[7] = cpu->r[6];
|
|
/* 027726B4 */ Gambit_fn_02163520(cpu);
|
|
/* 027726B8 */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 027726B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027726BC */ cpu->r[4] = 0x00000000u;
|
|
/* 027726C0 */ Gambit_fn_027B9B00(cpu);
|
|
/* 027726C4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027726C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027726C8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027726C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027726CC */ cpu->lr = cpu->r[0];
|
|
/* 027726D0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 027726D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027726D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027726D8 */ return;
|
|
}
|
|
|
|
// fn_02772678 @ 0x2772678
|
|
void Gambit_fn_02772678(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02772678: ; // 0x2772678
|
|
/* 02772678 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02772678 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772678 */ cpu->r[1] = _t0;
|
|
/* 0277267C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277267C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772680 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772684 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02772684 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02772688 */ cpu->r[4] = 0x00000000u;
|
|
/* 0277268C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0277268C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772690 */ _t4 = cpu->r[31] + 0x00000008u;
|
|
/* 02772690 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02772694 */ cpu->r[5] = cpu->r[4];
|
|
/* 02772698 */ _t5 = cpu->r[31] + 0x00000208u;
|
|
/* 02772698 */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 0277269C */ Gambit_fn_029804F0(cpu);
|
|
/* 027726A0 */ cpu->r[4] = 0x00000000u;
|
|
/* 027726A4 */ _t6 = cpu->r[31] + 0x0000021Cu;
|
|
/* 027726A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027726A8 */ cpu->r[6] = cpu->r[4];
|
|
/* 027726AC */ cpu->r[5] = cpu->r[4];
|
|
/* 027726B0 */ cpu->r[7] = cpu->r[6];
|
|
/* 027726B4 */ Gambit_fn_02163520(cpu);
|
|
/* 027726B8 */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 027726B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027726BC */ cpu->r[4] = 0x00000000u;
|
|
/* 027726C0 */ Gambit_fn_027B9B00(cpu);
|
|
/* 027726C4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027726C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027726C8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027726C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027726CC */ cpu->lr = cpu->r[0];
|
|
/* 027726D0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 027726D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027726D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027726D8 */ return;
|
|
}
|
|
|
|
// fn_027726E8 @ 0x27726e8
|
|
void Gambit_fn_027726E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31;
|
|
|
|
L_027726E8: ; // 0x27726e8
|
|
/* 027726E8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027726E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027726E8 */ cpu->r[1] = _t0;
|
|
/* 027726EC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027726EC */ _t2 = _t1 & 0x00000001u;
|
|
/* 027726EC */ if (_t2) goto L_027726F0; else goto L_0277272C;
|
|
L_027726F0: ; // 0x27726f0
|
|
/* 027726F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027726F4 */ _t3 = cpu->r[12] + 0x00001344u;
|
|
/* 027726F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027726F8 */ cpu->r[4] = cpu->r[5];
|
|
/* 027726FC */ cpu->r[0] = 0x00000000u;
|
|
/* 02772700 */ _t4 = cpu->r[12] + 0x00000020u;
|
|
/* 02772700 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02772704 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02772708 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02772708 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0277270C */ Gambit_fn_020248E8(cpu);
|
|
/* 02772710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02772714 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772714 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02772714 */ if (_t7) goto L_027727AC; else goto L_02772718;
|
|
L_02772718: ; // 0x2772718
|
|
/* 02772718 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02772718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0277271C */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0277271C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02772720 */ cpu->lr = cpu->r[0];
|
|
/* 02772724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02772728 */ return;
|
|
L_0277272C: ; // 0x277272c
|
|
/* 0277272C */ cpu->r[11] = 0x00000000u;
|
|
/* 02772730 */ cpu->r[6] = cpu->r[3] + 0x00000260u;
|
|
/* 02772734 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02772738 */ cpu->r[12] = cpu->r[11];
|
|
/* 0277273C */ goto L_02772788;
|
|
L_02772740: ; // 0x2772740
|
|
/* 02772740 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000003u);
|
|
/* 02772744 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772744 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02772744 */ if (_t11) goto L_02772748; else goto L_02772760;
|
|
L_02772748: ; // 0x2772748
|
|
/* 02772748 */ _t12 = cpu->r[6] + cpu->r[0];
|
|
/* 02772748 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0277274C */ cpu->r[7] = cpu->r[6] + cpu->r[0];
|
|
/* 02772750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 02772754 */ _t13 = cpu->r[7] + 0x00000004u;
|
|
/* 02772754 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02772758 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772758 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772758 */ if (_t15) goto L_02772770; else goto L_0277275C;
|
|
L_0277275C: ; // 0x277275c
|
|
/* 0277275C */ goto L_02772774;
|
|
L_02772760: ; // 0x2772760
|
|
/* 02772760 */ _t16 = cpu->r[6] + 0x00000000u;
|
|
/* 02772760 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02772764 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 02772768 */ _t17 = cpu->r[6] + 0x00000004u;
|
|
/* 02772768 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0277276C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277276C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0277276C */ if (_t19) goto L_02772770; else goto L_0277275C;
|
|
L_02772770: ; // 0x2772770
|
|
/* 02772770 */ cpu->r[10] = cpu->r[10] + cpu->r[12];
|
|
L_02772774: ; // 0x2772774
|
|
/* 02772774 */ _t20 = cpu->r[10] + 0x00000000u;
|
|
/* 02772774 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02772778 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[5]);
|
|
/* 0277277C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277277C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0277277C */ if (_t22) goto L_027727B0; else goto L_02772780;
|
|
L_02772780: ; // 0x2772780
|
|
/* 02772780 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02772784 */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
L_02772788: ; // 0x2772788
|
|
/* 02772788 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000003u);
|
|
/* 0277278C */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277278C */ _t24 = _t23 & 0x00000001u;
|
|
/* 0277278C */ if (_t24) goto L_02772790; else goto L_027727A0;
|
|
L_02772790: ; // 0x2772790
|
|
/* 02772790 */ _t25 = cpu->r[6] + cpu->r[0];
|
|
/* 02772790 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02772794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[10]);
|
|
/* 02772798 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772798 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02772798 */ if (_t27) goto L_02772740; else goto L_0277279C;
|
|
L_0277279C: ; // 0x277279c
|
|
/* 0277279C */ goto L_027727AC;
|
|
L_027727A0: ; // 0x27727a0
|
|
/* 027727A0 */ _t28 = cpu->r[6] + 0x00000000u;
|
|
/* 027727A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027727A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[10]);
|
|
/* 027727A8 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027727A8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027727A8 */ if (_t30) goto L_02772740; else goto L_027727AC;
|
|
L_027727AC: ; // 0x27727ac
|
|
/* 027727AC */ cpu->r[11] = 0x00000000u;
|
|
L_027727B0: ; // 0x27727b0
|
|
/* 027727B0 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 027727B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027727B4 */ cpu->lr = cpu->r[0];
|
|
/* 027727B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027727BC */ cpu->r[3] = cpu->r[11];
|
|
/* 027727C0 */ return;
|
|
}
|
|
|
|
// fn_027727C4 @ 0x27727c4
|
|
void Gambit_fn_027727C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_027726DC: ; // 0x27726dc
|
|
/* 027726DC */ cpu->r[0] = cpu->lr;
|
|
/* 027726E0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027726E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027726E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000003u);
|
|
/* 027726E8 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027726E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027726E8 */ cpu->r[1] = _t1;
|
|
/* 027726EC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027726EC */ _t3 = _t2 & 0x00000001u;
|
|
/* 027726EC */ if (_t3) goto L_027726F0; else goto L_0277272C;
|
|
L_027726F0: ; // 0x27726f0
|
|
/* 027726F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027726F4 */ _t4 = cpu->r[12] + 0x00001344u;
|
|
/* 027726F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027726F8 */ cpu->r[4] = cpu->r[5];
|
|
/* 027726FC */ cpu->r[0] = 0x00000000u;
|
|
/* 02772700 */ _t5 = cpu->r[12] + 0x00000020u;
|
|
/* 02772700 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02772704 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02772708 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02772708 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0277270C */ Gambit_fn_020248E8(cpu);
|
|
/* 02772710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02772714 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772714 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02772714 */ if (_t8) goto L_027727AC; else goto L_02772718;
|
|
L_02772718: ; // 0x2772718
|
|
/* 02772718 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02772718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0277271C */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 0277271C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02772720 */ cpu->lr = cpu->r[0];
|
|
/* 02772724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02772728 */ return;
|
|
L_0277272C: ; // 0x277272c
|
|
/* 0277272C */ cpu->r[11] = 0x00000000u;
|
|
/* 02772730 */ cpu->r[6] = cpu->r[3] + 0x00000260u;
|
|
/* 02772734 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02772738 */ cpu->r[12] = cpu->r[11];
|
|
/* 0277273C */ goto L_02772788;
|
|
L_02772740: ; // 0x2772740
|
|
/* 02772740 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000003u);
|
|
/* 02772744 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772744 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02772744 */ if (_t12) goto L_02772748; else goto L_02772760;
|
|
L_02772748: ; // 0x2772748
|
|
/* 02772748 */ _t13 = cpu->r[6] + cpu->r[0];
|
|
/* 02772748 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0277274C */ cpu->r[7] = cpu->r[6] + cpu->r[0];
|
|
/* 02772750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 02772754 */ _t14 = cpu->r[7] + 0x00000004u;
|
|
/* 02772754 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02772758 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772758 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02772758 */ if (_t16) goto L_02772770; else goto L_0277275C;
|
|
L_0277275C: ; // 0x277275c
|
|
/* 0277275C */ goto L_02772774;
|
|
L_02772760: ; // 0x2772760
|
|
/* 02772760 */ _t17 = cpu->r[6] + 0x00000000u;
|
|
/* 02772760 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02772764 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 02772768 */ _t18 = cpu->r[6] + 0x00000004u;
|
|
/* 02772768 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0277276C */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277276C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0277276C */ if (_t20) goto L_02772770; else goto L_0277275C;
|
|
L_02772770: ; // 0x2772770
|
|
/* 02772770 */ cpu->r[10] = cpu->r[10] + cpu->r[12];
|
|
L_02772774: ; // 0x2772774
|
|
/* 02772774 */ _t21 = cpu->r[10] + 0x00000000u;
|
|
/* 02772774 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02772778 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[5]);
|
|
/* 0277277C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277277C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0277277C */ if (_t23) goto L_027727B0; else goto L_02772780;
|
|
L_02772780: ; // 0x2772780
|
|
/* 02772780 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02772784 */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
L_02772788: ; // 0x2772788
|
|
/* 02772788 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000003u);
|
|
/* 0277278C */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277278C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0277278C */ if (_t25) goto L_02772790; else goto L_027727A0;
|
|
L_02772790: ; // 0x2772790
|
|
/* 02772790 */ _t26 = cpu->r[6] + cpu->r[0];
|
|
/* 02772790 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02772794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[10]);
|
|
/* 02772798 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772798 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02772798 */ if (_t28) goto L_02772740; else goto L_0277279C;
|
|
L_0277279C: ; // 0x277279c
|
|
/* 0277279C */ goto L_027727AC;
|
|
L_027727A0: ; // 0x27727a0
|
|
/* 027727A0 */ _t29 = cpu->r[6] + 0x00000000u;
|
|
/* 027727A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027727A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[10]);
|
|
/* 027727A8 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027727A8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027727A8 */ if (_t31) goto L_02772740; else goto L_027727AC;
|
|
L_027727AC: ; // 0x27727ac
|
|
/* 027727AC */ cpu->r[11] = 0x00000000u;
|
|
L_027727B0: ; // 0x27727b0
|
|
/* 027727B0 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 027727B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027727B4 */ cpu->lr = cpu->r[0];
|
|
/* 027727B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027727BC */ cpu->r[3] = cpu->r[11];
|
|
/* 027727C0 */ return;
|
|
L_027727C4: ; // 0x27727c4
|
|
/* 027727C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000004u);
|
|
/* 027727C8 */ cpu->r[12] = cpu->r[3] + 0x00000240u;
|
|
/* 027727CC */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027727CC */ _t34 = _t33 & 0x00000001u;
|
|
/* 027727CC */ if (_t34) goto L_027727D0; else goto L_027727D8;
|
|
L_027727D0: ; // 0x27727d0
|
|
/* 027727D0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027727D4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_027727D8: ; // 0x27727d8
|
|
/* 027727D8 */ _t35 = cpu->r[12] + 0x00000000u;
|
|
/* 027727D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027727DC */ goto L_027726DC;
|
|
}
|
|
|
|
// fn_027727E0 @ 0x27727e0
|
|
void Gambit_fn_027727E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027727E0: ; // 0x27727e0
|
|
/* 027727E0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027727E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027727E0 */ cpu->r[1] = _t0;
|
|
/* 027727E4 */ /* nop */
|
|
/* 027727E8 */ cpu->r[0] = cpu->lr;
|
|
/* 027727EC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 027727EC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027727F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 027727F4 */ _t2 = cpu->r[30] + 0x0000021Cu;
|
|
/* 027727F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027727F8 */ Gambit_fn_02164B84(cpu);
|
|
/* 027727FC */ _t3 = cpu->r[30] + 0x00000220u;
|
|
/* 027727FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02772800 */ cpu->r[3] = 0x00000000u;
|
|
/* 02772804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[10]);
|
|
/* 02772808 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772808 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02772808 */ if (_t5) goto L_02772820; else goto L_0277280C;
|
|
L_0277280C: ; // 0x277280c
|
|
/* 0277280C */ cpu->r[29] = 0x00000000u;
|
|
/* 02772810 */ cpu->r[28] = 0x00000003u;
|
|
/* 02772814 */ cpu->r[27] = cpu->r[29];
|
|
/* 02772818 */ cpu->r[26] = cpu->r[29];
|
|
/* 0277281C */ goto L_0277289C;
|
|
L_02772820: ; // 0x2772820
|
|
/* 02772820 */ cpu->r[11] = 0x00000000u;
|
|
/* 02772824 */ cpu->r[7] = 0x00000001u;
|
|
/* 02772828 */ cpu->r[4] = cpu->r[11];
|
|
/* 0277282C */ cpu->r[12] = 0xFFFFFFFFu;
|
|
L_02772830: ; // 0x2772830
|
|
/* 02772830 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[10]);
|
|
/* 02772834 */ _t6 = cpu->r[30] + 0x00000224u;
|
|
/* 02772834 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02772838 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772838 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02772838 */ if (_t8) goto L_0277283C; else goto L_02772840;
|
|
L_0277283C: ; // 0x277283c
|
|
/* 0277283C */ cpu->r[5] = cpu->r[5] + cpu->r[11];
|
|
L_02772840: ; // 0x2772840
|
|
/* 02772840 */ _t9 = cpu->r[5] + 0x00000004u;
|
|
/* 02772840 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02772844 */ _t10 = cpu->r[30] + 0x00000220u;
|
|
/* 02772844 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02772848 */ _t11 = cpu->r[5] + 0x00000004u;
|
|
/* 02772848 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0277284C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[6]);
|
|
/* 02772850 */ _t12 = cpu->r[30] + 0x00000224u;
|
|
/* 02772850 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02772854 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772854 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02772854 */ if (_t14) goto L_02772858; else goto L_0277285C;
|
|
L_02772858: ; // 0x2772858
|
|
/* 02772858 */ cpu->r[8] = cpu->r[8] + cpu->r[11];
|
|
L_0277285C: ; // 0x277285c
|
|
/* 0277285C */ _t15 = cpu->r[8] + 0x00000000u;
|
|
/* 0277285C */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 02772860 */ _t16 = cpu->r[30] + 0x00000220u;
|
|
/* 02772860 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02772864 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 02772868 */ _t17 = cpu->r[30] + 0x00000224u;
|
|
/* 02772868 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0277286C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277286C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0277286C */ if (_t19) goto L_02772870; else goto L_02772874;
|
|
L_02772870: ; // 0x2772870
|
|
/* 02772870 */ cpu->r[9] = cpu->r[9] + cpu->r[11];
|
|
L_02772874: ; // 0x2772874
|
|
/* 02772874 */ _t20 = cpu->r[9] + 0x00000008u;
|
|
/* 02772874 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[4]);
|
|
/* 02772878 */ _t21 = cpu->r[30] + 0x00000220u;
|
|
/* 02772878 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0277287C */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 02772880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[10]);
|
|
/* 02772884 */ cpu->r[11] = cpu->r[11] + 0x0000000Cu;
|
|
/* 02772888 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772888 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02772888 */ if (_t23) goto L_02772830; else goto L_0277288C;
|
|
L_0277288C: ; // 0x277288c
|
|
/* 0277288C */ cpu->r[29] = 0x00000000u;
|
|
/* 02772890 */ cpu->r[28] = 0x00000003u;
|
|
/* 02772894 */ cpu->r[27] = cpu->r[29];
|
|
/* 02772898 */ cpu->r[26] = cpu->r[29];
|
|
L_0277289C: ; // 0x277289c
|
|
/* 0277289C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 027728A0 */ _t24 = cpu->r[30] + 0x00000224u;
|
|
/* 027728A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027728A4 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027728A4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027728A4 */ if (_t26) goto L_027728A8; else goto L_027728AC;
|
|
L_027728A8: ; // 0x27728a8
|
|
/* 027728A8 */ cpu->r[10] = cpu->r[10] + cpu->r[26];
|
|
L_027728AC: ; // 0x27728ac
|
|
/* 027728AC */ _t27 = cpu->r[10] + 0x00000004u;
|
|
/* 027728AC */ rbrew_write32(cpu->mem, _t27, cpu->r[27]);
|
|
/* 027728B0 */ _t28 = cpu->r[30] + 0x00000220u;
|
|
/* 027728B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027728B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[6]);
|
|
/* 027728B8 */ _t29 = cpu->r[30] + 0x00000224u;
|
|
/* 027728B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027728BC */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027728BC */ _t31 = _t30 & 0x00000001u;
|
|
/* 027728BC */ if (_t31) goto L_027728C0; else goto L_027728C4;
|
|
L_027728C0: ; // 0x27728c0
|
|
/* 027728C0 */ cpu->r[31] = cpu->r[31] + cpu->r[26];
|
|
L_027728C4: ; // 0x27728c4
|
|
/* 027728C4 */ cpu->r[4] = cpu->r[27];
|
|
/* 027728C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027728CC */ Gambit_fn_027727C4(cpu);
|
|
/* 027728D0 */ cpu->r[26] = cpu->r[26] + 0x0000000Cu;
|
|
/* 027728D4 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 027728D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027728D8 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 027728DC */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 027728DC */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 027728E0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027728E4 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027728E4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 027728E4 */ if (_t34) goto L_027728F0; else goto L_027728E8;
|
|
L_027728E8: ; // 0x27728e8
|
|
/* 027728E8 */ _t35 = cpu->r[30] + 0x00000220u;
|
|
/* 027728E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027728EC */ goto L_0277289C;
|
|
L_027728F0: ; // 0x27728f0
|
|
/* 027728F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027728F4 */ _t36 = cpu->r[12] + 0x00001358u;
|
|
/* 027728F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027728F8 */ _t37 = cpu->r[12] + 0x00000288u;
|
|
/* 027728F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027728FC */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02772900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02772904 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02772904 */ rbrew_write32(cpu->mem, _t38, cpu->r[4]);
|
|
/* 02772908 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772908 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02772908 */ if (_t40) goto L_0277290C; else goto L_02772924;
|
|
L_0277290C: ; // 0x277290c
|
|
/* 0277290C */ cpu->r[28] = 0x00000000u;
|
|
/* 02772910 */ cpu->r[12] = 0x00000003u;
|
|
/* 02772914 */ cpu->r[27] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000000Cu);
|
|
/* 02772918 */ cpu->r[4] = cpu->r[28];
|
|
/* 0277291C */ cpu->r[11] = cpu->r[28];
|
|
/* 02772920 */ goto L_02772A30;
|
|
L_02772924: ; // 0x2772924
|
|
/* 02772924 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 02772924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02772928 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277292C */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02772930 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 02772930 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02772934 */ Gambit_fn_02777CF4(cpu);
|
|
/* 02772938 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000000Cu);
|
|
/* 0277293C */ cpu->r[8] = 0x00000000u;
|
|
/* 02772940 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02772944 */ cpu->r[3] = cpu->r[30] + 0x00000260u;
|
|
/* 02772948 */ cpu->r[5] = cpu->r[8];
|
|
/* 0277294C */ goto L_027729F4;
|
|
L_02772950: ; // 0x2772950
|
|
/* 02772950 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02772954 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772954 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02772954 */ if (_t45) goto L_02772958; else goto L_02772974;
|
|
L_02772958: ; // 0x2772958
|
|
/* 02772958 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0277295C */ _t46 = cpu->r[3] + cpu->r[10];
|
|
/* 0277295C */ cpu->r[11] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02772960 */ cpu->r[7] = cpu->r[3] + cpu->r[10];
|
|
/* 02772964 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[11]);
|
|
/* 02772968 */ _t47 = cpu->r[7] + 0x00000004u;
|
|
/* 02772968 */ cpu->r[6] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0277296C */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277296C */ _t49 = _t48 & 0x00000001u;
|
|
/* 0277296C */ if (_t49) goto L_02772984; else goto L_02772970;
|
|
L_02772970: ; // 0x2772970
|
|
/* 02772970 */ goto L_02772988;
|
|
L_02772974: ; // 0x2772974
|
|
/* 02772974 */ _t50 = cpu->r[3] + 0x00000000u;
|
|
/* 02772974 */ cpu->r[11] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02772978 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[11]);
|
|
/* 0277297C */ _t51 = cpu->r[3] + 0x00000004u;
|
|
/* 0277297C */ cpu->r[6] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02772980 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772980 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02772980 */ if (_t53) goto L_02772984; else goto L_02772970;
|
|
L_02772984: ; // 0x2772984
|
|
/* 02772984 */ cpu->r[6] = cpu->r[6] + cpu->r[5];
|
|
L_02772988: ; // 0x2772988
|
|
/* 02772988 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 0277298C */ cpu->r[7] = cpu->r[30] + 0x00000240u;
|
|
/* 02772990 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772990 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02772990 */ if (_t55) goto L_02772994; else goto L_0277299C;
|
|
L_02772994: ; // 0x2772994
|
|
/* 02772994 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02772998 */ cpu->r[7] = cpu->r[7] + cpu->r[12];
|
|
L_0277299C: ; // 0x277299c
|
|
/* 0277299C */ _t56 = cpu->r[6] + 0x00000000u;
|
|
/* 0277299C */ cpu->r[6] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027729A0 */ _t57 = cpu->r[7] + 0x00000000u;
|
|
/* 027729A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027729A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 027729A8 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027729A8 */ _t59 = _t58 & 0x00000001u;
|
|
/* 027729A8 */ if (_t59) goto L_027729EC; else goto L_027729AC;
|
|
L_027729AC: ; // 0x27729ac
|
|
/* 027729AC */ _t60 = cpu->r[30] + 0x00000220u;
|
|
/* 027729AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027729B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 027729B4 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027729B4 */ _t62 = _t61 & 0x00000001u;
|
|
/* 027729B4 */ if (_t62) goto L_027729B8; else goto L_02772B18;
|
|
L_027729B8: ; // 0x27729b8
|
|
/* 027729B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 027729BC */ _t63 = cpu->r[30] + 0x00000224u;
|
|
/* 027729BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027729C0 */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027729C0 */ _t65 = _t64 & 0x00000001u;
|
|
/* 027729C0 */ if (_t65) goto L_027729C4; else goto L_027729C8;
|
|
L_027729C4: ; // 0x27729c4
|
|
/* 027729C4 */ cpu->r[10] = cpu->r[10] + cpu->r[4];
|
|
L_027729C8: ; // 0x27729c8
|
|
/* 027729C8 */ _t66 = cpu->r[10] + 0x00000000u;
|
|
/* 027729C8 */ rbrew_write32(cpu->mem, _t66, cpu->r[8]);
|
|
/* 027729CC */ _t67 = cpu->r[30] + 0x00000220u;
|
|
/* 027729CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027729D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[9]);
|
|
/* 027729D4 */ _t68 = cpu->r[30] + 0x00000224u;
|
|
/* 027729D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027729D8 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027729D8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 027729D8 */ if (_t70) goto L_027729DC; else goto L_027729E0;
|
|
L_027729DC: ; // 0x27729dc
|
|
/* 027729DC */ cpu->r[12] = cpu->r[12] + cpu->r[4];
|
|
L_027729E0: ; // 0x27729e0
|
|
/* 027729E0 */ _t71 = cpu->r[12] + 0x00000004u;
|
|
/* 027729E0 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 027729E4 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027729E8 */ cpu->r[4] = cpu->r[4] + 0x0000000Cu;
|
|
L_027729EC: ; // 0x27729ec
|
|
/* 027729EC */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 027729F0 */ cpu->r[5] = cpu->r[5] + 0x00000004u;
|
|
L_027729F4: ; // 0x27729f4
|
|
/* 027729F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 027729F8 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027729F8 */ _t73 = _t72 & 0x00000001u;
|
|
/* 027729F8 */ if (_t73) goto L_027729FC; else goto L_02772A10;
|
|
L_027729FC: ; // 0x27729fc
|
|
/* 027729FC */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02772A00 */ _t74 = cpu->r[3] + cpu->r[11];
|
|
/* 02772A00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02772A04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[12]);
|
|
/* 02772A08 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772A08 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02772A08 */ if (_t76) goto L_02772950; else goto L_02772A0C;
|
|
L_02772A0C: ; // 0x2772a0c
|
|
/* 02772A0C */ goto L_02772A1C;
|
|
L_02772A10: ; // 0x2772a10
|
|
/* 02772A10 */ _t77 = cpu->r[3] + 0x00000000u;
|
|
/* 02772A10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02772A14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[12]);
|
|
/* 02772A18 */ _t78 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772A18 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02772A18 */ if (_t79) goto L_02772950; else goto L_02772A1C;
|
|
L_02772A1C: ; // 0x2772a1c
|
|
/* 02772A1C */ cpu->r[28] = 0x00000000u;
|
|
/* 02772A20 */ cpu->r[27] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000000Cu);
|
|
/* 02772A24 */ cpu->r[12] = 0x00000003u;
|
|
/* 02772A28 */ cpu->r[4] = cpu->r[28];
|
|
/* 02772A2C */ cpu->r[11] = cpu->r[28];
|
|
L_02772A30: ; // 0x2772a30
|
|
/* 02772A30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 02772A34 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772A34 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02772A34 */ if (_t81) goto L_02772B04; else goto L_02772A38;
|
|
L_02772A38: ; // 0x2772a38
|
|
/* 02772A38 */ cpu->r[31] = 0x00000000u;
|
|
/* 02772A3C */ cpu->r[3] = cpu->r[30] + 0x00000260u;
|
|
/* 02772A40 */ cpu->r[25] = cpu->r[27];
|
|
/* 02772A44 */ cpu->r[26] = cpu->r[31];
|
|
/* 02772A48 */ goto L_02772AE0;
|
|
L_02772A4C: ; // 0x2772a4c
|
|
/* 02772A4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02772A50 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772A50 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02772A50 */ if (_t83) goto L_02772A54; else goto L_02772A6C;
|
|
L_02772A54: ; // 0x2772a54
|
|
/* 02772A54 */ _t84 = cpu->r[3] + cpu->r[11];
|
|
/* 02772A54 */ cpu->r[5] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02772A58 */ cpu->r[8] = cpu->r[3] + cpu->r[11];
|
|
/* 02772A5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[5]);
|
|
/* 02772A60 */ _t85 = cpu->r[8] + 0x00000004u;
|
|
/* 02772A60 */ cpu->r[7] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02772A64 */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772A64 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02772A64 */ if (_t87) goto L_02772A7C; else goto L_02772A68;
|
|
L_02772A68: ; // 0x2772a68
|
|
/* 02772A68 */ goto L_02772A80;
|
|
L_02772A6C: ; // 0x2772a6c
|
|
/* 02772A6C */ _t88 = cpu->r[3] + 0x00000000u;
|
|
/* 02772A6C */ cpu->r[5] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02772A70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[5]);
|
|
/* 02772A74 */ _t89 = cpu->r[3] + 0x00000004u;
|
|
/* 02772A74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02772A78 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772A78 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02772A78 */ if (_t91) goto L_02772A7C; else goto L_02772A68;
|
|
L_02772A7C: ; // 0x2772a7c
|
|
/* 02772A7C */ cpu->r[7] = cpu->r[7] + cpu->r[26];
|
|
L_02772A80: ; // 0x2772a80
|
|
/* 02772A80 */ _t92 = cpu->r[7] + 0x00000000u;
|
|
/* 02772A80 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02772A84 */ cpu->r[10] = cpu->r[30] + cpu->r[4];
|
|
/* 02772A88 */ _t93 = cpu->r[10] + 0x00000240u;
|
|
/* 02772A88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02772A8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02772A90 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772A90 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02772A90 */ if (_t95) goto L_02772AD8; else goto L_02772A94;
|
|
L_02772A94: ; // 0x2772a94
|
|
/* 02772A94 */ _t96 = cpu->r[30] + 0x00000220u;
|
|
/* 02772A94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02772A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 02772A9C */ _t97 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772A9C */ _t98 = _t97 & 0x00000001u;
|
|
/* 02772A9C */ if (_t98) goto L_02772AA0; else goto L_02772B18;
|
|
L_02772AA0: ; // 0x2772aa0
|
|
/* 02772AA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 02772AA4 */ _t99 = cpu->r[30] + 0x00000224u;
|
|
/* 02772AA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02772AA8 */ _t100 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772AA8 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02772AA8 */ if (_t101) goto L_02772AAC; else goto L_02772AB0;
|
|
L_02772AAC: ; // 0x2772aac
|
|
/* 02772AAC */ cpu->r[8] = cpu->r[8] + cpu->r[25];
|
|
L_02772AB0: ; // 0x2772ab0
|
|
/* 02772AB0 */ _t102 = cpu->r[8] + 0x00000000u;
|
|
/* 02772AB0 */ rbrew_write32(cpu->mem, _t102, cpu->r[31]);
|
|
/* 02772AB4 */ _t103 = cpu->r[30] + 0x00000220u;
|
|
/* 02772AB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02772AB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[9]);
|
|
/* 02772ABC */ _t104 = cpu->r[30] + 0x00000224u;
|
|
/* 02772ABC */ cpu->r[9] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02772AC0 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772AC0 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02772AC0 */ if (_t106) goto L_02772AC4; else goto L_02772AC8;
|
|
L_02772AC4: ; // 0x2772ac4
|
|
/* 02772AC4 */ cpu->r[9] = cpu->r[9] + cpu->r[25];
|
|
L_02772AC8: ; // 0x2772ac8
|
|
/* 02772AC8 */ _t107 = cpu->r[9] + 0x00000004u;
|
|
/* 02772AC8 */ rbrew_write32(cpu->mem, _t107, cpu->r[28]);
|
|
/* 02772ACC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02772AD0 */ cpu->r[27] = cpu->r[27] + 0x0000000Cu;
|
|
/* 02772AD4 */ cpu->r[25] = cpu->r[25] + 0x0000000Cu;
|
|
L_02772AD8: ; // 0x2772ad8
|
|
/* 02772AD8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02772ADC */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
L_02772AE0: ; // 0x2772ae0
|
|
/* 02772AE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000003u);
|
|
/* 02772AE4 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772AE4 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02772AE4 */ if (_t109) goto L_02772AE8; else goto L_02772AF8;
|
|
L_02772AE8: ; // 0x2772ae8
|
|
/* 02772AE8 */ _t110 = cpu->r[3] + cpu->r[11];
|
|
/* 02772AE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02772AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 02772AF0 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772AF0 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02772AF0 */ if (_t112) goto L_02772A4C; else goto L_02772AF4;
|
|
L_02772AF4: ; // 0x2772af4
|
|
/* 02772AF4 */ goto L_02772B04;
|
|
L_02772AF8: ; // 0x2772af8
|
|
/* 02772AF8 */ _t113 = cpu->r[3] + 0x00000000u;
|
|
/* 02772AF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02772AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 02772B00 */ _t114 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772B00 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02772B00 */ if (_t115) goto L_02772A4C; else goto L_02772B04;
|
|
L_02772B04: ; // 0x2772b04
|
|
/* 02772B04 */ cpu->r[4] = cpu->r[4] + 0x00000004u;
|
|
/* 02772B08 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02772B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02772B0C */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02772B10 */ cpu->r[11] = cpu->r[11] + 0x00000008u;
|
|
/* 02772B14 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772B14 */ _t117 = _t116 & 0x00000001u;
|
|
/* 02772B14 */ if (_t117) goto L_02772B18; else goto L_02772A30;
|
|
L_02772B18: ; // 0x2772b18
|
|
/* 02772B18 */ /* nop */
|
|
/* 02772B1C */ _t118 = cpu->r[1] + 0x00000034u;
|
|
/* 02772B1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 02772B20 */ cpu->lr = cpu->r[0];
|
|
/* 02772B24 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02772B28 */ return;
|
|
}
|
|
|
|
// fn_02772B2C @ 0x2772b2c
|
|
void Gambit_fn_02772B2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_02772B2C: ; // 0x2772b2c
|
|
/* 02772B2C */ cpu->r[0] = cpu->lr;
|
|
/* 02772B30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02772B30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772B30 */ cpu->r[1] = _t0;
|
|
/* 02772B34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772B34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772B38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772B3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02772B3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02772B40 */ Gambit_fn_02772674(cpu);
|
|
/* 02772B44 */ cpu->r[11] = 0x10100000u;
|
|
/* 02772B48 */ cpu->r[7] = cpu->r[31] + 0x00000228u;
|
|
/* 02772B4C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02772B50 */ _t3 = cpu->r[11] + 0x00001CF4u;
|
|
/* 02772B50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02772B54 */ cpu->r[4] = cpu->r[7];
|
|
/* 02772B58 */ _t4 = cpu->r[31] + 0x0000029Cu;
|
|
/* 02772B58 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02772B5C */ cpu->r[11] = 0x00000000u;
|
|
/* 02772B60 */ _t5 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02772B60 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02772B64 */ goto L_02772B70;
|
|
L_02772B68: ; // 0x2772b68
|
|
/* 02772B68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 02772B6C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772B6C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02772B6C */ if (_t7) goto L_02772B70; else goto L_02772B78;
|
|
L_02772B70: ; // 0x2772b70
|
|
/* 02772B70 */ cpu->r[6] = cpu->r[4];
|
|
/* 02772B74 */ goto L_02772B7C;
|
|
L_02772B78: ; // 0x2772b78
|
|
/* 02772B78 */ cpu->r[6] = cpu->r[7];
|
|
L_02772B7C: ; // 0x2772b7c
|
|
/* 02772B7C */ _t8 = cpu->r[6] + 0x00000000u;
|
|
/* 02772B7C */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02772B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02772B84 */ cpu->r[9] = 0x00000000u;
|
|
/* 02772B88 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02772B88 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02772B88 */ if (_t10) goto L_02772B8C; else goto L_02772BA4;
|
|
L_02772B8C: ; // 0x2772b8c
|
|
/* 02772B8C */ cpu->ctr = cpu->r[10];
|
|
/* 02772B90 */ cpu->r[0] = 0x00000000u;
|
|
L_02772B94: ; // 0x2772b94
|
|
/* 02772B94 */ _t11 = cpu->r[6] + 0x00000004u;
|
|
/* 02772B94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02772B98 */ _t12 = cpu->r[12] + cpu->r[9];
|
|
/* 02772B98 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 02772B9C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02772BA0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02772BA0 */ _t13 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02772BA0 */ _t14 = _t13 >> (0x00000002u & 31u);
|
|
/* 02772BA0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772BA0 */ if (_t15) goto L_02772B94; else goto L_02772BA4;
|
|
L_02772BA4: ; // 0x2772ba4
|
|
/* 02772BA4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02772BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02772BAC */ cpu->r[4] = cpu->r[4] + 0x00000008u;
|
|
/* 02772BB0 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772BB0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02772BB0 */ if (_t17) goto L_02772B68; else goto L_02772BB4;
|
|
L_02772BB4: ; // 0x2772bb4
|
|
/* 02772BB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772BB8 */ Gambit_fn_027727E0(cpu);
|
|
/* 02772BBC */ cpu->r[3] = cpu->r[31] + 0x000001D0u;
|
|
/* 02772BC0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02772BC4 */ Gambit_fn_02065038(cpu);
|
|
/* 02772BC8 */ _t18 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772BC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02772BCC */ cpu->r[4] = 0x00000000u;
|
|
/* 02772BD0 */ Gambit_fn_02163E5C(cpu);
|
|
/* 02772BD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772BD8 */ cpu->r[4] = 0x00000003u;
|
|
/* 02772BDC */ Gambit_fn_027727C4(cpu);
|
|
/* 02772BE0 */ cpu->r[4] = cpu->r[3];
|
|
/* 02772BE4 */ _t19 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772BE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02772BE8 */ Gambit_fn_02164128(cpu);
|
|
/* 02772BEC */ _t20 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772BEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02772BF0 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02772BF4 */ Gambit_fn_0216416C(cpu);
|
|
/* 02772BF8 */ cpu->r[4] = 0x00000001u;
|
|
/* 02772BFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02772C00 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02772C00 */ rbrew_write32(cpu->mem, _t21, cpu->r[4]);
|
|
/* 02772C04 */ Gambit_fn_027727C4(cpu);
|
|
/* 02772C08 */ cpu->r[5] = cpu->r[3];
|
|
/* 02772C0C */ _t22 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772C0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02772C10 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02772C14 */ Gambit_fn_021643AC(cpu);
|
|
/* 02772C18 */ cpu->r[4] = 0x00000000u;
|
|
/* 02772C1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02772C20 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02772C20 */ rbrew_write32(cpu->mem, _t23, cpu->r[4]);
|
|
/* 02772C24 */ Gambit_fn_027727C4(cpu);
|
|
/* 02772C28 */ cpu->r[5] = cpu->r[3];
|
|
/* 02772C2C */ _t24 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772C2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02772C30 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02772C34 */ Gambit_fn_021643AC(cpu);
|
|
/* 02772C38 */ cpu->r[4] = 0x00000002u;
|
|
/* 02772C3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02772C40 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02772C40 */ rbrew_write32(cpu->mem, _t25, cpu->r[4]);
|
|
/* 02772C44 */ Gambit_fn_027727C4(cpu);
|
|
/* 02772C48 */ cpu->r[5] = cpu->r[3];
|
|
/* 02772C4C */ _t26 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772C4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02772C50 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02772C54 */ Gambit_fn_021643AC(cpu);
|
|
/* 02772C58 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02772C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02772C5C */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772C5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02772C60 */ cpu->lr = cpu->r[0];
|
|
/* 02772C64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02772C68 */ return;
|
|
}
|
|
|
|
// fn_02772B30 @ 0x2772b30
|
|
void Gambit_fn_02772B30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_02772B30: ; // 0x2772b30
|
|
/* 02772B30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02772B30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772B30 */ cpu->r[1] = _t0;
|
|
/* 02772B34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772B34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772B38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772B3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02772B3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02772B40 */ Gambit_fn_02772674(cpu);
|
|
/* 02772B44 */ cpu->r[11] = 0x10100000u;
|
|
/* 02772B48 */ cpu->r[7] = cpu->r[31] + 0x00000228u;
|
|
/* 02772B4C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02772B50 */ _t3 = cpu->r[11] + 0x00001CF4u;
|
|
/* 02772B50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02772B54 */ cpu->r[4] = cpu->r[7];
|
|
/* 02772B58 */ _t4 = cpu->r[31] + 0x0000029Cu;
|
|
/* 02772B58 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02772B5C */ cpu->r[11] = 0x00000000u;
|
|
/* 02772B60 */ _t5 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02772B60 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02772B64 */ goto L_02772B70;
|
|
L_02772B68: ; // 0x2772b68
|
|
/* 02772B68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 02772B6C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772B6C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02772B6C */ if (_t7) goto L_02772B70; else goto L_02772B78;
|
|
L_02772B70: ; // 0x2772b70
|
|
/* 02772B70 */ cpu->r[6] = cpu->r[4];
|
|
/* 02772B74 */ goto L_02772B7C;
|
|
L_02772B78: ; // 0x2772b78
|
|
/* 02772B78 */ cpu->r[6] = cpu->r[7];
|
|
L_02772B7C: ; // 0x2772b7c
|
|
/* 02772B7C */ _t8 = cpu->r[6] + 0x00000000u;
|
|
/* 02772B7C */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02772B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02772B84 */ cpu->r[9] = 0x00000000u;
|
|
/* 02772B88 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02772B88 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02772B88 */ if (_t10) goto L_02772B8C; else goto L_02772BA4;
|
|
L_02772B8C: ; // 0x2772b8c
|
|
/* 02772B8C */ cpu->ctr = cpu->r[10];
|
|
/* 02772B90 */ cpu->r[0] = 0x00000000u;
|
|
L_02772B94: ; // 0x2772b94
|
|
/* 02772B94 */ _t11 = cpu->r[6] + 0x00000004u;
|
|
/* 02772B94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02772B98 */ _t12 = cpu->r[12] + cpu->r[9];
|
|
/* 02772B98 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 02772B9C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02772BA0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02772BA0 */ _t13 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02772BA0 */ _t14 = _t13 >> (0x00000002u & 31u);
|
|
/* 02772BA0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772BA0 */ if (_t15) goto L_02772B94; else goto L_02772BA4;
|
|
L_02772BA4: ; // 0x2772ba4
|
|
/* 02772BA4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02772BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02772BAC */ cpu->r[4] = cpu->r[4] + 0x00000008u;
|
|
/* 02772BB0 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772BB0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02772BB0 */ if (_t17) goto L_02772B68; else goto L_02772BB4;
|
|
L_02772BB4: ; // 0x2772bb4
|
|
/* 02772BB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772BB8 */ Gambit_fn_027727E0(cpu);
|
|
/* 02772BBC */ cpu->r[3] = cpu->r[31] + 0x000001D0u;
|
|
/* 02772BC0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02772BC4 */ Gambit_fn_02065038(cpu);
|
|
/* 02772BC8 */ _t18 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772BC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02772BCC */ cpu->r[4] = 0x00000000u;
|
|
/* 02772BD0 */ Gambit_fn_02163E5C(cpu);
|
|
/* 02772BD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772BD8 */ cpu->r[4] = 0x00000003u;
|
|
/* 02772BDC */ Gambit_fn_027727C4(cpu);
|
|
/* 02772BE0 */ cpu->r[4] = cpu->r[3];
|
|
/* 02772BE4 */ _t19 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772BE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02772BE8 */ Gambit_fn_02164128(cpu);
|
|
/* 02772BEC */ _t20 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772BEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02772BF0 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02772BF4 */ Gambit_fn_0216416C(cpu);
|
|
/* 02772BF8 */ cpu->r[4] = 0x00000001u;
|
|
/* 02772BFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02772C00 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02772C00 */ rbrew_write32(cpu->mem, _t21, cpu->r[4]);
|
|
/* 02772C04 */ Gambit_fn_027727C4(cpu);
|
|
/* 02772C08 */ cpu->r[5] = cpu->r[3];
|
|
/* 02772C0C */ _t22 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772C0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02772C10 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02772C14 */ Gambit_fn_021643AC(cpu);
|
|
/* 02772C18 */ cpu->r[4] = 0x00000000u;
|
|
/* 02772C1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02772C20 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02772C20 */ rbrew_write32(cpu->mem, _t23, cpu->r[4]);
|
|
/* 02772C24 */ Gambit_fn_027727C4(cpu);
|
|
/* 02772C28 */ cpu->r[5] = cpu->r[3];
|
|
/* 02772C2C */ _t24 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772C2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02772C30 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02772C34 */ Gambit_fn_021643AC(cpu);
|
|
/* 02772C38 */ cpu->r[4] = 0x00000002u;
|
|
/* 02772C3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02772C40 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02772C40 */ rbrew_write32(cpu->mem, _t25, cpu->r[4]);
|
|
/* 02772C44 */ Gambit_fn_027727C4(cpu);
|
|
/* 02772C48 */ cpu->r[5] = cpu->r[3];
|
|
/* 02772C4C */ _t26 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772C4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02772C50 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02772C54 */ Gambit_fn_021643AC(cpu);
|
|
/* 02772C58 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02772C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02772C5C */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772C5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02772C60 */ cpu->lr = cpu->r[0];
|
|
/* 02772C64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02772C68 */ return;
|
|
}
|
|
|
|
// fn_02772C6C @ 0x2772c6c
|
|
void Gambit_fn_02772C6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_02772C6C: ; // 0x2772c6c
|
|
/* 02772C6C */ cpu->r[0] = cpu->lr;
|
|
/* 02772C70 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02772C70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772C70 */ cpu->r[1] = _t0;
|
|
/* 02772C74 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02772C74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772C78 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02772C78 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02772C7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02772C80 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772C80 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772C84 */ _t4 = cpu->r[31] + 0x00000220u;
|
|
/* 02772C84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02772C88 */ cpu->r[30] = 0x00000000u;
|
|
/* 02772C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02772C90 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772C90 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02772C90 */ if (_t6) goto L_02772C94; else goto L_02772D88;
|
|
L_02772C94: ; // 0x2772c94
|
|
/* 02772C94 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 02772C94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02772C98 */ cpu->r[9] = 0x00000000u;
|
|
L_02772C9C: ; // 0x2772c9c
|
|
/* 02772C9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772CA0 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CA0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02772CA0 */ if (_t9) goto L_02772CA4; else goto L_02772CB4;
|
|
L_02772CA4: ; // 0x2772ca4
|
|
/* 02772CA4 */ _t10 = cpu->r[11] + cpu->r[9];
|
|
/* 02772CA4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02772CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02772CAC */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CAC */ _t12 = _t11 & 0x00000001u;
|
|
/* 02772CAC */ if (_t12) goto L_02772D78; else goto L_02772CB0;
|
|
L_02772CB0: ; // 0x2772cb0
|
|
/* 02772CB0 */ goto L_02772CC0;
|
|
L_02772CB4: ; // 0x2772cb4
|
|
/* 02772CB4 */ _t13 = cpu->r[11] + 0x00000000u;
|
|
/* 02772CB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02772CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02772CBC */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CBC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772CBC */ if (_t15) goto L_02772D78; else goto L_02772CC0;
|
|
L_02772CC0: ; // 0x2772cc0
|
|
/* 02772CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772CC4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CC4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02772CC4 */ if (_t17) goto L_02772CC8; else goto L_02772CDC;
|
|
L_02772CC8: ; // 0x2772cc8
|
|
/* 02772CC8 */ cpu->r[8] = cpu->r[11] + cpu->r[9];
|
|
/* 02772CCC */ _t18 = cpu->r[8] + 0x00000008u;
|
|
/* 02772CCC */ cpu->r[7] = rbrew_read8(cpu->mem, _t18);
|
|
/* 02772CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02772CD4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772CD4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02772CD4 */ if (_t20) goto L_02772CE8; else goto L_02772CD8;
|
|
L_02772CD8: ; // 0x2772cd8
|
|
/* 02772CD8 */ goto L_02772D78;
|
|
L_02772CDC: ; // 0x2772cdc
|
|
/* 02772CDC */ _t21 = cpu->r[11] + 0x00000008u;
|
|
/* 02772CDC */ cpu->r[7] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02772CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02772CE4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772CE4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02772CE4 */ if (_t23) goto L_02772CE8; else goto L_02772D78;
|
|
L_02772CE8: ; // 0x2772ce8
|
|
/* 02772CE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772CEC */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CEC */ _t25 = _t24 & 0x00000001u;
|
|
/* 02772CEC */ if (_t25) goto L_02772CF0; else goto L_02772D10;
|
|
L_02772CF0: ; // 0x2772cf0
|
|
/* 02772CF0 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000000Cu);
|
|
/* 02772CF4 */ _t26 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772CF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02772CF8 */ cpu->r[12] = cpu->r[11] + cpu->r[8];
|
|
/* 02772CFC */ _t27 = cpu->r[12] + 0x00000004u;
|
|
/* 02772CFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02772D00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772D04 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02772D04 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 02772D08 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772D08 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02772D08 */ if (_t30) goto L_02772D24; else goto L_02772D0C;
|
|
L_02772D0C: ; // 0x2772d0c
|
|
/* 02772D0C */ goto L_02772D2C;
|
|
L_02772D10: ; // 0x2772d10
|
|
/* 02772D10 */ _t31 = cpu->r[11] + 0x00000004u;
|
|
/* 02772D10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02772D14 */ _t32 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772D14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02772D18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772D1C */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02772D1C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 02772D20 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772D20 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02772D20 */ if (_t35) goto L_02772D24; else goto L_02772D0C;
|
|
L_02772D24: ; // 0x2772d24
|
|
/* 02772D24 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000000Cu);
|
|
/* 02772D28 */ cpu->r[11] = cpu->r[11] + cpu->r[0];
|
|
L_02772D2C: ; // 0x2772d2c
|
|
/* 02772D2C */ _t36 = cpu->r[11] + 0x00000000u;
|
|
/* 02772D2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02772D30 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 02772D34 */ cpu->r[6] = 0x00000000u;
|
|
/* 02772D38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02772D3C */ Gambit_fn_0216489C(cpu);
|
|
/* 02772D40 */ _t37 = cpu->r[31] + 0x00000220u;
|
|
/* 02772D40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02772D44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]);
|
|
/* 02772D48 */ _t38 = cpu->r[31] + 0x00000224u;
|
|
/* 02772D48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02772D4C */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772D4C */ _t40 = _t39 & 0x00000001u;
|
|
/* 02772D4C */ if (_t40) goto L_02772D50; else goto L_02772D58;
|
|
L_02772D50: ; // 0x2772d50
|
|
/* 02772D50 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000000Cu);
|
|
/* 02772D54 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02772D58: ; // 0x2772d58
|
|
/* 02772D58 */ cpu->r[0] = 0x00000001u;
|
|
/* 02772D5C */ _t41 = cpu->r[12] + 0x00000008u;
|
|
/* 02772D5C */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[0]);
|
|
/* 02772D60 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772D60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02772D64 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 02772D64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02772D68 */ cpu->lr = cpu->r[0];
|
|
/* 02772D6C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02772D6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02772D70 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02772D74 */ return;
|
|
L_02772D78: ; // 0x2772d78
|
|
/* 02772D78 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02772D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02772D80 */ cpu->r[9] = cpu->r[9] + 0x0000000Cu;
|
|
/* 02772D84 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772D84 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02772D84 */ if (_t46) goto L_02772C9C; else goto L_02772D88;
|
|
L_02772D88: ; // 0x2772d88
|
|
/* 02772D88 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772D88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02772D8C */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 02772D8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02772D90 */ cpu->lr = cpu->r[0];
|
|
/* 02772D94 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 02772D94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02772D98 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02772D9C */ return;
|
|
}
|
|
|
|
// fn_02772C70 @ 0x2772c70
|
|
void Gambit_fn_02772C70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_02772C70: ; // 0x2772c70
|
|
/* 02772C70 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02772C70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772C70 */ cpu->r[1] = _t0;
|
|
/* 02772C74 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02772C74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772C78 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02772C78 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02772C7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02772C80 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772C80 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772C84 */ _t4 = cpu->r[31] + 0x00000220u;
|
|
/* 02772C84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02772C88 */ cpu->r[30] = 0x00000000u;
|
|
/* 02772C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02772C90 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772C90 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02772C90 */ if (_t6) goto L_02772C94; else goto L_02772D88;
|
|
L_02772C94: ; // 0x2772c94
|
|
/* 02772C94 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 02772C94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02772C98 */ cpu->r[9] = 0x00000000u;
|
|
L_02772C9C: ; // 0x2772c9c
|
|
/* 02772C9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772CA0 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CA0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02772CA0 */ if (_t9) goto L_02772CA4; else goto L_02772CB4;
|
|
L_02772CA4: ; // 0x2772ca4
|
|
/* 02772CA4 */ _t10 = cpu->r[11] + cpu->r[9];
|
|
/* 02772CA4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02772CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02772CAC */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CAC */ _t12 = _t11 & 0x00000001u;
|
|
/* 02772CAC */ if (_t12) goto L_02772D78; else goto L_02772CB0;
|
|
L_02772CB0: ; // 0x2772cb0
|
|
/* 02772CB0 */ goto L_02772CC0;
|
|
L_02772CB4: ; // 0x2772cb4
|
|
/* 02772CB4 */ _t13 = cpu->r[11] + 0x00000000u;
|
|
/* 02772CB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02772CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02772CBC */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CBC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772CBC */ if (_t15) goto L_02772D78; else goto L_02772CC0;
|
|
L_02772CC0: ; // 0x2772cc0
|
|
/* 02772CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772CC4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CC4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02772CC4 */ if (_t17) goto L_02772CC8; else goto L_02772CDC;
|
|
L_02772CC8: ; // 0x2772cc8
|
|
/* 02772CC8 */ cpu->r[8] = cpu->r[11] + cpu->r[9];
|
|
/* 02772CCC */ _t18 = cpu->r[8] + 0x00000008u;
|
|
/* 02772CCC */ cpu->r[7] = rbrew_read8(cpu->mem, _t18);
|
|
/* 02772CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02772CD4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772CD4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02772CD4 */ if (_t20) goto L_02772CE8; else goto L_02772CD8;
|
|
L_02772CD8: ; // 0x2772cd8
|
|
/* 02772CD8 */ goto L_02772D78;
|
|
L_02772CDC: ; // 0x2772cdc
|
|
/* 02772CDC */ _t21 = cpu->r[11] + 0x00000008u;
|
|
/* 02772CDC */ cpu->r[7] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02772CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02772CE4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772CE4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02772CE4 */ if (_t23) goto L_02772CE8; else goto L_02772D78;
|
|
L_02772CE8: ; // 0x2772ce8
|
|
/* 02772CE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772CEC */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772CEC */ _t25 = _t24 & 0x00000001u;
|
|
/* 02772CEC */ if (_t25) goto L_02772CF0; else goto L_02772D10;
|
|
L_02772CF0: ; // 0x2772cf0
|
|
/* 02772CF0 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000000Cu);
|
|
/* 02772CF4 */ _t26 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772CF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02772CF8 */ cpu->r[12] = cpu->r[11] + cpu->r[8];
|
|
/* 02772CFC */ _t27 = cpu->r[12] + 0x00000004u;
|
|
/* 02772CFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02772D00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772D04 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02772D04 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 02772D08 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772D08 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02772D08 */ if (_t30) goto L_02772D24; else goto L_02772D0C;
|
|
L_02772D0C: ; // 0x2772d0c
|
|
/* 02772D0C */ goto L_02772D2C;
|
|
L_02772D10: ; // 0x2772d10
|
|
/* 02772D10 */ _t31 = cpu->r[11] + 0x00000004u;
|
|
/* 02772D10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02772D14 */ _t32 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02772D14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02772D18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02772D1C */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02772D1C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 02772D20 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772D20 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02772D20 */ if (_t35) goto L_02772D24; else goto L_02772D0C;
|
|
L_02772D24: ; // 0x2772d24
|
|
/* 02772D24 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000000Cu);
|
|
/* 02772D28 */ cpu->r[11] = cpu->r[11] + cpu->r[0];
|
|
L_02772D2C: ; // 0x2772d2c
|
|
/* 02772D2C */ _t36 = cpu->r[11] + 0x00000000u;
|
|
/* 02772D2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02772D30 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 02772D34 */ cpu->r[6] = 0x00000000u;
|
|
/* 02772D38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02772D3C */ Gambit_fn_0216489C(cpu);
|
|
/* 02772D40 */ _t37 = cpu->r[31] + 0x00000220u;
|
|
/* 02772D40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02772D44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]);
|
|
/* 02772D48 */ _t38 = cpu->r[31] + 0x00000224u;
|
|
/* 02772D48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02772D4C */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772D4C */ _t40 = _t39 & 0x00000001u;
|
|
/* 02772D4C */ if (_t40) goto L_02772D50; else goto L_02772D58;
|
|
L_02772D50: ; // 0x2772d50
|
|
/* 02772D50 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000000Cu);
|
|
/* 02772D54 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02772D58: ; // 0x2772d58
|
|
/* 02772D58 */ cpu->r[0] = 0x00000001u;
|
|
/* 02772D5C */ _t41 = cpu->r[12] + 0x00000008u;
|
|
/* 02772D5C */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[0]);
|
|
/* 02772D60 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772D60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02772D64 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 02772D64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02772D68 */ cpu->lr = cpu->r[0];
|
|
/* 02772D6C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02772D6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02772D70 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02772D74 */ return;
|
|
L_02772D78: ; // 0x2772d78
|
|
/* 02772D78 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02772D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02772D80 */ cpu->r[9] = cpu->r[9] + 0x0000000Cu;
|
|
/* 02772D84 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772D84 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02772D84 */ if (_t46) goto L_02772C9C; else goto L_02772D88;
|
|
L_02772D88: ; // 0x2772d88
|
|
/* 02772D88 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772D88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02772D8C */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 02772D8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02772D90 */ cpu->lr = cpu->r[0];
|
|
/* 02772D94 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 02772D94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02772D98 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02772D9C */ return;
|
|
}
|
|
|
|
// fn_02772DA0 @ 0x2772da0
|
|
void Gambit_fn_02772DA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_02772DA0: ; // 0x2772da0
|
|
/* 02772DA0 */ cpu->r[0] = cpu->lr;
|
|
/* 02772DA4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02772DA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772DA4 */ cpu->r[1] = _t0;
|
|
/* 02772DA8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02772DA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772DAC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02772DAC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02772DB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772DB4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772DB4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772DB8 */ _t4 = cpu->r[31] + 0x000001DCu;
|
|
/* 02772DB8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02772DBC */ /* nop */
|
|
/* 02772DC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 02772DC4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772DC4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02772DC4 */ if (_t6) goto L_02772E4C; else goto L_02772DC8;
|
|
L_02772DC8: ; // 0x2772dc8
|
|
/* 02772DC8 */ _t7 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02772DC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02772DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02772DD0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02772DD4 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772DD4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02772DD4 */ if (_t9) goto L_02772DD8; else goto L_02772DDC;
|
|
L_02772DD8: ; // 0x2772dd8
|
|
/* 02772DD8 */ _t10 = cpu->r[31] + 0x0000025Cu;
|
|
/* 02772DD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
L_02772DDC: ; // 0x2772ddc
|
|
/* 02772DDC */ cpu->r[12] = 0x101C0000u;
|
|
/* 02772DE0 */ _t11 = cpu->r[12] + 0x00001344u;
|
|
/* 02772DE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02772DE4 */ cpu->r[0] = 0x00000000u;
|
|
/* 02772DE8 */ _t12 = cpu->r[12] + 0x00000020u;
|
|
/* 02772DE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02772DEC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02772DF0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02772DF0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02772DF4 */ Gambit_fn_020248E8(cpu);
|
|
/* 02772DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02772DFC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772DFC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772DFC */ if (_t15) goto L_02772E20; else goto L_02772E00;
|
|
L_02772E00: ; // 0x2772e00
|
|
/* 02772E00 */ _t16 = cpu->r[3] + 0x00000100u;
|
|
/* 02772E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02772E04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 02772E08 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772E08 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02772E08 */ if (_t18) goto L_02772E20; else goto L_02772E0C;
|
|
L_02772E0C: ; // 0x2772e0c
|
|
/* 02772E0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 02772E10 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02772E10 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02772E10 */ if (_t20) goto L_02772E20; else goto L_02772E14;
|
|
L_02772E14: ; // 0x2772e14
|
|
/* 02772E14 */ cpu->r[7] = 0x10100000u;
|
|
/* 02772E18 */ cpu->r[7] = cpu->r[7] + 0x00001D23u;
|
|
/* 02772E1C */ _t21 = cpu->r[7] + cpu->r[0];
|
|
/* 02772E1C */ cpu->r[30] = rbrew_read8(cpu->mem, _t21);
|
|
L_02772E20: ; // 0x2772e20
|
|
/* 02772E20 */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 02772E20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02772E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02772E28 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E28 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02772E28 */ if (_t24) goto L_02772E3C; else goto L_02772E2C;
|
|
L_02772E2C: ; // 0x2772e2c
|
|
/* 02772E2C */ cpu->r[3] = cpu->r[31];
|
|
/* 02772E30 */ Gambit_fn_02002700(cpu);
|
|
/* 02772E34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[30]);
|
|
/* 02772E38 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E38 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02772E38 */ if (_t26) goto L_02772E4C; else goto L_02772E3C;
|
|
L_02772E3C: ; // 0x2772e3c
|
|
/* 02772E3C */ cpu->r[5] = 0x00000000u;
|
|
/* 02772E40 */ cpu->r[4] = cpu->r[30];
|
|
/* 02772E44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772E48 */ Gambit_fn_02002728(cpu);
|
|
L_02772E4C: ; // 0x2772e4c
|
|
/* 02772E4C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772E4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02772E50 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02772E50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02772E54 */ cpu->lr = cpu->r[0];
|
|
/* 02772E58 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 02772E58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02772E5C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02772E60 */ return;
|
|
}
|
|
|
|
// fn_02772DA4 @ 0x2772da4
|
|
void Gambit_fn_02772DA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_02772DA4: ; // 0x2772da4
|
|
/* 02772DA4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02772DA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772DA4 */ cpu->r[1] = _t0;
|
|
/* 02772DA8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02772DA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772DAC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02772DAC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02772DB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772DB4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772DB4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772DB8 */ _t4 = cpu->r[31] + 0x000001DCu;
|
|
/* 02772DB8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02772DBC */ /* nop */
|
|
/* 02772DC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 02772DC4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772DC4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02772DC4 */ if (_t6) goto L_02772E4C; else goto L_02772DC8;
|
|
L_02772DC8: ; // 0x2772dc8
|
|
/* 02772DC8 */ _t7 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02772DC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02772DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02772DD0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02772DD4 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772DD4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02772DD4 */ if (_t9) goto L_02772DD8; else goto L_02772DDC;
|
|
L_02772DD8: ; // 0x2772dd8
|
|
/* 02772DD8 */ _t10 = cpu->r[31] + 0x0000025Cu;
|
|
/* 02772DD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
L_02772DDC: ; // 0x2772ddc
|
|
/* 02772DDC */ cpu->r[12] = 0x101C0000u;
|
|
/* 02772DE0 */ _t11 = cpu->r[12] + 0x00001344u;
|
|
/* 02772DE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02772DE4 */ cpu->r[0] = 0x00000000u;
|
|
/* 02772DE8 */ _t12 = cpu->r[12] + 0x00000020u;
|
|
/* 02772DE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02772DEC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02772DF0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02772DF0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02772DF4 */ Gambit_fn_020248E8(cpu);
|
|
/* 02772DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02772DFC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772DFC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772DFC */ if (_t15) goto L_02772E20; else goto L_02772E00;
|
|
L_02772E00: ; // 0x2772e00
|
|
/* 02772E00 */ _t16 = cpu->r[3] + 0x00000100u;
|
|
/* 02772E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02772E04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 02772E08 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772E08 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02772E08 */ if (_t18) goto L_02772E20; else goto L_02772E0C;
|
|
L_02772E0C: ; // 0x2772e0c
|
|
/* 02772E0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 02772E10 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02772E10 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02772E10 */ if (_t20) goto L_02772E20; else goto L_02772E14;
|
|
L_02772E14: ; // 0x2772e14
|
|
/* 02772E14 */ cpu->r[7] = 0x10100000u;
|
|
/* 02772E18 */ cpu->r[7] = cpu->r[7] + 0x00001D23u;
|
|
/* 02772E1C */ _t21 = cpu->r[7] + cpu->r[0];
|
|
/* 02772E1C */ cpu->r[30] = rbrew_read8(cpu->mem, _t21);
|
|
L_02772E20: ; // 0x2772e20
|
|
/* 02772E20 */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 02772E20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02772E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02772E28 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E28 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02772E28 */ if (_t24) goto L_02772E3C; else goto L_02772E2C;
|
|
L_02772E2C: ; // 0x2772e2c
|
|
/* 02772E2C */ cpu->r[3] = cpu->r[31];
|
|
/* 02772E30 */ Gambit_fn_02002700(cpu);
|
|
/* 02772E34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[30]);
|
|
/* 02772E38 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E38 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02772E38 */ if (_t26) goto L_02772E4C; else goto L_02772E3C;
|
|
L_02772E3C: ; // 0x2772e3c
|
|
/* 02772E3C */ cpu->r[5] = 0x00000000u;
|
|
/* 02772E40 */ cpu->r[4] = cpu->r[30];
|
|
/* 02772E44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772E48 */ Gambit_fn_02002728(cpu);
|
|
L_02772E4C: ; // 0x2772e4c
|
|
/* 02772E4C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772E4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02772E50 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02772E50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02772E54 */ cpu->lr = cpu->r[0];
|
|
/* 02772E58 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 02772E58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02772E5C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02772E60 */ return;
|
|
}
|
|
|
|
// fn_02772E64 @ 0x2772e64
|
|
void Gambit_fn_02772E64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02772E64: ; // 0x2772e64
|
|
/* 02772E64 */ cpu->r[0] = cpu->lr;
|
|
/* 02772E68 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02772E68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772E68 */ cpu->r[1] = _t0;
|
|
/* 02772E6C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772E6C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772E70 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772E74 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02772E74 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02772E78 */ _t3 = cpu->r[31] + 0x000001DCu;
|
|
/* 02772E78 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02772E7C */ /* nop */
|
|
/* 02772E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02772E84 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E84 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02772E84 */ if (_t5) goto L_02772EDC; else goto L_02772E88;
|
|
L_02772E88: ; // 0x2772e88
|
|
/* 02772E88 */ _t6 = cpu->r[31] + 0x00000208u;
|
|
/* 02772E88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02772E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02772E90 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E90 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02772E90 */ if (_t8) goto L_02772EBC; else goto L_02772E94;
|
|
L_02772E94: ; // 0x2772e94
|
|
/* 02772E94 */ _t9 = cpu->r[12] + 0x00000088u;
|
|
/* 02772E94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02772E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02772E9C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E9C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02772E9C */ if (_t11) goto L_02772EA0; else goto L_02772EBC;
|
|
L_02772EA0: ; // 0x2772ea0
|
|
/* 02772EA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772EA4 */ Gambit_fn_02772DA0(cpu);
|
|
/* 02772EA8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02772EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02772EAC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772EAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02772EB0 */ cpu->lr = cpu->r[0];
|
|
/* 02772EB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02772EB8 */ return;
|
|
L_02772EBC: ; // 0x2772ebc
|
|
/* 02772EBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02772EC0 */ Gambit_fn_02002700(cpu);
|
|
/* 02772EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02772EC8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772EC8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772EC8 */ if (_t15) goto L_02772EDC; else goto L_02772ECC;
|
|
L_02772ECC: ; // 0x2772ecc
|
|
/* 02772ECC */ cpu->r[4] = 0x00000000u;
|
|
/* 02772ED0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772ED4 */ cpu->r[5] = cpu->r[4];
|
|
/* 02772ED8 */ Gambit_fn_02002728(cpu);
|
|
L_02772EDC: ; // 0x2772edc
|
|
/* 02772EDC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02772EDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02772EE0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772EE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02772EE4 */ cpu->lr = cpu->r[0];
|
|
/* 02772EE8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02772EEC */ return;
|
|
}
|
|
|
|
// fn_02772E68 @ 0x2772e68
|
|
void Gambit_fn_02772E68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02772E68: ; // 0x2772e68
|
|
/* 02772E68 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02772E68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772E68 */ cpu->r[1] = _t0;
|
|
/* 02772E6C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772E6C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772E70 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772E74 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02772E74 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02772E78 */ _t3 = cpu->r[31] + 0x000001DCu;
|
|
/* 02772E78 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02772E7C */ /* nop */
|
|
/* 02772E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02772E84 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E84 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02772E84 */ if (_t5) goto L_02772EDC; else goto L_02772E88;
|
|
L_02772E88: ; // 0x2772e88
|
|
/* 02772E88 */ _t6 = cpu->r[31] + 0x00000208u;
|
|
/* 02772E88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02772E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02772E90 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E90 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02772E90 */ if (_t8) goto L_02772EBC; else goto L_02772E94;
|
|
L_02772E94: ; // 0x2772e94
|
|
/* 02772E94 */ _t9 = cpu->r[12] + 0x00000088u;
|
|
/* 02772E94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02772E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02772E9C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772E9C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02772E9C */ if (_t11) goto L_02772EA0; else goto L_02772EBC;
|
|
L_02772EA0: ; // 0x2772ea0
|
|
/* 02772EA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772EA4 */ Gambit_fn_02772DA0(cpu);
|
|
/* 02772EA8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02772EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02772EAC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772EAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02772EB0 */ cpu->lr = cpu->r[0];
|
|
/* 02772EB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02772EB8 */ return;
|
|
L_02772EBC: ; // 0x2772ebc
|
|
/* 02772EBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02772EC0 */ Gambit_fn_02002700(cpu);
|
|
/* 02772EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02772EC8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772EC8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772EC8 */ if (_t15) goto L_02772EDC; else goto L_02772ECC;
|
|
L_02772ECC: ; // 0x2772ecc
|
|
/* 02772ECC */ cpu->r[4] = 0x00000000u;
|
|
/* 02772ED0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772ED4 */ cpu->r[5] = cpu->r[4];
|
|
/* 02772ED8 */ Gambit_fn_02002728(cpu);
|
|
L_02772EDC: ; // 0x2772edc
|
|
/* 02772EDC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02772EDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02772EE0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772EE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02772EE4 */ cpu->lr = cpu->r[0];
|
|
/* 02772EE8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02772EEC */ return;
|
|
}
|
|
|
|
// fn_02772EF0 @ 0x2772ef0
|
|
void Gambit_fn_02772EF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_02772EF0: ; // 0x2772ef0
|
|
/* 02772EF0 */ cpu->r[0] = cpu->lr;
|
|
/* 02772EF4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02772EF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772EF4 */ cpu->r[1] = _t0;
|
|
/* 02772EF8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02772EF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772EFC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02772EFC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02772F00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772F04 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772F04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772F08 */ _t4 = cpu->r[31] + 0x000001DCu;
|
|
/* 02772F08 */ cpu->r[10] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02772F0C */ /* nop */
|
|
/* 02772F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 02772F14 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772F14 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02772F14 */ if (_t6) goto L_02772F18; else goto L_02772F24;
|
|
L_02772F18: ; // 0x2772f18
|
|
/* 02772F18 */ cpu->r[3] = cpu->r[31] + 0x000001D0u;
|
|
/* 02772F1C */ cpu->r[4] = 0x00000000u;
|
|
/* 02772F20 */ Gambit_fn_02065038(cpu);
|
|
L_02772F24: ; // 0x2772f24
|
|
/* 02772F24 */ _t7 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02772F24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02772F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02772F2C */ cpu->r[30] = 0x00000000u;
|
|
/* 02772F30 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772F30 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02772F30 */ if (_t9) goto L_02772F34; else goto L_02772F38;
|
|
L_02772F34: ; // 0x2772f34
|
|
/* 02772F34 */ _t10 = cpu->r[31] + 0x0000025Cu;
|
|
/* 02772F34 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
L_02772F38: ; // 0x2772f38
|
|
/* 02772F38 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02772F3C */ _t11 = cpu->r[12] + 0x00001344u;
|
|
/* 02772F3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02772F40 */ cpu->r[0] = 0x00000000u;
|
|
/* 02772F44 */ _t12 = cpu->r[12] + 0x00000020u;
|
|
/* 02772F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02772F48 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02772F4C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02772F4C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02772F50 */ Gambit_fn_020248E8(cpu);
|
|
/* 02772F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02772F58 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772F58 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772F58 */ if (_t15) goto L_02772F7C; else goto L_02772F5C;
|
|
L_02772F5C: ; // 0x2772f5c
|
|
/* 02772F5C */ _t16 = cpu->r[3] + 0x00000100u;
|
|
/* 02772F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02772F60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 02772F64 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772F64 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02772F64 */ if (_t18) goto L_02772F7C; else goto L_02772F68;
|
|
L_02772F68: ; // 0x2772f68
|
|
/* 02772F68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 02772F6C */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02772F6C */ _t20 = _t19 & 0x00000001u;
|
|
/* 02772F6C */ if (_t20) goto L_02772F7C; else goto L_02772F70;
|
|
L_02772F70: ; // 0x2772f70
|
|
/* 02772F70 */ cpu->r[7] = 0x10100000u;
|
|
/* 02772F74 */ cpu->r[7] = cpu->r[7] + 0x00001D27u;
|
|
/* 02772F78 */ _t21 = cpu->r[7] + cpu->r[0];
|
|
/* 02772F78 */ cpu->r[30] = rbrew_read8(cpu->mem, _t21);
|
|
L_02772F7C: ; // 0x2772f7c
|
|
/* 02772F7C */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 02772F7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02772F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02772F84 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772F84 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02772F84 */ if (_t24) goto L_02772F98; else goto L_02772F88;
|
|
L_02772F88: ; // 0x2772f88
|
|
/* 02772F88 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772F8C */ Gambit_fn_02002700(cpu);
|
|
/* 02772F90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[30]);
|
|
/* 02772F94 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772F94 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02772F94 */ if (_t26) goto L_02772FA8; else goto L_02772F98;
|
|
L_02772F98: ; // 0x2772f98
|
|
/* 02772F98 */ cpu->r[5] = 0x00000000u;
|
|
/* 02772F9C */ cpu->r[4] = cpu->r[30];
|
|
/* 02772FA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772FA4 */ Gambit_fn_02002728(cpu);
|
|
L_02772FA8: ; // 0x2772fa8
|
|
/* 02772FA8 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772FA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02772FAC */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02772FAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02772FB0 */ cpu->lr = cpu->r[0];
|
|
/* 02772FB4 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 02772FB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02772FB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02772FBC */ return;
|
|
}
|
|
|
|
// fn_02772EF4 @ 0x2772ef4
|
|
void Gambit_fn_02772EF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
|
|
|
|
L_02772EF4: ; // 0x2772ef4
|
|
/* 02772EF4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02772EF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772EF4 */ cpu->r[1] = _t0;
|
|
/* 02772EF8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02772EF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02772EFC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02772EFC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02772F00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02772F04 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772F04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772F08 */ _t4 = cpu->r[31] + 0x000001DCu;
|
|
/* 02772F08 */ cpu->r[10] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02772F0C */ /* nop */
|
|
/* 02772F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 02772F14 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772F14 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02772F14 */ if (_t6) goto L_02772F18; else goto L_02772F24;
|
|
L_02772F18: ; // 0x2772f18
|
|
/* 02772F18 */ cpu->r[3] = cpu->r[31] + 0x000001D0u;
|
|
/* 02772F1C */ cpu->r[4] = 0x00000000u;
|
|
/* 02772F20 */ Gambit_fn_02065038(cpu);
|
|
L_02772F24: ; // 0x2772f24
|
|
/* 02772F24 */ _t7 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02772F24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02772F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02772F2C */ cpu->r[30] = 0x00000000u;
|
|
/* 02772F30 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772F30 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02772F30 */ if (_t9) goto L_02772F34; else goto L_02772F38;
|
|
L_02772F34: ; // 0x2772f34
|
|
/* 02772F34 */ _t10 = cpu->r[31] + 0x0000025Cu;
|
|
/* 02772F34 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
L_02772F38: ; // 0x2772f38
|
|
/* 02772F38 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02772F3C */ _t11 = cpu->r[12] + 0x00001344u;
|
|
/* 02772F3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02772F40 */ cpu->r[0] = 0x00000000u;
|
|
/* 02772F44 */ _t12 = cpu->r[12] + 0x00000020u;
|
|
/* 02772F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02772F48 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02772F4C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02772F4C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02772F50 */ Gambit_fn_020248E8(cpu);
|
|
/* 02772F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02772F58 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772F58 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02772F58 */ if (_t15) goto L_02772F7C; else goto L_02772F5C;
|
|
L_02772F5C: ; // 0x2772f5c
|
|
/* 02772F5C */ _t16 = cpu->r[3] + 0x00000100u;
|
|
/* 02772F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02772F60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 02772F64 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02772F64 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02772F64 */ if (_t18) goto L_02772F7C; else goto L_02772F68;
|
|
L_02772F68: ; // 0x2772f68
|
|
/* 02772F68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 02772F6C */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02772F6C */ _t20 = _t19 & 0x00000001u;
|
|
/* 02772F6C */ if (_t20) goto L_02772F7C; else goto L_02772F70;
|
|
L_02772F70: ; // 0x2772f70
|
|
/* 02772F70 */ cpu->r[7] = 0x10100000u;
|
|
/* 02772F74 */ cpu->r[7] = cpu->r[7] + 0x00001D27u;
|
|
/* 02772F78 */ _t21 = cpu->r[7] + cpu->r[0];
|
|
/* 02772F78 */ cpu->r[30] = rbrew_read8(cpu->mem, _t21);
|
|
L_02772F7C: ; // 0x2772f7c
|
|
/* 02772F7C */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 02772F7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02772F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02772F84 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772F84 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02772F84 */ if (_t24) goto L_02772F98; else goto L_02772F88;
|
|
L_02772F88: ; // 0x2772f88
|
|
/* 02772F88 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772F8C */ Gambit_fn_02002700(cpu);
|
|
/* 02772F90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[30]);
|
|
/* 02772F94 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772F94 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02772F94 */ if (_t26) goto L_02772FA8; else goto L_02772F98;
|
|
L_02772F98: ; // 0x2772f98
|
|
/* 02772F98 */ cpu->r[5] = 0x00000000u;
|
|
/* 02772F9C */ cpu->r[4] = cpu->r[30];
|
|
/* 02772FA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02772FA4 */ Gambit_fn_02002728(cpu);
|
|
L_02772FA8: ; // 0x2772fa8
|
|
/* 02772FA8 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02772FA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02772FAC */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02772FAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02772FB0 */ cpu->lr = cpu->r[0];
|
|
/* 02772FB4 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 02772FB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02772FB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02772FBC */ return;
|
|
}
|
|
|
|
// fn_02772FC0 @ 0x2772fc0
|
|
void Gambit_fn_02772FC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02772FC0: ; // 0x2772fc0
|
|
/* 02772FC0 */ cpu->r[0] = cpu->lr;
|
|
/* 02772FC4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02772FC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772FC4 */ cpu->r[1] = _t0;
|
|
/* 02772FC8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02772FC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02772FCC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772FCC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02772FD0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02772FD4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02772FD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772FD8 */ _t4 = cpu->r[30] + 0x000001DCu;
|
|
/* 02772FD8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02772FDC */ /* nop */
|
|
/* 02772FE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02772FE4 */ cpu->r[31] = cpu->r[4];
|
|
/* 02772FE8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772FE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02772FE8 */ if (_t6) goto L_02772FEC; else goto L_02772FF8;
|
|
L_02772FEC: ; // 0x2772fec
|
|
/* 02772FEC */ cpu->r[3] = cpu->r[30] + 0x000001D0u;
|
|
/* 02772FF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02772FF4 */ Gambit_fn_02065038(cpu);
|
|
L_02772FF8: ; // 0x2772ff8
|
|
/* 02772FF8 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02772FF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02772FFC */ cpu->r[31] = 0x00000000u;
|
|
/* 02773000 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000002u);
|
|
/* 02773004 */ _t8 = cpu->r[30] + 0x00000008u;
|
|
/* 02773004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02773008 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02773008 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02773008 */ if (_t10) goto L_02773014; else goto L_0277300C;
|
|
L_0277300C: ; // 0x277300c
|
|
/* 0277300C */ cpu->r[11] = cpu->r[12] + 0x10100000u;
|
|
/* 02773010 */ _t11 = cpu->r[11] + 0x00001D2Cu;
|
|
/* 02773010 */ cpu->r[31] = rbrew_read8(cpu->mem, _t11);
|
|
L_02773014: ; // 0x2773014
|
|
/* 02773014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773018 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773018 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02773018 */ if (_t13) goto L_0277302C; else goto L_0277301C;
|
|
L_0277301C: ; // 0x277301c
|
|
/* 0277301C */ cpu->r[3] = cpu->r[30];
|
|
/* 02773020 */ Gambit_fn_02002700(cpu);
|
|
/* 02773024 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]);
|
|
/* 02773028 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773028 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02773028 */ if (_t15) goto L_0277303C; else goto L_0277302C;
|
|
L_0277302C: ; // 0x277302c
|
|
/* 0277302C */ cpu->r[5] = 0x00000000u;
|
|
/* 02773030 */ cpu->r[4] = cpu->r[31];
|
|
/* 02773034 */ cpu->r[3] = cpu->r[30];
|
|
/* 02773038 */ Gambit_fn_02002728(cpu);
|
|
L_0277303C: ; // 0x277303c
|
|
/* 0277303C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0277303C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02773040 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02773040 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02773044 */ cpu->lr = cpu->r[0];
|
|
/* 02773048 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773048 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0277304C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773050 */ return;
|
|
}
|
|
|
|
// fn_02772FC4 @ 0x2772fc4
|
|
void Gambit_fn_02772FC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02772FC4: ; // 0x2772fc4
|
|
/* 02772FC4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02772FC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02772FC4 */ cpu->r[1] = _t0;
|
|
/* 02772FC8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02772FC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02772FCC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02772FCC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02772FD0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02772FD4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02772FD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02772FD8 */ _t4 = cpu->r[30] + 0x000001DCu;
|
|
/* 02772FD8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02772FDC */ /* nop */
|
|
/* 02772FE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02772FE4 */ cpu->r[31] = cpu->r[4];
|
|
/* 02772FE8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02772FE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02772FE8 */ if (_t6) goto L_02772FEC; else goto L_02772FF8;
|
|
L_02772FEC: ; // 0x2772fec
|
|
/* 02772FEC */ cpu->r[3] = cpu->r[30] + 0x000001D0u;
|
|
/* 02772FF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02772FF4 */ Gambit_fn_02065038(cpu);
|
|
L_02772FF8: ; // 0x2772ff8
|
|
/* 02772FF8 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02772FF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02772FFC */ cpu->r[31] = 0x00000000u;
|
|
/* 02773000 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000002u);
|
|
/* 02773004 */ _t8 = cpu->r[30] + 0x00000008u;
|
|
/* 02773004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02773008 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02773008 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02773008 */ if (_t10) goto L_02773014; else goto L_0277300C;
|
|
L_0277300C: ; // 0x277300c
|
|
/* 0277300C */ cpu->r[11] = cpu->r[12] + 0x10100000u;
|
|
/* 02773010 */ _t11 = cpu->r[11] + 0x00001D2Cu;
|
|
/* 02773010 */ cpu->r[31] = rbrew_read8(cpu->mem, _t11);
|
|
L_02773014: ; // 0x2773014
|
|
/* 02773014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773018 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773018 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02773018 */ if (_t13) goto L_0277302C; else goto L_0277301C;
|
|
L_0277301C: ; // 0x277301c
|
|
/* 0277301C */ cpu->r[3] = cpu->r[30];
|
|
/* 02773020 */ Gambit_fn_02002700(cpu);
|
|
/* 02773024 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]);
|
|
/* 02773028 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773028 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02773028 */ if (_t15) goto L_0277303C; else goto L_0277302C;
|
|
L_0277302C: ; // 0x277302c
|
|
/* 0277302C */ cpu->r[5] = 0x00000000u;
|
|
/* 02773030 */ cpu->r[4] = cpu->r[31];
|
|
/* 02773034 */ cpu->r[3] = cpu->r[30];
|
|
/* 02773038 */ Gambit_fn_02002728(cpu);
|
|
L_0277303C: ; // 0x277303c
|
|
/* 0277303C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0277303C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02773040 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02773040 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02773044 */ cpu->lr = cpu->r[0];
|
|
/* 02773048 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773048 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0277304C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773050 */ return;
|
|
}
|
|
|
|
// fn_02773054 @ 0x2773054
|
|
void Gambit_fn_02773054(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_02773054: ; // 0x2773054
|
|
/* 02773054 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02773054 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773054 */ cpu->r[1] = _t0;
|
|
/* 02773058 */ /* nop */
|
|
/* 0277305C */ cpu->r[0] = cpu->lr;
|
|
/* 02773060 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02773060 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02773064 */ cpu->r[31] = cpu->r[3];
|
|
/* 02773068 */ _t2 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02773068 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0277306C */ Gambit_fn_021649EC(cpu);
|
|
/* 02773070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773074 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773074 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02773074 */ if (_t4) goto L_02773078; else goto L_02773080;
|
|
L_02773078: ; // 0x2773078
|
|
/* 02773078 */ cpu->r[3] = cpu->r[31];
|
|
/* 0277307C */ Gambit_fn_02772C6C(cpu);
|
|
L_02773080: ; // 0x2773080
|
|
/* 02773080 */ cpu->r[3] = cpu->r[31];
|
|
/* 02773084 */ Gambit_fn_020026A4(cpu);
|
|
/* 02773088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0277308C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277308C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0277308C */ if (_t6) goto L_02773098; else goto L_02773090;
|
|
L_02773090: ; // 0x2773090
|
|
/* 02773090 */ cpu->r[3] = cpu->r[31];
|
|
/* 02773094 */ Gambit_fn_02772E64(cpu);
|
|
L_02773098: ; // 0x2773098
|
|
/* 02773098 */ cpu->r[25] = 0x00000000u;
|
|
/* 0277309C */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 0277309C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027730A0 */ cpu->r[4] = cpu->r[25];
|
|
/* 027730A4 */ Gambit_fn_029805E0(cpu);
|
|
/* 027730A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027730AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027730AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 027730AC */ if (_t9) goto L_02773378; else goto L_027730B0;
|
|
L_027730B0: ; // 0x27730b0
|
|
/* 027730B0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 027730B4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 027730B8 */ _t10 = cpu->r[9] + 0xFFFF8FC4u;
|
|
/* 027730B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027730BC */ _t11 = cpu->r[10] + 0xFFFF8FC8u;
|
|
/* 027730BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027730C0 */ cpu->r[8] = cpu->r[9] + cpu->r[10];
|
|
/* 027730C4 */ _t12 = cpu->r[8] + 0x00000104u;
|
|
/* 027730C4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027730C8 */ _t13 = cpu->r[9] + 0x00000030u;
|
|
/* 027730C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027730CC */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027730D0 */ _t14 = cpu->r[10] + cpu->r[0];
|
|
/* 027730D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027730D4 */ _t15 = cpu->r[12] + 0x00000004u;
|
|
/* 027730D4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027730D8 */ _t16 = cpu->r[5] + 0x00000000u;
|
|
/* 027730D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027730DC */ _t17 = cpu->r[3] + 0x00000270u;
|
|
/* 027730DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027730E0 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 027730E0 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 027730E4 */ Gambit_fn_0277CE44(cpu);
|
|
/* 027730E8 */ cpu->r[23] = cpu->r[3];
|
|
/* 027730EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027730F0 */ cpu->r[29] = cpu->r[31] + 0x00000240u;
|
|
/* 027730F4 */ cpu->r[12] = cpu->r[31] + 0x0000024Cu;
|
|
/* 027730F8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027730F8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027730F8 */ if (_t20) goto L_027730FC; else goto L_02773178;
|
|
L_027730FC: ; // 0x27730fc
|
|
/* 027730FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02773100 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 02773100 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02773104 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02773104 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02773104 */ if (_t23) goto L_02773198; else goto L_02773108;
|
|
L_02773108: ; // 0x2773108
|
|
/* 02773108 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[23]);
|
|
/* 0277310C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277310C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0277310C */ if (_t25) goto L_027731D0; else goto L_02773110;
|
|
L_02773110: ; // 0x2773110
|
|
/* 02773110 */ cpu->r[4] = 0x00000003u;
|
|
/* 02773114 */ cpu->r[3] = cpu->r[31];
|
|
/* 02773118 */ _t26 = cpu->r[12] + 0x00000000u;
|
|
/* 02773118 */ rbrew_write32(cpu->mem, _t26, cpu->r[23]);
|
|
/* 0277311C */ Gambit_fn_027727C4(cpu);
|
|
/* 02773120 */ cpu->r[4] = cpu->r[3];
|
|
/* 02773124 */ _t27 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02773124 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02773128 */ Gambit_fn_02164128(cpu);
|
|
/* 0277312C */ _t28 = cpu->r[31] + 0x0000029Cu;
|
|
/* 0277312C */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02773130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu);
|
|
/* 02773134 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773134 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02773134 */ if (_t30) goto L_02773160; else goto L_02773138;
|
|
L_02773138: ; // 0x2773138
|
|
/* 02773138 */ cpu->r[3] = cpu->r[31];
|
|
/* 0277313C */ Gambit_fn_02002700(cpu);
|
|
/* 02773140 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000004u);
|
|
/* 02773144 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02773144 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02773144 */ if (_t32) goto L_02773160; else goto L_02773148;
|
|
L_02773148: ; // 0x2773148
|
|
/* 02773148 */ cpu->r[3] = cpu->r[31];
|
|
/* 0277314C */ Gambit_fn_02772DA0(cpu);
|
|
/* 02773150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02773154 */ cpu->r[22] = 0x00000000u;
|
|
/* 02773158 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02773158 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02773158 */ if (_t34) goto L_027732E4; else goto L_0277315C;
|
|
L_0277315C: ; // 0x277315c
|
|
/* 0277315C */ goto L_027731DC;
|
|
L_02773160: ; // 0x2773160
|
|
/* 02773160 */ cpu->r[3] = cpu->r[31];
|
|
/* 02773164 */ Gambit_fn_02772EF0(cpu);
|
|
/* 02773168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0277316C */ cpu->r[22] = 0x00000000u;
|
|
/* 02773170 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02773170 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02773170 */ if (_t36) goto L_027732E4; else goto L_02773174;
|
|
L_02773174: ; // 0x2773174
|
|
/* 02773174 */ goto L_027731DC;
|
|
L_02773178: ; // 0x2773178
|
|
/* 02773178 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0277317C */ _t37 = cpu->r[12] + 0x00000000u;
|
|
/* 0277317C */ rbrew_write32(cpu->mem, _t37, cpu->r[4]);
|
|
/* 02773180 */ _t38 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02773180 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02773184 */ Gambit_fn_02164128(cpu);
|
|
/* 02773188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0277318C */ cpu->r[22] = 0x00000000u;
|
|
/* 02773190 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02773190 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02773190 */ if (_t40) goto L_027732E4; else goto L_02773194;
|
|
L_02773194: ; // 0x2773194
|
|
/* 02773194 */ goto L_027731DC;
|
|
L_02773198: ; // 0x2773198
|
|
/* 02773198 */ _t41 = cpu->r[31] + 0x0000025Cu;
|
|
/* 02773198 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0277319C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 027731A0 */ cpu->r[7] = cpu->r[31] + 0x0000025Cu;
|
|
/* 027731A4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027731A4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 027731A4 */ if (_t43) goto L_027731D0; else goto L_027731A8;
|
|
L_027731A8: ; // 0x27731a8
|
|
/* 027731A8 */ _t44 = cpu->r[7] + 0x00000000u;
|
|
/* 027731A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027731AC */ cpu->r[4] = 0x00000003u;
|
|
/* 027731B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027731B4 */ _t45 = cpu->r[12] + 0x00000000u;
|
|
/* 027731B4 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 027731B8 */ Gambit_fn_027727C4(cpu);
|
|
/* 027731BC */ cpu->r[4] = cpu->r[3];
|
|
/* 027731C0 */ _t46 = cpu->r[31] + 0x0000021Cu;
|
|
/* 027731C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027731C4 */ Gambit_fn_02164128(cpu);
|
|
/* 027731C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027731CC */ Gambit_fn_02772DA0(cpu);
|
|
L_027731D0: ; // 0x27731d0
|
|
/* 027731D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 027731D4 */ cpu->r[22] = 0x00000000u;
|
|
/* 027731D8 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027731D8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 027731D8 */ if (_t48) goto L_027732E4; else goto L_027731DC;
|
|
L_027731DC: ; // 0x27731dc
|
|
/* 027731DC */ cpu->r[28] = cpu->r[1] + 0x00000020u;
|
|
/* 027731E0 */ cpu->r[27] = cpu->r[1] + 0x00000014u;
|
|
/* 027731E4 */ cpu->r[26] = 0x00000000u;
|
|
/* 027731E8 */ cpu->r[24] = 0x00000003u;
|
|
L_027731EC: ; // 0x27731ec
|
|
/* 027731EC */ _t49 = cpu->r[28] + 0x00000000u;
|
|
/* 027731EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027731F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027731F4 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 027731F4 */ rbrew_write32(cpu->mem, _t50, cpu->r[22]);
|
|
/* 027731F8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027731FC */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 027731FC */ rbrew_write32(cpu->mem, _t51, cpu->r[11]);
|
|
/* 02773200 */ Gambit_fn_02777CF4(cpu);
|
|
/* 02773204 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02773204 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02773208 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[0]);
|
|
/* 0277320C */ _t53 = cpu->r[29] + cpu->r[26];
|
|
/* 0277320C */ cpu->r[7] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02773210 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773210 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02773210 */ if (_t55) goto L_02773214; else goto L_0277327C;
|
|
L_02773214: ; // 0x2773214
|
|
/* 02773214 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[23]);
|
|
/* 02773218 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773218 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02773218 */ if (_t57) goto L_027732C4; else goto L_0277321C;
|
|
L_0277321C: ; // 0x277321c
|
|
/* 0277321C */ _t58 = cpu->r[29] + cpu->r[26];
|
|
/* 0277321C */ rbrew_write32(cpu->mem, _t58, cpu->r[23]);
|
|
/* 02773220 */ _t59 = cpu->r[27] + 0x00000000u;
|
|
/* 02773220 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02773224 */ cpu->r[4] = cpu->r[22];
|
|
/* 02773228 */ cpu->r[3] = cpu->r[31];
|
|
/* 0277322C */ _t60 = cpu->r[1] + 0x00000018u;
|
|
/* 0277322C */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 02773230 */ Gambit_fn_027727C4(cpu);
|
|
/* 02773234 */ cpu->r[5] = cpu->r[3];
|
|
/* 02773238 */ _t61 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02773238 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0277323C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02773240 */ Gambit_fn_021643AC(cpu);
|
|
/* 02773244 */ _t62 = cpu->r[31] + 0x0000029Cu;
|
|
/* 02773244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02773248 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0277324C */ _t63 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0277324C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0277324C */ if (_t64) goto L_02773250; else goto L_02773264;
|
|
L_02773250: ; // 0x2773250
|
|
/* 02773250 */ _t65 = cpu->r[27] + 0x00000000u;
|
|
/* 02773250 */ cpu->r[6] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02773254 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02773258 */ cpu->r[3] = cpu->r[31];
|
|
/* 0277325C */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277325C */ rbrew_write32(cpu->mem, _t66, cpu->r[6]);
|
|
/* 02773260 */ Gambit_fn_02772FC0(cpu);
|
|
L_02773264: ; // 0x2773264
|
|
/* 02773264 */ cpu->r[25] = 0x00000001u;
|
|
/* 02773268 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02773268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0277326C */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02773270 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 02773274 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773274 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02773274 */ if (_t68) goto L_02773278; else goto L_027731EC;
|
|
L_02773278: ; // 0x2773278
|
|
/* 02773278 */ goto L_027732D4;
|
|
L_0277327C: ; // 0x277327c
|
|
/* 0277327C */ cpu->r[6] = cpu->r[31] + cpu->r[26];
|
|
/* 02773280 */ _t69 = cpu->r[6] + 0x00000250u;
|
|
/* 02773280 */ cpu->r[8] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02773284 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02773288 */ cpu->r[30] = cpu->r[31] + 0x00000250u;
|
|
/* 0277328C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277328C */ _t71 = _t70 & 0x00000001u;
|
|
/* 0277328C */ if (_t71) goto L_027732C4; else goto L_02773290;
|
|
L_02773290: ; // 0x2773290
|
|
/* 02773290 */ _t72 = cpu->r[30] + cpu->r[26];
|
|
/* 02773290 */ cpu->r[9] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02773294 */ _t73 = cpu->r[29] + cpu->r[26];
|
|
/* 02773294 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]);
|
|
/* 02773298 */ _t74 = cpu->r[27] + 0x00000000u;
|
|
/* 02773298 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0277329C */ cpu->r[4] = cpu->r[22];
|
|
/* 027732A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027732A4 */ _t75 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027732A4 */ rbrew_write32(cpu->mem, _t75, cpu->r[10]);
|
|
/* 027732A8 */ Gambit_fn_027727C4(cpu);
|
|
/* 027732AC */ cpu->r[5] = cpu->r[3];
|
|
/* 027732B0 */ _t76 = cpu->r[31] + 0x0000021Cu;
|
|
/* 027732B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 027732B4 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027732B8 */ Gambit_fn_021643AC(cpu);
|
|
/* 027732BC */ cpu->r[3] = cpu->r[31];
|
|
/* 027732C0 */ Gambit_fn_02772E64(cpu);
|
|
L_027732C4: ; // 0x27732c4
|
|
/* 027732C4 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 027732C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 027732C8 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 027732CC */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 027732D0 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027732D0 */ _t78 = _t77 & 0x00000001u;
|
|
/* 027732D0 */ if (_t78) goto L_027732D4; else goto L_027731EC;
|
|
L_027732D4: ; // 0x27732d4
|
|
/* 027732D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 027732D8 */ _t79 = cpu->r[31] + 0x0000029Cu;
|
|
/* 027732D8 */ rbrew_write32(cpu->mem, _t79, cpu->r[23]);
|
|
/* 027732DC */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027732DC */ _t81 = _t80 & 0x00000001u;
|
|
/* 027732DC */ if (_t81) goto L_02773378; else goto L_027732E0;
|
|
L_027732E0: ; // 0x27732e0
|
|
/* 027732E0 */ goto L_02773370;
|
|
L_027732E4: ; // 0x27732e4
|
|
/* 027732E4 */ cpu->r[30] = cpu->r[31] + 0x00000250u;
|
|
/* 027732E8 */ cpu->r[28] = cpu->r[1] + 0x00000014u;
|
|
/* 027732EC */ cpu->r[27] = cpu->r[1] + 0x00000020u;
|
|
/* 027732F0 */ cpu->r[26] = 0x00000000u;
|
|
/* 027732F4 */ cpu->r[24] = 0x00000003u;
|
|
L_027732F8: ; // 0x27732f8
|
|
/* 027732F8 */ _t82 = cpu->r[27] + 0x00000000u;
|
|
/* 027732F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027732FC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02773300 */ _t83 = cpu->r[1] + 0x00000014u;
|
|
/* 02773300 */ rbrew_write32(cpu->mem, _t83, cpu->r[22]);
|
|
/* 02773304 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02773308 */ _t84 = cpu->r[1] + 0x00000008u;
|
|
/* 02773308 */ rbrew_write32(cpu->mem, _t84, cpu->r[0]);
|
|
/* 0277330C */ Gambit_fn_02777CF4(cpu);
|
|
/* 02773310 */ _t85 = cpu->r[29] + cpu->r[26];
|
|
/* 02773310 */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02773314 */ _t86 = cpu->r[30] + cpu->r[26];
|
|
/* 02773314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02773318 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0277331C */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277331C */ _t88 = _t87 & 0x00000001u;
|
|
/* 0277331C */ if (_t88) goto L_02773354; else goto L_02773320;
|
|
L_02773320: ; // 0x2773320
|
|
/* 02773320 */ _t89 = cpu->r[30] + cpu->r[26];
|
|
/* 02773320 */ cpu->r[5] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02773324 */ _t90 = cpu->r[29] + cpu->r[26];
|
|
/* 02773324 */ rbrew_write32(cpu->mem, _t90, cpu->r[5]);
|
|
/* 02773328 */ _t91 = cpu->r[28] + 0x00000000u;
|
|
/* 02773328 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0277332C */ cpu->r[4] = cpu->r[22];
|
|
/* 02773330 */ cpu->r[3] = cpu->r[31];
|
|
/* 02773334 */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773334 */ rbrew_write32(cpu->mem, _t92, cpu->r[0]);
|
|
/* 02773338 */ Gambit_fn_027727C4(cpu);
|
|
/* 0277333C */ cpu->r[5] = cpu->r[3];
|
|
/* 02773340 */ _t93 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02773340 */ cpu->r[3] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02773344 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773348 */ Gambit_fn_021643AC(cpu);
|
|
/* 0277334C */ cpu->r[3] = cpu->r[31];
|
|
/* 02773350 */ Gambit_fn_02772E64(cpu);
|
|
L_02773354: ; // 0x2773354
|
|
/* 02773354 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu;
|
|
/* 02773354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02773358 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 0277335C */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 02773360 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773360 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02773360 */ if (_t95) goto L_02773364; else goto L_027732F8;
|
|
L_02773364: ; // 0x2773364
|
|
/* 02773364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02773368 */ _t96 = cpu->r[31] + 0x0000029Cu;
|
|
/* 02773368 */ rbrew_write32(cpu->mem, _t96, cpu->r[23]);
|
|
/* 0277336C */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277336C */ _t98 = _t97 & 0x00000001u;
|
|
/* 0277336C */ if (_t98) goto L_02773378; else goto L_02773370;
|
|
L_02773370: ; // 0x2773370
|
|
/* 02773370 */ cpu->r[3] = cpu->r[31];
|
|
/* 02773374 */ Gambit_fn_027727E0(cpu);
|
|
L_02773378: ; // 0x2773378
|
|
/* 02773378 */ /* nop */
|
|
/* 0277337C */ _t99 = cpu->r[1] + 0x00000054u;
|
|
/* 0277337C */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02773380 */ cpu->lr = cpu->r[0];
|
|
/* 02773384 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02773388 */ return;
|
|
}
|
|
|
|
// fn_0277338C @ 0x277338c
|
|
void Gambit_fn_0277338C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02064F40: ; // 0x2064f40
|
|
/* 02064F40 */ cpu->r[0] = cpu->lr;
|
|
/* 02064F44 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064F44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064F44 */ cpu->r[1] = _t0;
|
|
/* 02064F48 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064F48 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064F4C */ cpu->r[31] = cpu->r[3];
|
|
/* 02064F50 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02064F50 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02064F54 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02064F54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02064F58 */ cpu->r[12] = 0x00000000u;
|
|
/* 02064F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064F60 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02064F60 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02064F64 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064F64 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02064F64 */ if (_t6) goto L_02064F8C; else goto L_02064F68;
|
|
L_02064F68: ; // 0x2064f68
|
|
/* 02064F68 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02064F68 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02064F6C */ /* nop */
|
|
/* 02064F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02064F74 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064F74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02064F74 */ if (_t9) goto L_02064F78; else goto L_02064F8C;
|
|
L_02064F78: ; // 0x2064f78
|
|
/* 02064F78 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02064F78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064F7C */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02064F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02064F80 */ cpu->ctr = cpu->r[0];
|
|
/* 02064F84 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064F88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02064F8C: ; // 0x2064f8c
|
|
/* 02064F8C */ cpu->r[3] = cpu->r[31];
|
|
/* 02064F90 */ Gambit_fn_02064EB8(cpu);
|
|
/* 02064F94 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064F98 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02064F9C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02064F9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02064FA0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064FA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02064FA4 */ cpu->lr = cpu->r[0];
|
|
/* 02064FA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064FAC */ return;
|
|
L_0277338C: ; // 0x277338c
|
|
/* 0277338C */ cpu->r[3] = cpu->r[3] + 0x000001D0u;
|
|
/* 02773390 */ goto L_02064F40;
|
|
}
|
|
|
|
// fn_02773394 @ 0x2773394
|
|
void Gambit_fn_02773394(CPUState* cpu) {
|
|
uint32_t _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_02773394: ; // 0x2773394
|
|
/* 02773394 */ cpu->r[0] = cpu->lr;
|
|
/* 02773398 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02773398 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773398 */ cpu->r[1] = _t0;
|
|
/* 0277339C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277339C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027733A0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027733A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027733A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027733A8 */ _t3 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 027733A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027733AC */ cpu->r[31] = cpu->r[3];
|
|
/* 027733B0 */ _t4 = cpu->r[12] + 0x0000024Cu;
|
|
/* 027733B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027733B4 */ Gambit_fn_0276AD8C(cpu);
|
|
/* 027733B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027733BC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027733BC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027733BC */ if (_t6) goto L_027733C0; else goto L_02773418;
|
|
L_027733C0: ; // 0x27733c0
|
|
/* 027733C0 */ _t7 = cpu->r[31] + 0x00000208u;
|
|
/* 027733C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027733C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027733C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027733C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027733C8 */ if (_t9) goto L_027733E0; else goto L_027733CC;
|
|
L_027733CC: ; // 0x27733cc
|
|
/* 027733CC */ _t10 = cpu->r[10] + 0x0000008Cu;
|
|
/* 027733CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027733D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027733D4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027733D4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027733D4 */ if (_t12) goto L_027733D8; else goto L_027733E0;
|
|
L_027733D8: ; // 0x27733d8
|
|
/* 027733D8 */ _t13 = cpu->r[31] + 0x00000080u;
|
|
/* 027733D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027733DC */ Gambit_fn_0239859C(cpu);
|
|
L_027733E0: ; // 0x27733e0
|
|
/* 027733E0 */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 027733E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027733E4 */ cpu->r[4] = 0x00000000u;
|
|
/* 027733E8 */ Gambit_fn_029805E0(cpu);
|
|
/* 027733EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027733F0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027733F0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027733F0 */ if (_t16) goto L_02773418; else goto L_027733F4;
|
|
L_027733F4: ; // 0x27733f4
|
|
/* 027733F4 */ _t17 = cpu->r[31] + 0x00000008u;
|
|
/* 027733F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027733F8 */ Gambit_fn_02980318(cpu);
|
|
/* 027733FC */ _t18 = cpu->r[31] + 0x0000021Cu;
|
|
/* 027733FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02773400 */ Gambit_fn_02162E24(cpu);
|
|
/* 02773404 */ _t19 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02773404 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02773408 */ _t20 = cpu->r[31] + 0x00000008u;
|
|
/* 02773408 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0277340C */ Gambit_fn_02162FB4(cpu);
|
|
/* 02773410 */ _t21 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02773410 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02773414 */ Gambit_fn_02163290(cpu);
|
|
L_02773418: ; // 0x2773418
|
|
/* 02773418 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02773418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0277341C */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277341C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02773420 */ cpu->lr = cpu->r[0];
|
|
/* 02773424 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773428 */ return;
|
|
}
|
|
|
|
// fn_02773398 @ 0x2773398
|
|
void Gambit_fn_02773398(CPUState* cpu) {
|
|
uint32_t _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_02773398: ; // 0x2773398
|
|
/* 02773398 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02773398 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773398 */ cpu->r[1] = _t0;
|
|
/* 0277339C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277339C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027733A0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027733A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027733A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027733A8 */ _t3 = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 027733A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027733AC */ cpu->r[31] = cpu->r[3];
|
|
/* 027733B0 */ _t4 = cpu->r[12] + 0x0000024Cu;
|
|
/* 027733B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027733B4 */ Gambit_fn_0276AD8C(cpu);
|
|
/* 027733B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027733BC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027733BC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027733BC */ if (_t6) goto L_027733C0; else goto L_02773418;
|
|
L_027733C0: ; // 0x27733c0
|
|
/* 027733C0 */ _t7 = cpu->r[31] + 0x00000208u;
|
|
/* 027733C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027733C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027733C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027733C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027733C8 */ if (_t9) goto L_027733E0; else goto L_027733CC;
|
|
L_027733CC: ; // 0x27733cc
|
|
/* 027733CC */ _t10 = cpu->r[10] + 0x0000008Cu;
|
|
/* 027733CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027733D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027733D4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027733D4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027733D4 */ if (_t12) goto L_027733D8; else goto L_027733E0;
|
|
L_027733D8: ; // 0x27733d8
|
|
/* 027733D8 */ _t13 = cpu->r[31] + 0x00000080u;
|
|
/* 027733D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027733DC */ Gambit_fn_0239859C(cpu);
|
|
L_027733E0: ; // 0x27733e0
|
|
/* 027733E0 */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 027733E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027733E4 */ cpu->r[4] = 0x00000000u;
|
|
/* 027733E8 */ Gambit_fn_029805E0(cpu);
|
|
/* 027733EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027733F0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027733F0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027733F0 */ if (_t16) goto L_02773418; else goto L_027733F4;
|
|
L_027733F4: ; // 0x27733f4
|
|
/* 027733F4 */ _t17 = cpu->r[31] + 0x00000008u;
|
|
/* 027733F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027733F8 */ Gambit_fn_02980318(cpu);
|
|
/* 027733FC */ _t18 = cpu->r[31] + 0x0000021Cu;
|
|
/* 027733FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02773400 */ Gambit_fn_02162E24(cpu);
|
|
/* 02773404 */ _t19 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02773404 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02773408 */ _t20 = cpu->r[31] + 0x00000008u;
|
|
/* 02773408 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0277340C */ Gambit_fn_02162FB4(cpu);
|
|
/* 02773410 */ _t21 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02773410 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02773414 */ Gambit_fn_02163290(cpu);
|
|
L_02773418: ; // 0x2773418
|
|
/* 02773418 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02773418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0277341C */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277341C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02773420 */ cpu->lr = cpu->r[0];
|
|
/* 02773424 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773428 */ return;
|
|
}
|
|
|
|
// fn_0277342C @ 0x277342c
|
|
void Gambit_fn_0277342C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0277342C: ; // 0x277342c
|
|
/* 0277342C */ cpu->r[0] = cpu->lr;
|
|
/* 02773430 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02773430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773430 */ cpu->r[1] = _t0;
|
|
/* 02773434 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773434 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02773438 */ cpu->r[31] = cpu->r[3];
|
|
/* 0277343C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0277343C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02773440 */ Gambit_fn_02000BC0(cpu);
|
|
/* 02773444 */ cpu->r[4] = 0x101F0000u;
|
|
/* 02773448 */ _t3 = cpu->r[31] + 0x00000030u;
|
|
/* 02773448 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0277344C */ cpu->r[4] = cpu->r[4] + 0x00001CACu;
|
|
/* 02773450 */ Gambit_fn_027B70B8(cpu);
|
|
/* 02773454 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02773454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02773458 */ cpu->lr = cpu->r[0];
|
|
/* 0277345C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277345C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02773460 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773464 */ return;
|
|
}
|
|
|
|
// fn_02773430 @ 0x2773430
|
|
void Gambit_fn_02773430(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02773430: ; // 0x2773430
|
|
/* 02773430 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02773430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773430 */ cpu->r[1] = _t0;
|
|
/* 02773434 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773434 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02773438 */ cpu->r[31] = cpu->r[3];
|
|
/* 0277343C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0277343C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02773440 */ Gambit_fn_02000BC0(cpu);
|
|
/* 02773444 */ cpu->r[4] = 0x101F0000u;
|
|
/* 02773448 */ _t3 = cpu->r[31] + 0x00000030u;
|
|
/* 02773448 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0277344C */ cpu->r[4] = cpu->r[4] + 0x00001CACu;
|
|
/* 02773450 */ Gambit_fn_027B70B8(cpu);
|
|
/* 02773454 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02773454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02773458 */ cpu->lr = cpu->r[0];
|
|
/* 0277345C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277345C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02773460 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773464 */ return;
|
|
}
|
|
|
|
// fn_02773468 @ 0x2773468
|
|
void Gambit_fn_02773468(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_02064BBC: ; // 0x2064bbc
|
|
/* 02064BBC */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02064BBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064BBC */ cpu->r[1] = _t0;
|
|
/* 02064BC0 */ /* nop */
|
|
/* 02064BC4 */ cpu->r[0] = cpu->lr;
|
|
/* 02064BC8 */ cpu->r[23] = cpu->r[3];
|
|
/* 02064BCC */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02064BCC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02064BD0 */ Gambit_fn_02062AF0(cpu);
|
|
/* 02064BD4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02064BD8 */ _t2 = cpu->r[7] + 0xFFFFD4C0u;
|
|
/* 02064BD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02064BD8 */ cpu->r[7] = _t2;
|
|
/* 02064BDC */ cpu->r[31] = 0x101E0000u;
|
|
/* 02064BE0 */ cpu->r[22] = cpu->r[3];
|
|
/* 02064BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064BE8 */ cpu->r[31] = cpu->r[31] + 0xFFFFD440u;
|
|
/* 02064BEC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064BEC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02064BEC */ if (_t4) goto L_02064BF0; else goto L_02064C38;
|
|
L_02064BF0: ; // 0x2064bf0
|
|
/* 02064BF0 */ cpu->r[12] = 0x00000001u;
|
|
/* 02064BF4 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02064BF8 */ cpu->r[4] = 0x10000000u;
|
|
/* 02064BFC */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 02064BFC */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02064C00 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064C04 */ cpu->r[5] = 0x00000004u;
|
|
/* 02064C08 */ cpu->r[4] = cpu->r[4] + 0x0000704Cu;
|
|
/* 02064C0C */ cpu->r[7] = 0x00000000u;
|
|
/* 02064C10 */ Gambit_fn_028A6750(cpu);
|
|
/* 02064C14 */ cpu->r[6] = 0x02060000u;
|
|
/* 02064C18 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02064C1C */ cpu->r[4] = 0x00000004u;
|
|
/* 02064C20 */ cpu->r[6] = cpu->r[6] + 0x00004D5Cu;
|
|
/* 02064C24 */ cpu->r[5] = 0x00000008u;
|
|
/* 02064C28 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02064C2C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02064C30 */ cpu->r[3] = cpu->r[3] + 0x000033E0u;
|
|
/* 02064C34 */ Gambit_fn_02C83090(cpu);
|
|
L_02064C38: ; // 0x2064c38
|
|
/* 02064C38 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 02064C38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02064C3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064C40 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064C40 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02064C40 */ if (_t8) goto L_02064C44; else goto L_02064D38;
|
|
L_02064C44: ; // 0x2064c44
|
|
/* 02064C44 */ cpu->r[26] = 0x101D0000u;
|
|
/* 02064C48 */ cpu->r[30] = 0x00000000u;
|
|
/* 02064C4C */ cpu->r[19] = 0x101D0000u;
|
|
/* 02064C50 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02064C54 */ cpu->r[21] = 0x00000001u;
|
|
/* 02064C58 */ cpu->r[27] = cpu->r[30];
|
|
/* 02064C5C */ cpu->r[25] = 0x101D0000u;
|
|
/* 02064C60 */ cpu->r[26] = cpu->r[26] + 0xFFFFED58u;
|
|
/* 02064C64 */ cpu->r[24] = 0x101D0000u;
|
|
L_02064C68: ; // 0x2064c68
|
|
/* 02064C68 */ _t9 = cpu->r[24] + 0xFFFFED70u;
|
|
/* 02064C68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064C6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064C70 */ cpu->r[29] = cpu->r[30];
|
|
/* 02064C74 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064C74 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02064C74 */ if (_t11) goto L_02064C78; else goto L_02064C90;
|
|
L_02064C78: ; // 0x2064c78
|
|
/* 02064C78 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02064C7C */ cpu->r[3] = cpu->r[25] + 0x00003C6Au;
|
|
/* 02064C80 */ cpu->r[5] = 0x00000021u;
|
|
/* 02064C84 */ cpu->r[4] = cpu->r[4] + 0x000033BCu;
|
|
/* 02064C88 */ _t12 = cpu->r[24] + 0xFFFFED70u;
|
|
/* 02064C88 */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 02064C8C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02064C90: ; // 0x2064c90
|
|
/* 02064C90 */ _t13 = cpu->r[20] + 0xFFFFED6Cu;
|
|
/* 02064C90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02064C94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064C98 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064C98 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02064C98 */ if (_t15) goto L_02064C9C; else goto L_02064CA4;
|
|
L_02064C9C: ; // 0x2064c9c
|
|
/* 02064C9C */ _t16 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064C9C */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 02064CA0 */ _t17 = cpu->r[20] + 0xFFFFED6Cu;
|
|
/* 02064CA0 */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_02064CA4: ; // 0x2064ca4
|
|
/* 02064CA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000004u);
|
|
/* 02064CA8 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064CA8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02064CA8 */ if (_t19) goto L_02064CD0; else goto L_02064CAC;
|
|
L_02064CAC: ; // 0x2064cac
|
|
/* 02064CAC */ cpu->r[4] = cpu->r[30];
|
|
/* 02064CB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064CB4 */ cpu->r[5] = 0x00000000u;
|
|
/* 02064CB8 */ Gambit_fn_028A6634(cpu);
|
|
/* 02064CBC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02064CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000004u);
|
|
/* 02064CC4 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02064CC4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02064CC4 */ if (_t21) goto L_02064D38; else goto L_02064CC8;
|
|
L_02064CC8: ; // 0x2064cc8
|
|
/* 02064CC8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064CC8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02064CC8 */ if (_t23) goto L_02064C68; else goto L_02064CCC;
|
|
L_02064CCC: ; // 0x2064ccc
|
|
/* 02064CCC */ goto L_02064D38;
|
|
L_02064CD0: ; // 0x2064cd0
|
|
/* 02064CD0 */ _t24 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02064CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064CD8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064CD8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02064CD8 */ if (_t26) goto L_02064CDC; else goto L_02064D14;
|
|
L_02064CDC: ; // 0x2064cdc
|
|
/* 02064CDC */ Gambit_fn_0282A450(cpu);
|
|
/* 02064CE0 */ cpu->r[28] = cpu->r[3];
|
|
/* 02064CE4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02064CE8 */ _t27 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064CE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02064CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064CF0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064CF0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02064CF0 */ if (_t29) goto L_02064CF4; else goto L_02064D08;
|
|
L_02064CF4: ; // 0x2064cf4
|
|
/* 02064CF4 */ cpu->r[5] = 0x00000004u;
|
|
/* 02064CF8 */ cpu->r[4] = cpu->r[25] + 0x00003C6Au;
|
|
/* 02064CFC */ cpu->r[3] = cpu->r[26];
|
|
/* 02064D00 */ Gambit_fn_0282A374(cpu);
|
|
/* 02064D04 */ _t30 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064D04 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_02064D08: ; // 0x2064d08
|
|
/* 02064D08 */ cpu->r[3] = cpu->r[28];
|
|
/* 02064D0C */ Gambit_fn_02837030(cpu);
|
|
/* 02064D10 */ _t31 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064D10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_02064D14: ; // 0x2064d14
|
|
/* 02064D14 */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02064D18 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064D1C */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 02064D1C */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02064D20 */ cpu->r[4] = cpu->r[30];
|
|
/* 02064D24 */ Gambit_fn_028A6634(cpu);
|
|
/* 02064D28 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02064D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000004u);
|
|
/* 02064D30 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02064D30 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02064D30 */ if (_t34) goto L_02064D38; else goto L_02064D34;
|
|
L_02064D34: ; // 0x2064d34
|
|
/* 02064D34 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064D34 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02064D34 */ if (_t36) goto L_02064C68; else goto L_02064D38;
|
|
L_02064D38: ; // 0x2064d38
|
|
/* 02064D38 */ cpu->r[3] = cpu->r[23];
|
|
/* 02064D3C */ cpu->r[4] = cpu->r[31];
|
|
/* 02064D40 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02064D44 */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 02064D48 */ /* nop */
|
|
/* 02064D4C */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 02064D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02064D50 */ cpu->lr = cpu->r[0];
|
|
/* 02064D54 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02064D58 */ return;
|
|
L_02773468: ; // 0x2773468
|
|
/* 02773468 */ _t38 = cpu->r[3] + 0x00000030u;
|
|
/* 02773468 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0277346C */ cpu->r[4] = 0x00000000u;
|
|
/* 02773470 */ goto L_02064BBC;
|
|
}
|
|
|
|
// fn_02773474 @ 0x2773474
|
|
void Gambit_fn_02773474(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_02773474: ; // 0x2773474
|
|
/* 02773474 */ cpu->r[0] = cpu->lr;
|
|
/* 02773478 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02773478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773478 */ cpu->r[1] = _t0;
|
|
/* 0277347C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0277347C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02773480 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773480 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02773484 */ cpu->r[12] = 0x10100000u;
|
|
/* 02773488 */ _t3 = cpu->r[12] + 0x00001CF4u;
|
|
/* 02773488 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0277348C */ cpu->r[30] = cpu->r[3];
|
|
/* 02773490 */ cpu->r[31] = cpu->r[4];
|
|
/* 02773494 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02773494 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02773498 */ _t5 = cpu->r[30] + 0x00000008u;
|
|
/* 02773498 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0277349C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027734A0 */ _t6 = cpu->r[30] + 0x00000208u;
|
|
/* 027734A0 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 027734A4 */ cpu->r[5] = 0x00000000u;
|
|
/* 027734A8 */ _t7 = cpu->r[30] + 0x0000029Cu;
|
|
/* 027734A8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027734AC */ cpu->r[4] = 0x00000001u;
|
|
/* 027734B0 */ _t8 = cpu->r[30] + 0x0000020Cu;
|
|
/* 027734B0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 027734B4 */ Gambit_fn_029804F0(cpu);
|
|
/* 027734B8 */ cpu->r[4] = 0x00000001u;
|
|
/* 027734BC */ _t9 = cpu->r[30] + 0x0000021Cu;
|
|
/* 027734BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027734C0 */ cpu->r[5] = cpu->r[4];
|
|
/* 027734C4 */ cpu->r[6] = cpu->r[4];
|
|
/* 027734C8 */ cpu->r[7] = 0x00000000u;
|
|
/* 027734CC */ Gambit_fn_02163520(cpu);
|
|
/* 027734D0 */ _t10 = cpu->r[30] + 0x00000030u;
|
|
/* 027734D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027734D4 */ cpu->r[4] = 0x00000001u;
|
|
/* 027734D8 */ Gambit_fn_027B9B00(cpu);
|
|
/* 027734DC */ cpu->r[3] = cpu->r[30];
|
|
/* 027734E0 */ Gambit_fn_027727E0(cpu);
|
|
/* 027734E4 */ _t11 = cpu->r[30] + 0x00000030u;
|
|
/* 027734E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027734E8 */ cpu->r[4] = 0x00000003u;
|
|
/* 027734EC */ _t12 = cpu->r[31] + 0x00000088u;
|
|
/* 027734EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027734F0 */ Gambit_fn_027B8224(cpu);
|
|
/* 027734F4 */ _t13 = cpu->r[30] + 0x00000208u;
|
|
/* 027734F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027734F8 */ _t14 = cpu->r[11] + 0x0000005Cu;
|
|
/* 027734F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 027734FC */ /* nop */
|
|
/* 02773500 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773500 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02773500 */ if (_t16) goto L_02773504; else goto L_0277350C;
|
|
L_02773504: ; // 0x2773504
|
|
/* 02773504 */ cpu->r[3] = cpu->r[30];
|
|
/* 02773508 */ Gambit_fn_02772E64(cpu);
|
|
L_0277350C: ; // 0x277350c
|
|
/* 0277350C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0277350C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02773510 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02773510 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02773514 */ cpu->lr = cpu->r[0];
|
|
/* 02773518 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773518 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0277351C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773520 */ return;
|
|
}
|
|
|
|
// fn_02773478 @ 0x2773478
|
|
void Gambit_fn_02773478(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_02773478: ; // 0x2773478
|
|
/* 02773478 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02773478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773478 */ cpu->r[1] = _t0;
|
|
/* 0277347C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0277347C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02773480 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773480 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02773484 */ cpu->r[12] = 0x10100000u;
|
|
/* 02773488 */ _t3 = cpu->r[12] + 0x00001CF4u;
|
|
/* 02773488 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0277348C */ cpu->r[30] = cpu->r[3];
|
|
/* 02773490 */ cpu->r[31] = cpu->r[4];
|
|
/* 02773494 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02773494 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02773498 */ _t5 = cpu->r[30] + 0x00000008u;
|
|
/* 02773498 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0277349C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027734A0 */ _t6 = cpu->r[30] + 0x00000208u;
|
|
/* 027734A0 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 027734A4 */ cpu->r[5] = 0x00000000u;
|
|
/* 027734A8 */ _t7 = cpu->r[30] + 0x0000029Cu;
|
|
/* 027734A8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027734AC */ cpu->r[4] = 0x00000001u;
|
|
/* 027734B0 */ _t8 = cpu->r[30] + 0x0000020Cu;
|
|
/* 027734B0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 027734B4 */ Gambit_fn_029804F0(cpu);
|
|
/* 027734B8 */ cpu->r[4] = 0x00000001u;
|
|
/* 027734BC */ _t9 = cpu->r[30] + 0x0000021Cu;
|
|
/* 027734BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027734C0 */ cpu->r[5] = cpu->r[4];
|
|
/* 027734C4 */ cpu->r[6] = cpu->r[4];
|
|
/* 027734C8 */ cpu->r[7] = 0x00000000u;
|
|
/* 027734CC */ Gambit_fn_02163520(cpu);
|
|
/* 027734D0 */ _t10 = cpu->r[30] + 0x00000030u;
|
|
/* 027734D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027734D4 */ cpu->r[4] = 0x00000001u;
|
|
/* 027734D8 */ Gambit_fn_027B9B00(cpu);
|
|
/* 027734DC */ cpu->r[3] = cpu->r[30];
|
|
/* 027734E0 */ Gambit_fn_027727E0(cpu);
|
|
/* 027734E4 */ _t11 = cpu->r[30] + 0x00000030u;
|
|
/* 027734E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027734E8 */ cpu->r[4] = 0x00000003u;
|
|
/* 027734EC */ _t12 = cpu->r[31] + 0x00000088u;
|
|
/* 027734EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027734F0 */ Gambit_fn_027B8224(cpu);
|
|
/* 027734F4 */ _t13 = cpu->r[30] + 0x00000208u;
|
|
/* 027734F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027734F8 */ _t14 = cpu->r[11] + 0x0000005Cu;
|
|
/* 027734F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 027734FC */ /* nop */
|
|
/* 02773500 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773500 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02773500 */ if (_t16) goto L_02773504; else goto L_0277350C;
|
|
L_02773504: ; // 0x2773504
|
|
/* 02773504 */ cpu->r[3] = cpu->r[30];
|
|
/* 02773508 */ Gambit_fn_02772E64(cpu);
|
|
L_0277350C: ; // 0x277350c
|
|
/* 0277350C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0277350C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02773510 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02773510 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02773514 */ cpu->lr = cpu->r[0];
|
|
/* 02773518 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773518 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0277351C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773520 */ return;
|
|
}
|
|
|
|
// fn_02773524 @ 0x2773524
|
|
void Gambit_fn_02773524(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02065038: ; // 0x2065038
|
|
/* 02065038 */ cpu->r[0] = cpu->lr;
|
|
/* 0206503C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206503C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206503C */ cpu->r[1] = _t0;
|
|
/* 02065040 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02065040 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02065044 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065044 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02065048 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206504C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206504C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02065050 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02065050 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02065054 */ /* nop */
|
|
/* 02065058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206505C */ cpu->r[31] = cpu->r[4];
|
|
/* 02065060 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065060 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02065060 */ if (_t6) goto L_02065064; else goto L_02065078;
|
|
L_02065064: ; // 0x2065064
|
|
/* 02065064 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02065064 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02065068 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02065068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206506C */ cpu->ctr = cpu->r[0];
|
|
/* 02065070 */ cpu->r[3] = cpu->r[30];
|
|
/* 02065074 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02065078: ; // 0x2065078
|
|
/* 02065078 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206507C */ cpu->r[4] = cpu->r[31];
|
|
/* 02065080 */ Gambit_fn_02064FB0(cpu);
|
|
/* 02065084 */ cpu->r[3] = cpu->r[30];
|
|
/* 02065088 */ /* nop */
|
|
/* 0206508C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02065090 */ cpu->r[3] = cpu->r[30];
|
|
/* 02065094 */ Gambit_fn_02064E30(cpu);
|
|
/* 02065098 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02065098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206509C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206509C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020650A0 */ cpu->lr = cpu->r[0];
|
|
/* 020650A4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020650A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020650A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020650AC */ return;
|
|
L_02773524: ; // 0x2773524
|
|
/* 02773524 */ cpu->r[3] = cpu->r[3] + 0x000001D0u;
|
|
/* 02773528 */ cpu->r[4] = 0x00000001u;
|
|
/* 0277352C */ goto L_02065038;
|
|
}
|
|
|
|
// fn_02773530 @ 0x2773530
|
|
void Gambit_fn_02773530(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_02773530: ; // 0x2773530
|
|
/* 02773530 */ _t0 = cpu->r[1] + 0xFFFFFF28u;
|
|
/* 02773530 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773530 */ cpu->r[1] = _t0;
|
|
/* 02773534 */ /* nop */
|
|
/* 02773538 */ cpu->r[0] = cpu->lr;
|
|
/* 0277353C */ _t1 = cpu->r[1] + 0x000000DCu;
|
|
/* 0277353C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02773540 */ cpu->r[29] = cpu->r[4];
|
|
/* 02773544 */ cpu->r[30] = cpu->r[3];
|
|
/* 02773548 */ _t2 = cpu->r[30] + 0x00000008u;
|
|
/* 02773548 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0277354C */ cpu->r[4] = 0x00000000u;
|
|
/* 02773550 */ Gambit_fn_029805E0(cpu);
|
|
/* 02773554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773558 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773558 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02773558 */ if (_t4) goto L_02773848; else goto L_0277355C;
|
|
L_0277355C: ; // 0x277355c
|
|
/* 0277355C */ cpu->r[31] = 0x101F0000u;
|
|
/* 02773560 */ _t5 = cpu->r[31] + 0x00001CB8u;
|
|
/* 02773560 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02773560 */ cpu->r[31] = _t5;
|
|
/* 02773564 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02773568 */ _t6 = cpu->r[30] + 0x00000074u;
|
|
/* 02773568 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 0277356C */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 0277356C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02773570 */ cpu->r[12] = 0x00000003u;
|
|
/* 02773574 */ cpu->r[10] = cpu->r[10] + 0x00005E2Cu;
|
|
/* 02773578 */ _t8 = cpu->r[30] + 0x00000078u;
|
|
/* 02773578 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 0277357C */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 0277357C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02773580 */ cpu->ctr = cpu->r[12];
|
|
/* 02773584 */ cpu->r[11] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02773588 */ _t10 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02773588 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[11]);
|
|
L_0277358C: ; // 0x277358c
|
|
/* 0277358C */ _t11 = cpu->r[10] + 0x00000004u;
|
|
/* 0277358C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02773590 */ _t12 = cpu->r[11] + 0x00000004u;
|
|
/* 02773590 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02773594 */ _t13 = cpu->r[10] + 0x00000008u;
|
|
/* 02773594 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02773598 */ _t14 = cpu->r[11] + 0x00000008u;
|
|
/* 02773598 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 0277359C */ _t15 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0277359C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027735A0 */ _t16 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027735A0 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 027735A4 */ _t17 = cpu->r[10] + 0x00000010u;
|
|
/* 027735A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027735A4 */ cpu->r[10] = _t17;
|
|
/* 027735A8 */ _t18 = cpu->r[11] + 0x00000010u;
|
|
/* 027735A8 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
/* 027735A8 */ cpu->r[11] = _t18;
|
|
/* 027735AC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027735AC */ _t19 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027735AC */ _t20 = _t19 >> (0x00000002u & 31u);
|
|
/* 027735AC */ _t21 = _t20 & 0x00000001u;
|
|
/* 027735AC */ if (_t21) goto L_0277358C; else goto L_027735B0;
|
|
L_027735B0: ; // 0x27735b0
|
|
/* 027735B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027735B4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027735B4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027735B4 */ if (_t23) goto L_02773654; else goto L_027735B8;
|
|
L_027735B8: ; // 0x27735b8
|
|
/* 027735B8 */ cpu->r[0] = cpu->r[1] + 0x0000005Cu;
|
|
/* 027735BC */ cpu->r[11] = 0x00000020u;
|
|
/* 027735C0 */ _t24 = cpu->r[1] + 0x00000050u;
|
|
/* 027735C0 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 027735C4 */ cpu->r[0] = 0x10100000u;
|
|
/* 027735C8 */ cpu->r[12] = 0x10110000u;
|
|
/* 027735CC */ _t25 = cpu->r[1] + 0x00000058u;
|
|
/* 027735CC */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 027735D0 */ cpu->r[0] = cpu->r[0] + 0x00001C5Cu;
|
|
/* 027735D4 */ _t26 = cpu->r[12] + 0x00007399u;
|
|
/* 027735D4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t26);
|
|
/* 027735D8 */ _t27 = cpu->r[1] + 0x00000054u;
|
|
/* 027735D8 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 027735DC */ _t28 = cpu->r[30] + 0x00000208u;
|
|
/* 027735DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027735E0 */ _t29 = cpu->r[1] + 0x0000007Bu;
|
|
/* 027735E0 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[12]);
|
|
/* 027735E4 */ _t30 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027735E4 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[12]);
|
|
/* 027735E8 */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 027735E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027735EC */ _t32 = cpu->r[7] + 0x000001FCu;
|
|
/* 027735EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027735F0 */ cpu->ctr = cpu->r[8];
|
|
/* 027735F4 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 027735F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027735FC */ cpu->r[3] = cpu->r[29];
|
|
/* 02773600 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 02773604 */ Gambit_fn_029807A8(cpu);
|
|
/* 02773608 */ cpu->r[27] = cpu->r[3];
|
|
/* 0277360C */ /* nop */
|
|
/* 02773610 */ cpu->r[3] = cpu->r[29];
|
|
/* 02773614 */ cpu->r[4] = cpu->r[28];
|
|
/* 02773618 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 0277361C */ _t33 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0277361C */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02773620 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[9]);
|
|
/* 02773624 */ cpu->r[9] = 0x00000000u;
|
|
/* 02773628 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02773628 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02773628 */ if (_t35) goto L_0277362C; else goto L_02773638;
|
|
L_0277362C: ; // 0x277362c
|
|
/* 0277362C */ _t36 = cpu->r[29] + 0x00000024u;
|
|
/* 0277362C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02773630 */ cpu->r[10] = rbrew_rlwinm(cpu->r[28], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02773634 */ _t37 = cpu->r[10] + cpu->r[0];
|
|
/* 02773634 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
L_02773638: ; // 0x2773638
|
|
/* 02773638 */ _t38 = cpu->r[9] + 0x00000000u;
|
|
/* 02773638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0277363C */ _t39 = cpu->r[3] + 0x00000088u;
|
|
/* 0277363C */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02773640 */ _t40 = cpu->r[12] + 0x00000074u;
|
|
/* 02773640 */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02773644 */ cpu->ctr = cpu->r[6];
|
|
/* 02773648 */ /* nop */
|
|
/* 0277364C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02773650 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02773654: ; // 0x2773654
|
|
/* 02773654 */ _t41 = cpu->r[30] + 0x00000208u;
|
|
/* 02773654 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02773658 */ _t42 = cpu->r[30] + 0x0000020Cu;
|
|
/* 02773658 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0277365C */ cpu->r[12] = 0x10100000u;
|
|
/* 02773660 */ _t43 = cpu->r[6] + 0x00000088u;
|
|
/* 02773660 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02773664 */ cpu->r[6] = 0x101F0000u;
|
|
/* 02773668 */ _t44 = cpu->r[12] + 0x00001D30u;
|
|
/* 02773668 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0277366C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773670 */ cpu->r[6] = cpu->r[6] + 0x00006350u;
|
|
/* 02773674 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02773678 */ /* nop */
|
|
/* 0277367C */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277367C */ _t46 = _t45 & 0x00000001u;
|
|
/* 0277367C */ if (_t46) goto L_02773680; else goto L_02773768;
|
|
L_02773680: ; // 0x2773680
|
|
/* 02773680 */ /* nop */
|
|
/* 02773684 */ _t47 = cpu->r[6] + 0x00000008u;
|
|
/* 02773684 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02773688 */ /* nop */
|
|
/* 0277368C */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 0277368C */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02773690 */ cpu->f[10] = cpu->f[13] * cpu->f[12];
|
|
/* 02773694 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773694 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02773698 */ _t50 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02773698 */ rbrew_write32(cpu->mem, _t50, cpu->r[9]);
|
|
/* 0277369C */ cpu->r[5] = 0x101F0000u;
|
|
/* 027736A0 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 027736A0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[10]);
|
|
/* 027736A4 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 027736A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027736A8 */ cpu->r[3] = cpu->r[1] + 0x00000094u;
|
|
/* 027736AC */ cpu->r[4] = cpu->r[1] + 0x0000007Cu;
|
|
/* 027736B0 */ _t53 = cpu->r[1] + 0x00000080u;
|
|
/* 027736B0 */ rbrew_write32(cpu->mem, _t53, cpu->r[10]);
|
|
/* 027736B4 */ cpu->r[5] = cpu->r[5] + 0x00001CC4u;
|
|
/* 027736B8 */ _t54 = cpu->r[1] + 0x00000084u;
|
|
/* 027736B8 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 027736BC */ Gambit_fn_023D860C(cpu);
|
|
/* 027736C0 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027736C4 */ cpu->r[4] = cpu->r[1] + 0x00000094u;
|
|
/* 027736C8 */ cpu->r[5] = cpu->r[3];
|
|
/* 027736CC */ Gambit_fn_02C69544(cpu);
|
|
/* 027736D0 */ _t55 = cpu->r[1] + 0x00000048u;
|
|
/* 027736D0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 027736D4 */ _t56 = cpu->r[1] + 0x00000038u;
|
|
/* 027736D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 027736D8 */ _t57 = cpu->r[30] + 0x00000070u;
|
|
/* 027736D8 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 027736DC */ _t58 = cpu->r[1] + 0x00000030u;
|
|
/* 027736DC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 027736E0 */ _t59 = cpu->r[1] + 0x00000024u;
|
|
/* 027736E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 027736E4 */ _t60 = cpu->r[30] + 0x00000054u;
|
|
/* 027736E4 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[10]);
|
|
/* 027736E8 */ _t61 = cpu->r[30] + 0x0000005Cu;
|
|
/* 027736E8 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 027736EC */ _t62 = cpu->r[30] + 0x0000006Cu;
|
|
/* 027736EC */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 027736F0 */ _t63 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027736F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 027736F4 */ _t64 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027736F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 027736F8 */ _t65 = cpu->r[30] + 0x00000074u;
|
|
/* 027736F8 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 027736FC */ _t66 = cpu->r[30] + 0x0000007Cu;
|
|
/* 027736FC */ rbrew_write_f32(cpu->mem, _t66, cpu->f[11]);
|
|
/* 02773700 */ _t67 = cpu->r[1] + 0x00000034u;
|
|
/* 02773700 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02773704 */ _t68 = cpu->r[1] + 0x00000040u;
|
|
/* 02773704 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02773708 */ _t69 = cpu->r[30] + 0x00000060u;
|
|
/* 02773708 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[9]);
|
|
/* 0277370C */ _t70 = cpu->r[1] + 0x00000020u;
|
|
/* 0277370C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02773710 */ _t71 = cpu->r[30] + 0x00000058u;
|
|
/* 02773710 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[11]);
|
|
/* 02773714 */ _t72 = cpu->r[30] + 0x00000050u;
|
|
/* 02773714 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[13]);
|
|
/* 02773718 */ _t73 = cpu->r[1] + 0x00000028u;
|
|
/* 02773718 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0277371C */ _t74 = cpu->r[30] + 0x00000008u;
|
|
/* 0277371C */ cpu->r[31] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02773720 */ _t75 = cpu->r[30] + 0x00000068u;
|
|
/* 02773720 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[10]);
|
|
/* 02773724 */ _t76 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02773724 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02773728 */ _t77 = cpu->r[1] + 0x00000044u;
|
|
/* 02773728 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0277372C */ _t78 = cpu->r[30] + 0x00000078u;
|
|
/* 0277372C */ rbrew_write_f32(cpu->mem, _t78, cpu->f[10]);
|
|
/* 02773730 */ _t79 = cpu->r[30] + 0x00000064u;
|
|
/* 02773730 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 02773734 */ _t80 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02773734 */ cpu->r[0] = rbrew_read8(cpu->mem, _t80);
|
|
/* 02773738 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0277373C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02773740 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02773744 */ _t81 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02773744 */ rbrew_write8(cpu->mem, _t81, (uint8_t)cpu->r[0]);
|
|
/* 02773748 */ Gambit_fn_02C69510(cpu);
|
|
/* 0277374C */ cpu->r[3] = cpu->r[31];
|
|
/* 02773750 */ Gambit_fn_02980378(cpu);
|
|
/* 02773754 */ _t82 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02773754 */ cpu->r[3] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02773758 */ Gambit_fn_021631D8(cpu);
|
|
/* 0277375C */ _t83 = cpu->r[30] + 0x0000021Cu;
|
|
/* 0277375C */ cpu->r[3] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02773760 */ Gambit_fn_021646CC(cpu);
|
|
/* 02773764 */ goto L_02773848;
|
|
L_02773768: ; // 0x2773768
|
|
/* 02773768 */ _t84 = cpu->r[6] + 0x00000008u;
|
|
/* 02773768 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0277376C */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 02773770 */ /* nop */
|
|
/* 02773774 */ /* nop */
|
|
/* 02773778 */ _t85 = cpu->r[1] + 0x00000018u;
|
|
/* 02773778 */ cpu->r[11] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0277377C */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0277377C */ rbrew_write_f32(cpu->mem, _t86, cpu->f[10]);
|
|
/* 02773780 */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02773780 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02773784 */ _t88 = cpu->r[1] + 0x00000014u;
|
|
/* 02773784 */ cpu->r[10] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02773788 */ cpu->r[4] = cpu->r[1] + 0x00000088u;
|
|
/* 0277378C */ _t89 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0277378C */ rbrew_write32(cpu->mem, _t89, cpu->r[11]);
|
|
/* 02773790 */ cpu->r[5] = cpu->r[31];
|
|
/* 02773794 */ _t90 = cpu->r[1] + 0x00000088u;
|
|
/* 02773794 */ rbrew_write32(cpu->mem, _t90, cpu->r[10]);
|
|
/* 02773798 */ cpu->r[3] = cpu->r[1] + 0x00000094u;
|
|
/* 0277379C */ _t91 = cpu->r[1] + 0x00000090u;
|
|
/* 0277379C */ rbrew_write32(cpu->mem, _t91, cpu->r[0]);
|
|
/* 027737A0 */ Gambit_fn_023D860C(cpu);
|
|
/* 027737A4 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027737A8 */ cpu->r[4] = cpu->r[1] + 0x00000094u;
|
|
/* 027737AC */ cpu->r[5] = cpu->r[3];
|
|
/* 027737B0 */ Gambit_fn_02C69544(cpu);
|
|
/* 027737B4 */ _t92 = cpu->r[1] + 0x00000048u;
|
|
/* 027737B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 027737B8 */ _t93 = cpu->r[1] + 0x00000038u;
|
|
/* 027737B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 027737BC */ _t94 = cpu->r[30] + 0x00000070u;
|
|
/* 027737BC */ rbrew_write_f32(cpu->mem, _t94, cpu->f[12]);
|
|
/* 027737C0 */ _t95 = cpu->r[1] + 0x00000030u;
|
|
/* 027737C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 027737C4 */ _t96 = cpu->r[1] + 0x00000024u;
|
|
/* 027737C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 027737C8 */ _t97 = cpu->r[30] + 0x00000054u;
|
|
/* 027737C8 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[10]);
|
|
/* 027737CC */ _t98 = cpu->r[30] + 0x0000005Cu;
|
|
/* 027737CC */ rbrew_write_f32(cpu->mem, _t98, cpu->f[12]);
|
|
/* 027737D0 */ _t99 = cpu->r[30] + 0x0000006Cu;
|
|
/* 027737D0 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[13]);
|
|
/* 027737D4 */ _t100 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027737D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 027737D8 */ _t101 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027737D8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 027737DC */ _t102 = cpu->r[30] + 0x00000074u;
|
|
/* 027737DC */ rbrew_write_f32(cpu->mem, _t102, cpu->f[0]);
|
|
/* 027737E0 */ _t103 = cpu->r[30] + 0x0000007Cu;
|
|
/* 027737E0 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[11]);
|
|
/* 027737E4 */ _t104 = cpu->r[1] + 0x00000040u;
|
|
/* 027737E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 027737E8 */ _t105 = cpu->r[1] + 0x00000028u;
|
|
/* 027737E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 027737EC */ _t106 = cpu->r[30] + 0x00000008u;
|
|
/* 027737EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t106);
|
|
/* 027737F0 */ _t107 = cpu->r[30] + 0x00000068u;
|
|
/* 027737F0 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[10]);
|
|
/* 027737F4 */ _t108 = cpu->r[30] + 0x00000058u;
|
|
/* 027737F4 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[11]);
|
|
/* 027737F8 */ _t109 = cpu->r[1] + 0x00000020u;
|
|
/* 027737F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 027737FC */ _t110 = cpu->r[1] + 0x00000034u;
|
|
/* 027737FC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02773800 */ _t111 = cpu->r[30] + 0x00000050u;
|
|
/* 02773800 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[13]);
|
|
/* 02773804 */ _t112 = cpu->r[30] + 0x00000060u;
|
|
/* 02773804 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[9]);
|
|
/* 02773808 */ _t113 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02773808 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 0277380C */ _t114 = cpu->r[1] + 0x00000044u;
|
|
/* 0277380C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 02773810 */ _t115 = cpu->r[30] + 0x00000078u;
|
|
/* 02773810 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[10]);
|
|
/* 02773814 */ _t116 = cpu->r[30] + 0x00000064u;
|
|
/* 02773814 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[0]);
|
|
/* 02773818 */ _t117 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02773818 */ cpu->r[0] = rbrew_read8(cpu->mem, _t117);
|
|
/* 0277381C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02773820 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02773824 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02773828 */ _t118 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02773828 */ rbrew_write8(cpu->mem, _t118, (uint8_t)cpu->r[0]);
|
|
/* 0277382C */ Gambit_fn_02C69510(cpu);
|
|
/* 02773830 */ cpu->r[3] = cpu->r[31];
|
|
/* 02773834 */ Gambit_fn_02980378(cpu);
|
|
/* 02773838 */ _t119 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02773838 */ cpu->r[3] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0277383C */ Gambit_fn_021631D8(cpu);
|
|
/* 02773840 */ _t120 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02773840 */ cpu->r[3] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02773844 */ Gambit_fn_021646CC(cpu);
|
|
L_02773848: ; // 0x2773848
|
|
/* 02773848 */ /* nop */
|
|
/* 0277384C */ _t121 = cpu->r[1] + 0x000000DCu;
|
|
/* 0277384C */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02773850 */ cpu->lr = cpu->r[0];
|
|
/* 02773854 */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 02773858 */ return;
|
|
}
|
|
|
|
// fn_0277385C @ 0x277385c
|
|
void Gambit_fn_0277385C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_0277385C: ; // 0x277385c
|
|
/* 0277385C */ _t0 = cpu->r[3] + 0x00000208u;
|
|
/* 0277385C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02773864 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773864 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02773864 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773864 */ goto L_02773868;
|
|
L_02773868: ; // 0x2773868
|
|
/* 02773868 */ _t3 = cpu->r[11] + 0x0000008Cu;
|
|
/* 02773868 */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0277386C */ cpu->r[0] = cpu->r[12] ^ 0x00000001u;
|
|
/* 02773870 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02773870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773874 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773874 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02773874 */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773874 */ goto L_02773878;
|
|
L_02773878: ; // 0x2773878
|
|
/* 02773878 */ cpu->r[4] = 0x101F0000u;
|
|
/* 0277387C */ _t6 = cpu->r[3] + 0x00000030u;
|
|
/* 0277387C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02773880 */ cpu->r[4] = cpu->r[4] + 0x00001CACu;
|
|
/* 02773884 */ goto L_027B70F0;
|
|
L_027B70F0: ; // 0x27b70f0
|
|
/* 027B70F0 */ cpu->r[0] = cpu->lr;
|
|
/* 027B70F4 */ _t7 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 027B70F4 */ rbrew_write32(cpu->mem, _t7, cpu->r[1]);
|
|
/* 027B70F4 */ cpu->r[1] = _t7;
|
|
/* 027B70F8 */ _t8 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027B70F8 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 027B70FC */ _t9 = cpu->r[1] + 0x00000060u;
|
|
/* 027B70FC */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 027B7100 */ _t10 = cpu->r[1] + 0x00000058u;
|
|
/* 027B7100 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 027B7104 */ _t11 = cpu->r[1] + 0x00000064u;
|
|
/* 027B7104 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 027B7108 */ _t12 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027B7108 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027B710C */ _t13 = cpu->r[3] + 0x000000E0u;
|
|
/* 027B710C */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027B7110 */ _t14 = cpu->r[11] + 0x00000074u;
|
|
/* 027B7110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027B7114 */ cpu->ctr = cpu->r[0];
|
|
/* 027B7118 */ cpu->r[30] = cpu->r[3];
|
|
/* 027B711C */ cpu->r[31] = cpu->r[4];
|
|
/* 027B7120 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027B7124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027B7128 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027B7128 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027B7128 */ if (_t16) goto L_027B71F0; else goto L_027B712C;
|
|
L_027B712C: ; // 0x27b712c
|
|
/* 027B712C */ _t17 = cpu->r[30] + 0x00000000u;
|
|
/* 027B712C */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027B7130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027B7134 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027B7134 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027B7134 */ if (_t19) goto L_027B71F0; else goto L_027B7138;
|
|
L_027B7138: ; // 0x27b7138
|
|
/* 027B7138 */ cpu->r[12] = 0x10110000u;
|
|
/* 027B713C */ _t20 = cpu->r[31] + 0x00000004u;
|
|
/* 027B713C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027B7140 */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 027B7144 */ _t21 = cpu->r[12] + 0x00007399u;
|
|
/* 027B7144 */ cpu->r[12] = rbrew_read8(cpu->mem, _t21);
|
|
/* 027B7148 */ cpu->r[0] = 0x10110000u;
|
|
/* 027B714C */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 027B714C */ rbrew_write32(cpu->mem, _t22, cpu->r[7]);
|
|
/* 027B7150 */ cpu->r[0] = cpu->r[0] + 0xFFFFB444u;
|
|
/* 027B7154 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 027B7154 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[12]);
|
|
/* 027B7158 */ cpu->r[8] = 0x00000040u;
|
|
/* 027B715C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027B715C */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 027B7160 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 027B7160 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 027B7164 */ _t26 = cpu->r[1] + 0x00000053u;
|
|
/* 027B7164 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[12]);
|
|
/* 027B7168 */ _t27 = cpu->r[11] + 0x00000014u;
|
|
/* 027B7168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027B716C */ _t28 = cpu->r[30] + 0x00000004u;
|
|
/* 027B716C */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027B7170 */ cpu->ctr = cpu->r[0];
|
|
/* 027B7174 */ _t29 = cpu->r[10] + 0x00000004u;
|
|
/* 027B7174 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027B7178 */ cpu->r[3] = cpu->r[31];
|
|
/* 027B717C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027B7180 */ _t30 = cpu->r[29] + 0x00000034u;
|
|
/* 027B7180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027B7184 */ _t31 = cpu->r[31] + 0x00000000u;
|
|
/* 027B7184 */ cpu->r[5] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027B7188 */ cpu->ctr = cpu->r[0];
|
|
/* 027B718C */ _t32 = cpu->r[30] + 0x00000004u;
|
|
/* 027B718C */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027B7190 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027B7194 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027B7198 */ _t33 = cpu->r[30] + 0x00000004u;
|
|
/* 027B7198 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027B719C */ cpu->r[29] = 0x00000000u;
|
|
/* 027B71A0 */ _t34 = cpu->r[12] + 0x00000018u;
|
|
/* 027B71A0 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 027B71A4 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027B71A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027B71A8 */ _t36 = cpu->r[8] + 0x00000014u;
|
|
/* 027B71A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027B71AC */ cpu->ctr = cpu->r[0];
|
|
/* 027B71B0 */ _t37 = cpu->r[30] + 0x000000E0u;
|
|
/* 027B71B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027B71B4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027B71B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027B71BC */ _t38 = cpu->r[30] + 0x00000004u;
|
|
/* 027B71BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027B71C0 */ _t39 = cpu->r[3] + 0x00000004u;
|
|
/* 027B71C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027B71C4 */ _t40 = cpu->r[10] + 0x00000044u;
|
|
/* 027B71C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027B71C8 */ _t41 = cpu->r[31] + 0x000000B4u;
|
|
/* 027B71C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027B71CC */ cpu->ctr = cpu->r[0];
|
|
/* 027B71D0 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 027B71D0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027B71D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027B71D8 */ cpu->ctr = cpu->r[31];
|
|
/* 027B71DC */ cpu->r[5] = cpu->r[3];
|
|
/* 027B71E0 */ cpu->r[6] = cpu->r[29];
|
|
/* 027B71E4 */ cpu->r[4] = cpu->r[28];
|
|
/* 027B71E8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027B71EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_027B71F0: ; // 0x27b71f0
|
|
/* 027B71F0 */ _t43 = cpu->r[1] + 0x00000058u;
|
|
/* 027B71F0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027B71F4 */ _t44 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027B71F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027B71F8 */ _t45 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027B71F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027B71FC */ _t46 = cpu->r[1] + 0x00000060u;
|
|
/* 027B71FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027B7200 */ cpu->lr = cpu->r[0];
|
|
/* 027B7204 */ _t47 = cpu->r[1] + 0x00000064u;
|
|
/* 027B7204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 027B7208 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 027B720C */ return;
|
|
}
|
|
|
|
// fn_02773888 @ 0x2773888
|
|
void Gambit_fn_02773888(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02773888: ; // 0x2773888
|
|
/* 02773888 */ cpu->r[0] = cpu->lr;
|
|
/* 0277388C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0277388C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02773890 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02773890 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02773890 */ cpu->r[1] = _t1;
|
|
/* 02773894 */ Gambit_fn_027DF9A0(cpu);
|
|
/* 02773898 */ cpu->r[12] = 0x10100000u;
|
|
/* 0277389C */ _t2 = cpu->r[3] + 0x000000A0u;
|
|
/* 0277389C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027738A0 */ _t3 = cpu->r[12] + 0x00001D34u;
|
|
/* 027738A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027738A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 027738A8 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027738A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027738A8 */ if (_t5) goto L_027738AC; else goto L_027738C0;
|
|
L_027738AC: ; // 0x27738ac
|
|
/* 027738AC */ cpu->r[12] = 0x10100000u;
|
|
/* 027738B0 */ cpu->f[11] = fabs(cpu->f[0]);
|
|
/* 027738B4 */ _t6 = cpu->r[12] + 0x00001CF4u;
|
|
/* 027738B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027738B8 */ /* nop */
|
|
/* 027738BC */ goto L_027738E4;
|
|
L_027738C0: ; // 0x27738c0
|
|
/* 027738C0 */ cpu->r[12] = 0x10100000u;
|
|
/* 027738C4 */ _t7 = cpu->r[12] + 0x00001D38u;
|
|
/* 027738C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027738C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[13]);
|
|
/* 027738CC */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027738CC */ _t9 = _t8 & 0x00000001u;
|
|
/* 027738CC */ if (_t9) goto L_027738D0; else goto L_027738D4;
|
|
L_027738D0: ; // 0x27738d0
|
|
/* 027738D0 */ cpu->f[10] = cpu->f[13];
|
|
L_027738D4: ; // 0x27738d4
|
|
/* 027738D4 */ cpu->r[12] = 0x10100000u;
|
|
/* 027738D8 */ cpu->f[11] = fabs(cpu->f[10]);
|
|
/* 027738DC */ _t10 = cpu->r[12] + 0x00001CF4u;
|
|
/* 027738DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027738E0 */ /* nop */
|
|
L_027738E4: ; // 0x27738e4
|
|
/* 027738E4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027738E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027738E8 */ cpu->lr = cpu->r[0];
|
|
/* 027738EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027738F0 */ return;
|
|
}
|
|
|
|
// fn_02773890 @ 0x2773890
|
|
void Gambit_fn_02773890(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02773890: ; // 0x2773890
|
|
/* 02773890 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02773890 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773890 */ cpu->r[1] = _t0;
|
|
/* 02773894 */ Gambit_fn_027DF9A0(cpu);
|
|
/* 02773898 */ cpu->r[12] = 0x10100000u;
|
|
/* 0277389C */ _t1 = cpu->r[3] + 0x000000A0u;
|
|
/* 0277389C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027738A0 */ _t2 = cpu->r[12] + 0x00001D34u;
|
|
/* 027738A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027738A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 027738A8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027738A8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027738A8 */ if (_t4) goto L_027738AC; else goto L_027738C0;
|
|
L_027738AC: ; // 0x27738ac
|
|
/* 027738AC */ cpu->r[12] = 0x10100000u;
|
|
/* 027738B0 */ cpu->f[11] = fabs(cpu->f[0]);
|
|
/* 027738B4 */ _t5 = cpu->r[12] + 0x00001CF4u;
|
|
/* 027738B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027738B8 */ /* nop */
|
|
/* 027738BC */ goto L_027738E4;
|
|
L_027738C0: ; // 0x27738c0
|
|
/* 027738C0 */ cpu->r[12] = 0x10100000u;
|
|
/* 027738C4 */ _t6 = cpu->r[12] + 0x00001D38u;
|
|
/* 027738C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027738C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[13]);
|
|
/* 027738CC */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027738CC */ _t8 = _t7 & 0x00000001u;
|
|
/* 027738CC */ if (_t8) goto L_027738D0; else goto L_027738D4;
|
|
L_027738D0: ; // 0x27738d0
|
|
/* 027738D0 */ cpu->f[10] = cpu->f[13];
|
|
L_027738D4: ; // 0x27738d4
|
|
/* 027738D4 */ cpu->r[12] = 0x10100000u;
|
|
/* 027738D8 */ cpu->f[11] = fabs(cpu->f[10]);
|
|
/* 027738DC */ _t9 = cpu->r[12] + 0x00001CF4u;
|
|
/* 027738DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027738E0 */ /* nop */
|
|
L_027738E4: ; // 0x27738e4
|
|
/* 027738E4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027738E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027738E8 */ cpu->lr = cpu->r[0];
|
|
/* 027738EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027738F0 */ return;
|
|
}
|
|
|
|
// fn_027738F8 @ 0x27738f8
|
|
void Gambit_fn_027738F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027738F8: ; // 0x27738f8
|
|
/* 027738F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027738F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027738F8 */ cpu->r[1] = _t0;
|
|
/* 027738FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027738FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02773900 */ cpu->r[31] = cpu->r[3];
|
|
/* 02773904 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02773904 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02773908 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 02773908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0277390C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773910 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773910 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02773910 */ if (_t5) goto L_0277391C; else goto L_02773914;
|
|
L_02773914: ; // 0x2773914
|
|
/* 02773914 */ cpu->r[3] = cpu->r[31];
|
|
/* 02773918 */ Gambit_fn_02772E64(cpu);
|
|
L_0277391C: ; // 0x277391c
|
|
/* 0277391C */ cpu->r[12] = 0x10100000u;
|
|
/* 02773920 */ _t6 = cpu->r[12] + 0x00001CF4u;
|
|
/* 02773920 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02773924 */ _t7 = cpu->r[31] + 0x00000210u;
|
|
/* 02773924 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 02773928 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02773928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0277392C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277392C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02773930 */ cpu->lr = cpu->r[0];
|
|
/* 02773934 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773938 */ return;
|
|
}
|
|
|
|
// fn_02773940 @ 0x2773940
|
|
void Gambit_fn_02773940(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_02773940: ; // 0x2773940
|
|
/* 02773940 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02773940 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773940 */ cpu->r[1] = _t0;
|
|
/* 02773944 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02773944 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02773948 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773948 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0277394C */ cpu->r[30] = 0x101D0000u;
|
|
/* 02773950 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02773950 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02773954 */ _t4 = cpu->r[30] + 0xFFFF8FC4u;
|
|
/* 02773954 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02773954 */ cpu->r[30] = _t4;
|
|
/* 02773958 */ cpu->r[31] = cpu->r[3];
|
|
/* 0277395C */ _t5 = cpu->r[11] + 0x0000024Cu;
|
|
/* 0277395C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02773960 */ Gambit_fn_0276AE7C(cpu);
|
|
/* 02773964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773968 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773968 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02773968 */ if (_t7) goto L_0277396C; else goto L_02773A30;
|
|
L_0277396C: ; // 0x277396c
|
|
/* 0277396C */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 0277396C */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02773970 */ _t9 = cpu->r[10] + 0x0000024Cu;
|
|
/* 02773970 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02773974 */ Gambit_fn_0276AE38(cpu);
|
|
/* 02773978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0277397C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277397C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0277397C */ if (_t11) goto L_02773A30; else goto L_02773980;
|
|
L_02773980: ; // 0x2773980
|
|
/* 02773980 */ cpu->r[3] = cpu->r[31];
|
|
/* 02773984 */ Gambit_fn_02773888(cpu);
|
|
/* 02773988 */ _t12 = cpu->r[31] + 0x00000210u;
|
|
/* 02773988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0277398C */ cpu->r[11] = 0x10100000u;
|
|
/* 02773990 */ _t13 = cpu->r[11] + 0x00001D3Cu;
|
|
/* 02773990 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02773994 */ cpu->r[12] = 0x10100000u;
|
|
/* 02773998 */ cpu->f[10] = fma(cpu->f[13], cpu->f[1], -(cpu->f[0]));
|
|
/* 0277399C */ _t14 = cpu->r[12] + 0x00001D40u;
|
|
/* 0277399C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027739A0 */ cpu->r[11] = 0x10100000u;
|
|
/* 027739A4 */ cpu->f[12] = fma(cpu->f[10], cpu->f[11], cpu->f[0]);
|
|
/* 027739A8 */ _t15 = cpu->r[31] + 0x0000020Cu;
|
|
/* 027739A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027739AC */ _t16 = cpu->r[11] + 0x00001D44u;
|
|
/* 027739AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027739B0 */ cpu->f[11] = cpu->f[11] + cpu->f[12];
|
|
/* 027739B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 027739B8 */ _t17 = cpu->r[31] + 0x00000210u;
|
|
/* 027739B8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 027739BC */ _t18 = cpu->r[31] + 0x0000020Cu;
|
|
/* 027739BC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 027739C0 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027739C0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027739C0 */ if (_t20) goto L_027739D4; else goto L_027739C4;
|
|
L_027739C4: ; // 0x27739c4
|
|
/* 027739C4 */ cpu->r[12] = 0x10100000u;
|
|
/* 027739C8 */ _t21 = cpu->r[12] + 0x00001D48u;
|
|
/* 027739C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 027739CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 027739D0 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027739D0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027739D0 */ if (_t23) goto L_027739D4; else goto L_027739F8;
|
|
L_027739D4: ; // 0x27739d4
|
|
/* 027739D4 */ _t24 = cpu->r[31] + 0x00000030u;
|
|
/* 027739D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027739D8 */ _t25 = cpu->r[3] + 0x000000E0u;
|
|
/* 027739D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027739DC */ _t26 = cpu->r[12] + 0x00000044u;
|
|
/* 027739DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027739E0 */ cpu->r[5] = 0x10100000u;
|
|
/* 027739E4 */ cpu->ctr = cpu->r[0];
|
|
/* 027739E8 */ cpu->r[5] = cpu->r[5] + 0x00001D58u;
|
|
/* 027739EC */ cpu->r[4] = 0x00000000u;
|
|
/* 027739F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027739F4 */ _t27 = cpu->r[31] + 0x0000020Cu;
|
|
/* 027739F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
L_027739F8: ; // 0x27739f8
|
|
/* 027739F8 */ cpu->r[11] = 0x10100000u;
|
|
/* 027739FC */ _t28 = cpu->r[11] + 0x00001D50u;
|
|
/* 027739FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02773A00 */ cpu->r[10] = 0x10100000u;
|
|
/* 02773A04 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 02773A08 */ _t29 = cpu->r[10] + 0x00001D4Cu;
|
|
/* 02773A08 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02773A0C */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02773A0C */ _t31 = _t30 & 0x00000001u;
|
|
/* 02773A0C */ if (_t31) goto L_02773A10; else goto L_02773A18;
|
|
L_02773A10: ; // 0x2773a10
|
|
/* 02773A10 */ cpu->f[11] = cpu->f[11] - cpu->f[10];
|
|
/* 02773A14 */ _t32 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02773A14 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
L_02773A18: ; // 0x2773a18
|
|
/* 02773A18 */ cpu->r[12] = 0x10100000u;
|
|
/* 02773A1C */ _t33 = cpu->r[12] + 0x00001D54u;
|
|
/* 02773A1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02773A20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 02773A24 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02773A24 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02773A24 */ if (_t35) goto L_02773A28; else goto L_02773A30;
|
|
L_02773A28: ; // 0x2773a28
|
|
/* 02773A28 */ cpu->f[10] = cpu->f[11] + cpu->f[10];
|
|
/* 02773A2C */ _t36 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02773A2C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[10]);
|
|
L_02773A30: ; // 0x2773a30
|
|
/* 02773A30 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02773A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02773A34 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02773A34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02773A38 */ cpu->lr = cpu->r[0];
|
|
/* 02773A3C */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773A3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02773A40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773A44 */ return;
|
|
}
|
|
|
|
// fn_02773A4C @ 0x2773a4c
|
|
void Gambit_fn_02773A4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02773A4C: ; // 0x2773a4c
|
|
/* 02773A4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02773A4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773A4C */ cpu->r[1] = _t0;
|
|
/* 02773A50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773A50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02773A54 */ cpu->r[5] = 0x00000001u;
|
|
/* 02773A58 */ cpu->r[31] = cpu->r[3];
|
|
/* 02773A5C */ cpu->r[4] = 0x0000000Cu;
|
|
/* 02773A60 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02773A60 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02773A64 */ Gambit_fn_02002728(cpu);
|
|
/* 02773A68 */ cpu->r[12] = 0x10100000u;
|
|
/* 02773A6C */ _t3 = cpu->r[12] + 0x00001CF4u;
|
|
/* 02773A6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02773A70 */ _t4 = cpu->r[31] + 0x00000210u;
|
|
/* 02773A70 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 02773A74 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02773A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02773A78 */ cpu->lr = cpu->r[0];
|
|
/* 02773A7C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773A7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02773A80 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773A84 */ return;
|
|
}
|
|
|
|
// fn_02773A8C @ 0x2773a8c
|
|
void Gambit_fn_02773A8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02773A8C: ; // 0x2773a8c
|
|
/* 02773A8C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02773A8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773A8C */ cpu->r[1] = _t0;
|
|
/* 02773A90 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773A90 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02773A94 */ cpu->r[31] = cpu->r[3];
|
|
/* 02773A98 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02773A98 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02773A9C */ Gambit_fn_020026A4(cpu);
|
|
/* 02773AA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773AA4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773AA4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02773AA4 */ if (_t4) goto L_02773AC0; else goto L_02773AA8;
|
|
L_02773AA8: ; // 0x2773aa8
|
|
/* 02773AA8 */ _t5 = cpu->r[31] + 0x000001D8u;
|
|
/* 02773AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02773AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773AB0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773AB0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02773AB0 */ if (_t7) goto L_02773AC0; else goto L_02773AB4;
|
|
L_02773AB4: ; // 0x2773ab4
|
|
/* 02773AB4 */ cpu->r[3] = cpu->r[31] + 0x000001D0u;
|
|
/* 02773AB8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02773ABC */ Gambit_fn_02065038(cpu);
|
|
L_02773AC0: ; // 0x2773ac0
|
|
/* 02773AC0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02773AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02773AC4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02773AC8 */ cpu->lr = cpu->r[0];
|
|
/* 02773ACC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02773AD0 */ return;
|
|
}
|
|
|
|
// fn_02773AD4 @ 0x2773ad4
|
|
void Gambit_fn_02773AD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122;
|
|
|
|
L_02773AD4: ; // 0x2773ad4
|
|
/* 02773AD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02773AD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773AD4 */ cpu->r[1] = _t0;
|
|
/* 02773AD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02773AD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02773ADC */ cpu->r[0] = cpu->lr;
|
|
/* 02773AE0 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02773AE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02773AE4 */ cpu->r[6] = 0x00000002u;
|
|
/* 02773AE8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773AE8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02773AEC */ cpu->r[10] = 0x10100000u;
|
|
/* 02773AF0 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02773AF0 */ rbrew_write32(cpu->mem, _t4, cpu->r[6]);
|
|
/* 02773AF4 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02773AF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02773AF8 */ cpu->r[3] = 0x101F0000u;
|
|
/* 02773AFC */ cpu->r[12] = 0x10100000u;
|
|
/* 02773B00 */ _t6 = cpu->r[10] + 0x00001D68u;
|
|
/* 02773B00 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02773B04 */ cpu->r[3] = cpu->r[3] + 0x00001CA4u;
|
|
/* 02773B08 */ _t7 = cpu->r[12] + 0x00001D64u;
|
|
/* 02773B08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02773B0C */ cpu->r[8] = 0x101F0000u;
|
|
/* 02773B10 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02773B14 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02773B14 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02773B18 */ cpu->r[0] = 0xFFFFFFFDu;
|
|
/* 02773B1C */ cpu->r[5] = 0xFFFFFFFEu;
|
|
/* 02773B20 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02773B20 */ rbrew_write32(cpu->mem, _t9, cpu->r[4]);
|
|
/* 02773B24 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02773B28 */ _t10 = cpu->r[8] + 0x00001C8Cu;
|
|
/* 02773B28 */ rbrew_write32(cpu->mem, _t10, cpu->r[5]);
|
|
/* 02773B28 */ cpu->r[8] = _t10;
|
|
/* 02773B2C */ cpu->r[7] = 0x101F0000u;
|
|
/* 02773B30 */ _t11 = cpu->r[9] + 0x00001C84u;
|
|
/* 02773B30 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02773B30 */ cpu->r[9] = _t11;
|
|
/* 02773B34 */ cpu->r[5] = 0x10100000u;
|
|
/* 02773B38 */ _t12 = cpu->r[8] + 0x00000004u;
|
|
/* 02773B38 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02773B3C */ cpu->r[8] = 0x10100000u;
|
|
/* 02773B40 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02773B44 */ _t13 = cpu->r[9] + 0x00000004u;
|
|
/* 02773B44 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 02773B48 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02773B4C */ _t14 = cpu->r[11] + 0x00001CB8u;
|
|
/* 02773B4C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 02773B4C */ cpu->r[11] = _t14;
|
|
/* 02773B50 */ cpu->r[9] = cpu->r[9] + 0x00001C9Cu;
|
|
/* 02773B54 */ _t15 = cpu->r[5] + 0x00001D70u;
|
|
/* 02773B54 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02773B58 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02773B5C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 02773B5C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 02773B60 */ cpu->r[31] = 0x10100000u;
|
|
/* 02773B64 */ _t17 = cpu->r[8] + 0x00001D6Cu;
|
|
/* 02773B64 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02773B68 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02773B6C */ _t18 = cpu->r[9] + 0x00000004u;
|
|
/* 02773B6C */ rbrew_write32(cpu->mem, _t18, cpu->r[4]);
|
|
/* 02773B70 */ cpu->r[31] = cpu->r[31] + 0x00001C14u;
|
|
/* 02773B74 */ _t19 = cpu->r[7] + 0x00001C94u;
|
|
/* 02773B74 */ rbrew_write32(cpu->mem, _t19, cpu->r[4]);
|
|
/* 02773B74 */ cpu->r[7] = _t19;
|
|
/* 02773B78 */ cpu->r[12] = 0x10100000u;
|
|
/* 02773B7C */ _t20 = cpu->r[7] + 0x00000004u;
|
|
/* 02773B7C */ rbrew_write32(cpu->mem, _t20, cpu->r[4]);
|
|
/* 02773B80 */ cpu->r[7] = 0x10100000u;
|
|
/* 02773B84 */ _t21 = cpu->r[12] + 0x00001D74u;
|
|
/* 02773B84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02773B88 */ cpu->r[7] = cpu->r[7] + 0x00001E18u;
|
|
/* 02773B8C */ cpu->r[10] = cpu->r[10] + 0xFFFF8D08u;
|
|
/* 02773B90 */ _t22 = cpu->r[5] + 0x00001CC4u;
|
|
/* 02773B90 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 02773B90 */ cpu->r[5] = _t22;
|
|
/* 02773B94 */ cpu->r[4] = 0x10100000u;
|
|
/* 02773B98 */ _t23 = cpu->r[10] + 0x00000004u;
|
|
/* 02773B98 */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 02773B9C */ _t24 = cpu->r[3] + 0x00000000u;
|
|
/* 02773B9C */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02773BA0 */ cpu->r[30] = 0x10100000u;
|
|
/* 02773BA4 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 02773BA4 */ rbrew_write32(cpu->mem, _t25, cpu->r[7]);
|
|
/* 02773BA8 */ cpu->r[4] = cpu->r[4] + 0x00001E7Cu;
|
|
/* 02773BAC */ _t26 = cpu->r[5] + 0x00000004u;
|
|
/* 02773BAC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 02773BB0 */ _t27 = cpu->r[10] + 0x00000010u;
|
|
/* 02773BB0 */ rbrew_write32(cpu->mem, _t27, cpu->r[31]);
|
|
/* 02773BB4 */ cpu->r[3] = 0x10100000u;
|
|
/* 02773BB8 */ _t28 = cpu->r[11] + 0x00000008u;
|
|
/* 02773BB8 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 02773BBC */ cpu->r[3] = cpu->r[3] + 0x00001E08u;
|
|
/* 02773BC0 */ _t29 = cpu->r[9] + 0x00000000u;
|
|
/* 02773BC0 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02773BC4 */ _t30 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02773BC4 */ rbrew_write32(cpu->mem, _t30, cpu->r[4]);
|
|
/* 02773BC8 */ cpu->r[30] = cpu->r[30] + 0x00001E8Cu;
|
|
/* 02773BCC */ _t31 = cpu->r[10] + 0x0000001Cu;
|
|
/* 02773BCC */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
/* 02773BD0 */ cpu->r[29] = 0x10100000u;
|
|
/* 02773BD4 */ _t32 = cpu->r[10] + 0x00000018u;
|
|
/* 02773BD4 */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 02773BD8 */ cpu->r[29] = cpu->r[29] + 0x00001E9Cu;
|
|
/* 02773BDC */ _t33 = cpu->r[10] + 0x00000028u;
|
|
/* 02773BDC */ rbrew_write32(cpu->mem, _t33, cpu->r[31]);
|
|
/* 02773BE0 */ _t34 = cpu->r[10] + 0x00000024u;
|
|
/* 02773BE0 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 02773BE4 */ _t35 = cpu->r[5] + 0x00000008u;
|
|
/* 02773BE4 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 02773BE8 */ _t36 = cpu->r[10] + 0x00000034u;
|
|
/* 02773BE8 */ rbrew_write32(cpu->mem, _t36, cpu->r[31]);
|
|
/* 02773BEC */ cpu->r[9] = 0x10100000u;
|
|
/* 02773BF0 */ _t37 = cpu->r[10] + 0x00000030u;
|
|
/* 02773BF0 */ rbrew_write32(cpu->mem, _t37, cpu->r[3]);
|
|
/* 02773BF4 */ cpu->r[9] = cpu->r[9] + 0x00001EACu;
|
|
/* 02773BF8 */ _t38 = cpu->r[10] + 0x00000040u;
|
|
/* 02773BF8 */ rbrew_write32(cpu->mem, _t38, cpu->r[31]);
|
|
/* 02773BFC */ cpu->r[12] = 0x10100000u;
|
|
/* 02773C00 */ _t39 = cpu->r[10] + 0x0000003Cu;
|
|
/* 02773C00 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
/* 02773C04 */ cpu->r[12] = cpu->r[12] + 0x00001EC4u;
|
|
/* 02773C08 */ _t40 = cpu->r[10] + 0x0000004Cu;
|
|
/* 02773C08 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 02773C0C */ cpu->r[9] = 0x101F0000u;
|
|
/* 02773C10 */ _t41 = cpu->r[10] + 0x00000048u;
|
|
/* 02773C10 */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 02773C14 */ cpu->r[5] = 0x10100000u;
|
|
/* 02773C18 */ cpu->r[0] = 0x00000004u;
|
|
/* 02773C1C */ _t42 = cpu->r[10] + 0x00000058u;
|
|
/* 02773C1C */ rbrew_write32(cpu->mem, _t42, cpu->r[31]);
|
|
/* 02773C20 */ cpu->r[5] = cpu->r[5] + 0x00001EDCu;
|
|
/* 02773C24 */ _t43 = cpu->r[9] + 0x00001CB4u;
|
|
/* 02773C24 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02773C28 */ cpu->r[0] = 0x10100000u;
|
|
/* 02773C2C */ _t44 = cpu->r[10] + 0x00000054u;
|
|
/* 02773C2C */ rbrew_write32(cpu->mem, _t44, cpu->r[5]);
|
|
/* 02773C30 */ cpu->r[0] = cpu->r[0] + 0x00001E24u;
|
|
/* 02773C34 */ _t45 = cpu->r[10] + 0x00000064u;
|
|
/* 02773C34 */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 02773C38 */ cpu->r[5] = 0x10100000u;
|
|
/* 02773C3C */ _t46 = cpu->r[10] + 0x00000060u;
|
|
/* 02773C3C */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 02773C40 */ cpu->r[5] = cpu->r[5] + 0x00001E3Cu;
|
|
/* 02773C44 */ _t47 = cpu->r[10] + 0x00000070u;
|
|
/* 02773C44 */ rbrew_write32(cpu->mem, _t47, cpu->r[31]);
|
|
/* 02773C48 */ cpu->r[9] = 0x10100000u;
|
|
/* 02773C4C */ _t48 = cpu->r[10] + 0x0000006Cu;
|
|
/* 02773C4C */ rbrew_write32(cpu->mem, _t48, cpu->r[5]);
|
|
/* 02773C50 */ cpu->r[9] = cpu->r[9] + 0x00001E54u;
|
|
/* 02773C54 */ _t49 = cpu->r[10] + 0x0000007Cu;
|
|
/* 02773C54 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 02773C58 */ cpu->r[12] = 0x10100000u;
|
|
/* 02773C5C */ _t50 = cpu->r[10] + 0x00000078u;
|
|
/* 02773C5C */ rbrew_write32(cpu->mem, _t50, cpu->r[9]);
|
|
/* 02773C60 */ cpu->r[12] = cpu->r[12] + 0x00001EF4u;
|
|
/* 02773C64 */ _t51 = cpu->r[10] + 0x00000088u;
|
|
/* 02773C64 */ rbrew_write32(cpu->mem, _t51, cpu->r[31]);
|
|
/* 02773C68 */ cpu->r[11] = 0x10100000u;
|
|
/* 02773C6C */ _t52 = cpu->r[10] + 0x00000084u;
|
|
/* 02773C6C */ rbrew_write32(cpu->mem, _t52, cpu->r[12]);
|
|
/* 02773C70 */ cpu->r[11] = cpu->r[11] + 0x00001F0Cu;
|
|
/* 02773C74 */ _t53 = cpu->r[10] + 0x00000094u;
|
|
/* 02773C74 */ rbrew_write32(cpu->mem, _t53, cpu->r[31]);
|
|
/* 02773C78 */ _t54 = cpu->r[10] + 0x00000090u;
|
|
/* 02773C78 */ rbrew_write32(cpu->mem, _t54, cpu->r[11]);
|
|
/* 02773C7C */ _t55 = cpu->r[10] + 0x000000A0u;
|
|
/* 02773C7C */ rbrew_write32(cpu->mem, _t55, cpu->r[31]);
|
|
/* 02773C80 */ _t56 = cpu->r[10] + 0x0000009Cu;
|
|
/* 02773C80 */ rbrew_write32(cpu->mem, _t56, cpu->r[7]);
|
|
/* 02773C84 */ _t57 = cpu->r[10] + 0x000000ACu;
|
|
/* 02773C84 */ rbrew_write32(cpu->mem, _t57, cpu->r[31]);
|
|
/* 02773C88 */ _t58 = cpu->r[10] + 0x000000A8u;
|
|
/* 02773C88 */ rbrew_write32(cpu->mem, _t58, cpu->r[4]);
|
|
/* 02773C8C */ _t59 = cpu->r[10] + 0x000000B8u;
|
|
/* 02773C8C */ rbrew_write32(cpu->mem, _t59, cpu->r[31]);
|
|
/* 02773C90 */ _t60 = cpu->r[10] + 0x000000B4u;
|
|
/* 02773C90 */ rbrew_write32(cpu->mem, _t60, cpu->r[30]);
|
|
/* 02773C94 */ _t61 = cpu->r[10] + 0x000000C4u;
|
|
/* 02773C94 */ rbrew_write32(cpu->mem, _t61, cpu->r[31]);
|
|
/* 02773C98 */ _t62 = cpu->r[10] + 0x000000C0u;
|
|
/* 02773C98 */ rbrew_write32(cpu->mem, _t62, cpu->r[29]);
|
|
/* 02773C9C */ _t63 = cpu->r[10] + 0x000000D0u;
|
|
/* 02773C9C */ rbrew_write32(cpu->mem, _t63, cpu->r[31]);
|
|
/* 02773CA0 */ cpu->r[6] = 0x10100000u;
|
|
/* 02773CA4 */ _t64 = cpu->r[10] + 0x000000CCu;
|
|
/* 02773CA4 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 02773CA8 */ _t65 = cpu->r[10] + 0x000000DCu;
|
|
/* 02773CA8 */ rbrew_write32(cpu->mem, _t65, cpu->r[31]);
|
|
/* 02773CAC */ cpu->r[6] = cpu->r[6] + 0x00001F18u;
|
|
/* 02773CB0 */ cpu->r[7] = 0x10100000u;
|
|
/* 02773CB4 */ _t66 = cpu->r[10] + 0x000000D8u;
|
|
/* 02773CB4 */ rbrew_write32(cpu->mem, _t66, cpu->r[6]);
|
|
/* 02773CB8 */ cpu->r[7] = cpu->r[7] + 0x00001F30u;
|
|
/* 02773CBC */ _t67 = cpu->r[10] + 0x000000E8u;
|
|
/* 02773CBC */ rbrew_write32(cpu->mem, _t67, cpu->r[31]);
|
|
/* 02773CC0 */ cpu->r[8] = 0x10100000u;
|
|
/* 02773CC4 */ _t68 = cpu->r[10] + 0x000000E4u;
|
|
/* 02773CC4 */ rbrew_write32(cpu->mem, _t68, cpu->r[7]);
|
|
/* 02773CC8 */ cpu->r[8] = cpu->r[8] + 0x00001F48u;
|
|
/* 02773CCC */ _t69 = cpu->r[10] + 0x000000F4u;
|
|
/* 02773CCC */ rbrew_write32(cpu->mem, _t69, cpu->r[31]);
|
|
/* 02773CD0 */ _t70 = cpu->r[10] + 0x000000F0u;
|
|
/* 02773CD0 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 02773CD4 */ _t71 = cpu->r[10] + 0x00000100u;
|
|
/* 02773CD4 */ rbrew_write32(cpu->mem, _t71, cpu->r[31]);
|
|
/* 02773CD8 */ _t72 = cpu->r[10] + 0x000000FCu;
|
|
/* 02773CD8 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 02773CDC */ _t73 = cpu->r[10] + 0x0000010Cu;
|
|
/* 02773CDC */ rbrew_write32(cpu->mem, _t73, cpu->r[31]);
|
|
/* 02773CE0 */ _t74 = cpu->r[10] + 0x00000108u;
|
|
/* 02773CE0 */ rbrew_write32(cpu->mem, _t74, cpu->r[5]);
|
|
/* 02773CE4 */ _t75 = cpu->r[10] + 0x00000118u;
|
|
/* 02773CE4 */ rbrew_write32(cpu->mem, _t75, cpu->r[31]);
|
|
/* 02773CE8 */ _t76 = cpu->r[10] + 0x00000114u;
|
|
/* 02773CE8 */ rbrew_write32(cpu->mem, _t76, cpu->r[9]);
|
|
/* 02773CEC */ _t77 = cpu->r[10] + 0x00000124u;
|
|
/* 02773CEC */ rbrew_write32(cpu->mem, _t77, cpu->r[31]);
|
|
/* 02773CF0 */ _t78 = cpu->r[10] + 0x00000120u;
|
|
/* 02773CF0 */ rbrew_write32(cpu->mem, _t78, cpu->r[12]);
|
|
/* 02773CF4 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02773CF8 */ _t79 = cpu->r[10] + 0x00000130u;
|
|
/* 02773CF8 */ rbrew_write32(cpu->mem, _t79, cpu->r[31]);
|
|
/* 02773CFC */ cpu->r[3] = cpu->r[3] + 0xFFFF8E40u;
|
|
/* 02773D00 */ _t80 = cpu->r[10] + 0x0000012Cu;
|
|
/* 02773D00 */ rbrew_write32(cpu->mem, _t80, cpu->r[11]);
|
|
/* 02773D04 */ Gambit_fn_02C83090(cpu);
|
|
/* 02773D08 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02773D0C */ cpu->r[9] = 0x10100000u;
|
|
/* 02773D10 */ cpu->r[8] = cpu->r[8] + 0x00001CD0u;
|
|
/* 02773D14 */ cpu->r[9] = cpu->r[9] + 0x00001D78u;
|
|
/* 02773D18 */ _t81 = cpu->r[8] + 0x00000004u;
|
|
/* 02773D18 */ rbrew_write32(cpu->mem, _t81, cpu->r[31]);
|
|
/* 02773D1C */ cpu->r[10] = 0x10100000u;
|
|
/* 02773D20 */ _t82 = cpu->r[8] + 0x00000000u;
|
|
/* 02773D20 */ rbrew_write32(cpu->mem, _t82, cpu->r[9]);
|
|
/* 02773D24 */ cpu->r[10] = cpu->r[10] + 0x00001D80u;
|
|
/* 02773D28 */ _t83 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02773D28 */ rbrew_write32(cpu->mem, _t83, cpu->r[31]);
|
|
/* 02773D2C */ cpu->r[11] = 0x10100000u;
|
|
/* 02773D30 */ _t84 = cpu->r[8] + 0x00000008u;
|
|
/* 02773D30 */ rbrew_write32(cpu->mem, _t84, cpu->r[10]);
|
|
/* 02773D34 */ cpu->r[11] = cpu->r[11] + 0x00001D88u;
|
|
/* 02773D38 */ _t85 = cpu->r[8] + 0x00000014u;
|
|
/* 02773D38 */ rbrew_write32(cpu->mem, _t85, cpu->r[31]);
|
|
/* 02773D3C */ cpu->r[12] = 0x10100000u;
|
|
/* 02773D40 */ _t86 = cpu->r[8] + 0x00000010u;
|
|
/* 02773D40 */ rbrew_write32(cpu->mem, _t86, cpu->r[11]);
|
|
/* 02773D44 */ cpu->r[12] = cpu->r[12] + 0x00001D90u;
|
|
/* 02773D48 */ _t87 = cpu->r[8] + 0x0000001Cu;
|
|
/* 02773D48 */ rbrew_write32(cpu->mem, _t87, cpu->r[31]);
|
|
/* 02773D4C */ cpu->r[0] = 0x10100000u;
|
|
/* 02773D50 */ _t88 = cpu->r[8] + 0x00000018u;
|
|
/* 02773D50 */ rbrew_write32(cpu->mem, _t88, cpu->r[12]);
|
|
/* 02773D54 */ cpu->r[0] = cpu->r[0] + 0x00001D98u;
|
|
/* 02773D58 */ _t89 = cpu->r[8] + 0x00000024u;
|
|
/* 02773D58 */ rbrew_write32(cpu->mem, _t89, cpu->r[31]);
|
|
/* 02773D5C */ cpu->r[5] = 0x10100000u;
|
|
/* 02773D60 */ _t90 = cpu->r[8] + 0x00000020u;
|
|
/* 02773D60 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 02773D64 */ cpu->r[5] = cpu->r[5] + 0x00001DA0u;
|
|
/* 02773D68 */ _t91 = cpu->r[8] + 0x0000002Cu;
|
|
/* 02773D68 */ rbrew_write32(cpu->mem, _t91, cpu->r[31]);
|
|
/* 02773D6C */ _t92 = cpu->r[8] + 0x00000028u;
|
|
/* 02773D6C */ rbrew_write32(cpu->mem, _t92, cpu->r[5]);
|
|
/* 02773D70 */ cpu->r[6] = 0x10100000u;
|
|
/* 02773D74 */ _t93 = cpu->r[8] + 0x00000034u;
|
|
/* 02773D74 */ rbrew_write32(cpu->mem, _t93, cpu->r[31]);
|
|
/* 02773D78 */ cpu->r[6] = cpu->r[6] + 0x00001DA8u;
|
|
/* 02773D7C */ cpu->r[7] = 0x10100000u;
|
|
/* 02773D80 */ _t94 = cpu->r[8] + 0x00000030u;
|
|
/* 02773D80 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 02773D84 */ cpu->r[7] = cpu->r[7] + 0x00001DB0u;
|
|
/* 02773D88 */ _t95 = cpu->r[8] + 0x0000003Cu;
|
|
/* 02773D88 */ rbrew_write32(cpu->mem, _t95, cpu->r[31]);
|
|
/* 02773D8C */ cpu->r[9] = 0x10100000u;
|
|
/* 02773D90 */ _t96 = cpu->r[8] + 0x00000038u;
|
|
/* 02773D90 */ rbrew_write32(cpu->mem, _t96, cpu->r[7]);
|
|
/* 02773D94 */ cpu->r[9] = cpu->r[9] + 0x00001DB8u;
|
|
/* 02773D98 */ _t97 = cpu->r[8] + 0x00000044u;
|
|
/* 02773D98 */ rbrew_write32(cpu->mem, _t97, cpu->r[31]);
|
|
/* 02773D9C */ cpu->r[10] = 0x10100000u;
|
|
/* 02773DA0 */ _t98 = cpu->r[8] + 0x00000040u;
|
|
/* 02773DA0 */ rbrew_write32(cpu->mem, _t98, cpu->r[9]);
|
|
/* 02773DA4 */ cpu->r[10] = cpu->r[10] + 0x00001DC0u;
|
|
/* 02773DA8 */ _t99 = cpu->r[8] + 0x0000004Cu;
|
|
/* 02773DA8 */ rbrew_write32(cpu->mem, _t99, cpu->r[31]);
|
|
/* 02773DAC */ cpu->r[11] = 0x10100000u;
|
|
/* 02773DB0 */ _t100 = cpu->r[8] + 0x00000048u;
|
|
/* 02773DB0 */ rbrew_write32(cpu->mem, _t100, cpu->r[10]);
|
|
/* 02773DB4 */ cpu->r[11] = cpu->r[11] + 0x00001DC8u;
|
|
/* 02773DB8 */ _t101 = cpu->r[8] + 0x00000054u;
|
|
/* 02773DB8 */ rbrew_write32(cpu->mem, _t101, cpu->r[31]);
|
|
/* 02773DBC */ cpu->r[12] = 0x10100000u;
|
|
/* 02773DC0 */ _t102 = cpu->r[8] + 0x00000050u;
|
|
/* 02773DC0 */ rbrew_write32(cpu->mem, _t102, cpu->r[11]);
|
|
/* 02773DC4 */ cpu->r[12] = cpu->r[12] + 0x00001DD0u;
|
|
/* 02773DC8 */ _t103 = cpu->r[8] + 0x0000005Cu;
|
|
/* 02773DC8 */ rbrew_write32(cpu->mem, _t103, cpu->r[31]);
|
|
/* 02773DCC */ cpu->r[0] = 0x10100000u;
|
|
/* 02773DD0 */ _t104 = cpu->r[8] + 0x00000058u;
|
|
/* 02773DD0 */ rbrew_write32(cpu->mem, _t104, cpu->r[12]);
|
|
/* 02773DD4 */ cpu->r[0] = cpu->r[0] + 0x00001DD8u;
|
|
/* 02773DD8 */ _t105 = cpu->r[8] + 0x00000064u;
|
|
/* 02773DD8 */ rbrew_write32(cpu->mem, _t105, cpu->r[31]);
|
|
/* 02773DDC */ cpu->r[5] = 0x10100000u;
|
|
/* 02773DE0 */ _t106 = cpu->r[8] + 0x00000060u;
|
|
/* 02773DE0 */ rbrew_write32(cpu->mem, _t106, cpu->r[0]);
|
|
/* 02773DE4 */ cpu->r[5] = cpu->r[5] + 0x00001DE0u;
|
|
/* 02773DE8 */ _t107 = cpu->r[8] + 0x0000006Cu;
|
|
/* 02773DE8 */ rbrew_write32(cpu->mem, _t107, cpu->r[31]);
|
|
/* 02773DEC */ cpu->r[6] = 0x10100000u;
|
|
/* 02773DF0 */ _t108 = cpu->r[8] + 0x00000068u;
|
|
/* 02773DF0 */ rbrew_write32(cpu->mem, _t108, cpu->r[5]);
|
|
/* 02773DF4 */ cpu->r[6] = cpu->r[6] + 0x00001DE8u;
|
|
/* 02773DF8 */ _t109 = cpu->r[8] + 0x00000074u;
|
|
/* 02773DF8 */ rbrew_write32(cpu->mem, _t109, cpu->r[31]);
|
|
/* 02773DFC */ cpu->r[10] = 0x10100000u;
|
|
/* 02773E00 */ _t110 = cpu->r[8] + 0x00000070u;
|
|
/* 02773E00 */ rbrew_write32(cpu->mem, _t110, cpu->r[6]);
|
|
/* 02773E04 */ cpu->r[10] = cpu->r[10] + 0x00001DF0u;
|
|
/* 02773E08 */ _t111 = cpu->r[8] + 0x0000007Cu;
|
|
/* 02773E08 */ rbrew_write32(cpu->mem, _t111, cpu->r[31]);
|
|
/* 02773E0C */ cpu->r[0] = 0x10100000u;
|
|
/* 02773E10 */ _t112 = cpu->r[8] + 0x00000078u;
|
|
/* 02773E10 */ rbrew_write32(cpu->mem, _t112, cpu->r[10]);
|
|
/* 02773E14 */ cpu->r[0] = cpu->r[0] + 0x00001DF8u;
|
|
/* 02773E18 */ _t113 = cpu->r[8] + 0x00000084u;
|
|
/* 02773E18 */ rbrew_write32(cpu->mem, _t113, cpu->r[31]);
|
|
/* 02773E1C */ cpu->r[10] = 0x101F0000u;
|
|
/* 02773E20 */ _t114 = cpu->r[8] + 0x00000080u;
|
|
/* 02773E20 */ rbrew_write32(cpu->mem, _t114, cpu->r[0]);
|
|
/* 02773E24 */ cpu->r[0] = 0x10100000u;
|
|
/* 02773E28 */ cpu->r[10] = cpu->r[10] + 0x00001CACu;
|
|
/* 02773E2C */ _t115 = cpu->r[8] + 0x0000008Cu;
|
|
/* 02773E2C */ rbrew_write32(cpu->mem, _t115, cpu->r[31]);
|
|
/* 02773E30 */ cpu->r[0] = cpu->r[0] + 0x00001E6Cu;
|
|
/* 02773E34 */ cpu->r[7] = 0x10100000u;
|
|
/* 02773E38 */ _t116 = cpu->r[10] + 0x00000004u;
|
|
/* 02773E38 */ rbrew_write32(cpu->mem, _t116, cpu->r[31]);
|
|
/* 02773E3C */ cpu->r[7] = cpu->r[7] + 0x00001E00u;
|
|
/* 02773E40 */ _t117 = cpu->r[10] + 0x00000000u;
|
|
/* 02773E40 */ rbrew_write32(cpu->mem, _t117, cpu->r[0]);
|
|
/* 02773E44 */ _t118 = cpu->r[8] + 0x00000088u;
|
|
/* 02773E44 */ rbrew_write32(cpu->mem, _t118, cpu->r[7]);
|
|
/* 02773E48 */ _t119 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773E48 */ cpu->r[29] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02773E4C */ _t120 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02773E4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02773E50 */ _t121 = cpu->r[1] + 0x00000014u;
|
|
/* 02773E50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02773E54 */ cpu->lr = cpu->r[0];
|
|
/* 02773E58 */ _t122 = cpu->r[1] + 0x00000010u;
|
|
/* 02773E58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02773E5C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02773E60 */ return;
|
|
}
|
|
|
|
// fn_02773E64 @ 0x2773e64
|
|
void Gambit_fn_02773E64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02773E64: ; // 0x2773e64
|
|
/* 02773E64 */ cpu->r[6] = 0x02770000u;
|
|
/* 02773E68 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02773E6C */ cpu->r[7] = 0x00000000u;
|
|
/* 02773E70 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 02773E74 */ cpu->r[4] = 0x0000001Au;
|
|
/* 02773E78 */ cpu->r[8] = cpu->r[7];
|
|
/* 02773E7C */ cpu->r[3] = cpu->r[3] + 0xFFFF8D08u;
|
|
/* 02773E80 */ cpu->r[6] = cpu->r[6] + 0x000041E4u;
|
|
/* 02773E84 */ goto L_02C82F38;
|
|
L_02C82F38: ; // 0x2c82f38
|
|
/* 02C82F38 */ cpu->r[0] = cpu->lr;
|
|
/* 02C82F3C */ cpu->r[8] = cpu->r[7];
|
|
/* 02C82F40 */ cpu->r[12] = cpu->r[6];
|
|
/* 02C82F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0xFFFFFFFFu);
|
|
/* 02C82F48 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02C82F48 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02C82F4C */ cpu->r[6] = 0x00000000u;
|
|
/* 02C82F50 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02C82F50 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02C82F50 */ cpu->r[1] = _t1;
|
|
/* 02C82F54 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02C82F54 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02C82F54 */ if (_t3) goto L_02C82F58; else goto L_02C82F60;
|
|
L_02C82F58: ; // 0x2c82f58
|
|
/* 02C82F58 */ cpu->r[6] = 0x101D0000u;
|
|
/* 02C82F5C */ _t4 = cpu->r[6] + 0xFFFFC3D4u;
|
|
/* 02C82F5C */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
L_02C82F60: ; // 0x2c82f60
|
|
/* 02C82F60 */ cpu->r[9] = 0x00000000u;
|
|
/* 02C82F64 */ cpu->r[7] = cpu->r[12];
|
|
/* 02C82F68 */ cpu->r[10] = cpu->r[9];
|
|
/* 02C82F6C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02C82F6C */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 02C82F70 */ Gambit_fn_02C82E50(cpu);
|
|
/* 02C82F74 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02C82F74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02C82F78 */ cpu->lr = cpu->r[0];
|
|
/* 02C82F7C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02C82F80 */ return;
|
|
}
|
|
|
|
// fn_02773E88 @ 0x2773e88
|
|
void Gambit_fn_02773E88(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_02773E88: ; // 0x2773e88
|
|
/* 02773E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773E8C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773E8C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02773E8C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773E8C */ goto L_02773E90;
|
|
L_02773E90: ; // 0x2773e90
|
|
/* 02773E90 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02773E90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773E94 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773E94 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02773E94 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773E94 */ goto L_02773E98;
|
|
L_02773E98: ; // 0x2773e98
|
|
/* 02773E98 */ 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_02773E9C @ 0x2773e9c
|
|
void Gambit_fn_02773E9C(CPUState* cpu) {
|
|
L_02773E9C: ; // 0x2773e9c
|
|
/* 02773E9C */ cpu->r[3] = 0x00000000u;
|
|
/* 02773EA0 */ return;
|
|
}
|
|
|
|
// fn_02773EA4 @ 0x2773ea4
|
|
void Gambit_fn_02773EA4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02773EA4: ; // 0x2773ea4
|
|
/* 02773EA4 */ _t0 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02773EA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773EA8 */ return;
|
|
}
|
|
|
|
// fn_02773EAC @ 0x2773eac
|
|
void Gambit_fn_02773EAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02773EAC: ; // 0x2773eac
|
|
/* 02773EAC */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 02773EAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 02773EB4 */ cpu->r[12] = cpu->r[3] + 0x00000290u;
|
|
/* 02773EB8 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02773EB8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02773EB8 */ if (_t2) goto L_02773EBC; else goto L_02773EC4;
|
|
L_02773EBC: ; // 0x2773ebc
|
|
/* 02773EBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02773EC0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02773EC4: ; // 0x2773ec4
|
|
/* 02773EC4 */ _t3 = cpu->r[12] + 0x00000000u;
|
|
/* 02773EC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02773EC8 */ return;
|
|
}
|
|
|
|
// fn_02773ECC @ 0x2773ecc
|
|
void Gambit_fn_02773ECC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02773ECC: ; // 0x2773ecc
|
|
/* 02773ECC */ _t0 = cpu->r[3] + 0x000002A0u;
|
|
/* 02773ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773ED0 */ return;
|
|
}
|
|
|
|
// fn_02773ED4 @ 0x2773ed4
|
|
void Gambit_fn_02773ED4(CPUState* cpu) {
|
|
L_02773ED4: ; // 0x2773ed4
|
|
/* 02773ED4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02773ED8 */ return;
|
|
}
|
|
|
|
// fn_02773EDC @ 0x2773edc
|
|
void Gambit_fn_02773EDC(CPUState* cpu) {
|
|
L_02773EDC: ; // 0x2773edc
|
|
/* 02773EDC */ return;
|
|
}
|
|
|
|
// fn_02773EE0 @ 0x2773ee0
|
|
void Gambit_fn_02773EE0(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_02773EE0: ; // 0x2773ee0
|
|
/* 02773EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773EE4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773EE4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02773EE4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773EE4 */ goto L_02773EE8;
|
|
L_02773EE8: ; // 0x2773ee8
|
|
/* 02773EE8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02773EE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773EEC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773EEC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02773EEC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773EEC */ goto L_02773EF0;
|
|
L_02773EF0: ; // 0x2773ef0
|
|
/* 02773EF0 */ 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_02773EF4 @ 0x2773ef4
|
|
void Gambit_fn_02773EF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02773EF4: ; // 0x2773ef4
|
|
/* 02773EF4 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02773EF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773EF8 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02773EF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02773EFC */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02773F00 */ cpu->r[11] = 0x10110000u;
|
|
/* 02773F04 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02773F04 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02773F08 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02773F08 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02773F0C */ return;
|
|
}
|
|
|
|
// fn_02773F10 @ 0x2773f10
|
|
void Gambit_fn_02773F10(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_02773F10: ; // 0x2773f10
|
|
/* 02773F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773F14 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F14 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02773F14 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773F14 */ goto L_02773F18;
|
|
L_02773F18: ; // 0x2773f18
|
|
/* 02773F18 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02773F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773F1C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F1C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02773F1C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773F1C */ goto L_02773F20;
|
|
L_02773F20: ; // 0x2773f20
|
|
/* 02773F20 */ 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_02773F24 @ 0x2773f24
|
|
void Gambit_fn_02773F24(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_02773F24: ; // 0x2773f24
|
|
/* 02773F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773F28 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F28 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02773F28 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773F28 */ goto L_02773F2C;
|
|
L_02773F2C: ; // 0x2773f2c
|
|
/* 02773F2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02773F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773F30 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F30 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02773F30 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773F30 */ goto L_02773F34;
|
|
L_02773F34: ; // 0x2773f34
|
|
/* 02773F34 */ 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_02773F44 @ 0x2773f44
|
|
void Gambit_fn_02773F44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02773F44: ; // 0x2773f44
|
|
/* 02773F44 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02773F44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02773F44 */ cpu->r[1] = _t0;
|
|
/* 02773F48 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F48 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02773F48 */ if (_t2) goto L_02773F4C; else goto L_02773F5C;
|
|
L_02773F4C: ; // 0x2773f4c
|
|
/* 02773F4C */ cpu->r[3] = 0x00000008u;
|
|
/* 02773F50 */ Gambit_fn_02801A78(cpu);
|
|
/* 02773F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773F58 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F58 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02773F58 */ if (_t4) goto L_02773F68; else goto L_02773F5C;
|
|
L_02773F5C: ; // 0x2773f5c
|
|
/* 02773F5C */ cpu->r[12] = 0x00000000u;
|
|
/* 02773F60 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 02773F60 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02773F64 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02773F64 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
L_02773F68: ; // 0x2773f68
|
|
/* 02773F68 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02773F68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02773F6C */ cpu->lr = cpu->r[0];
|
|
/* 02773F70 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02773F74 */ return;
|
|
}
|
|
|
|
// fn_02773F78 @ 0x2773f78
|
|
void Gambit_fn_02773F78(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_02773F78: ; // 0x2773f78
|
|
/* 02773F78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773F7C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F7C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02773F7C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773F7C */ goto L_02773F80;
|
|
L_02773F80: ; // 0x2773f80
|
|
/* 02773F80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02773F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773F84 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F84 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02773F84 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773F84 */ goto L_02773F88;
|
|
L_02773F88: ; // 0x2773f88
|
|
/* 02773F88 */ 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_02773F8C @ 0x2773f8c
|
|
void Gambit_fn_02773F8C(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_02773F8C: ; // 0x2773f8c
|
|
/* 02773F8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02773F90 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F90 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02773F90 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773F90 */ goto L_02773F94;
|
|
L_02773F94: ; // 0x2773f94
|
|
/* 02773F94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02773F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02773F98 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773F98 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02773F98 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02773F98 */ goto L_02773F9C;
|
|
L_02773F9C: ; // 0x2773f9c
|
|
/* 02773F9C */ 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_02773FA0 @ 0x2773fa0
|
|
void Gambit_fn_02773FA0(CPUState* cpu) {
|
|
L_02773FA0: ; // 0x2773fa0
|
|
/* 02773FA0 */ return;
|
|
}
|
|
|
|
// fn_02773FA4 @ 0x2773fa4
|
|
void Gambit_fn_02773FA4(CPUState* cpu) {
|
|
L_02773FA4: ; // 0x2773fa4
|
|
/* 02773FA4 */ return;
|
|
}
|
|
|
|
// fn_02773FA8 @ 0x2773fa8
|
|
void Gambit_fn_02773FA8(CPUState* cpu) {
|
|
L_02773FA8: ; // 0x2773fa8
|
|
/* 02773FA8 */ return;
|
|
}
|
|
|
|
// fn_02773FAC @ 0x2773fac
|
|
void Gambit_fn_02773FAC(CPUState* cpu) {
|
|
L_02773FAC: ; // 0x2773fac
|
|
/* 02773FAC */ return;
|
|
}
|
|
|
|
// fn_02773FB0 @ 0x2773fb0
|
|
void Gambit_fn_02773FB0(CPUState* cpu) {
|
|
L_02773FB0: ; // 0x2773fb0
|
|
/* 02773FB0 */ return;
|
|
}
|
|
|
|
// fn_02773FB4 @ 0x2773fb4
|
|
void Gambit_fn_02773FB4(CPUState* cpu) {
|
|
L_02773FB4: ; // 0x2773fb4
|
|
/* 02773FB4 */ return;
|
|
}
|
|
|
|
// fn_02773FB8 @ 0x2773fb8
|
|
void Gambit_fn_02773FB8(CPUState* cpu) {
|
|
L_02773FB8: ; // 0x2773fb8
|
|
/* 02773FB8 */ return;
|
|
}
|
|
|
|
// fn_02773FBC @ 0x2773fbc
|
|
void Gambit_fn_02773FBC(CPUState* cpu) {
|
|
L_02773FBC: ; // 0x2773fbc
|
|
/* 02773FBC */ return;
|
|
}
|
|
|
|
// fn_02773FC0 @ 0x2773fc0
|
|
void Gambit_fn_02773FC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02773FC0: ; // 0x2773fc0
|
|
/* 02773FC0 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02773FC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773FC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02773FC8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773FC8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02773FC8 */ if (_t2) goto L_02773FD4; else goto L_02773FCC;
|
|
L_02773FCC: ; // 0x2773fcc
|
|
/* 02773FCC */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02773FD0 */ return;
|
|
L_02773FD4: ; // 0x2773fd4
|
|
/* 02773FD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02773FD8 */ return;
|
|
}
|
|
|
|
// fn_02773FDC @ 0x2773fdc
|
|
void Gambit_fn_02773FDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02773FDC: ; // 0x2773fdc
|
|
/* 02773FDC */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02773FDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773FE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02773FE4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02773FE4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02773FE4 */ if (_t2) goto L_02773FF0; else goto L_02773FE8;
|
|
L_02773FE8: ; // 0x2773fe8
|
|
/* 02773FE8 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02773FEC */ return;
|
|
L_02773FF0: ; // 0x2773ff0
|
|
/* 02773FF0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02773FF4 */ return;
|
|
}
|
|
|
|
// fn_02773FF8 @ 0x2773ff8
|
|
void Gambit_fn_02773FF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02773FF8: ; // 0x2773ff8
|
|
/* 02773FF8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02773FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02773FFC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02773FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02774000 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02774000 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02774000 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02774000 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02774000 */ goto L_02774004;
|
|
L_02774004: ; // 0x2774004
|
|
/* 02774004 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02774004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02774008 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02774008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0277400C */ cpu->ctr = cpu->r[0];
|
|
/* 02774010 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02774014 @ 0x2774014
|
|
void Gambit_fn_02774014(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02774014: ; // 0x2774014
|
|
/* 02774014 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02774014 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02774018 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02774018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0277401C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0277401C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0277401C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0277401C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0277401C */ goto L_02774020;
|
|
L_02774020: ; // 0x2774020
|
|
/* 02774020 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02774020 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02774024 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02774024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02774028 */ cpu->ctr = cpu->r[0];
|
|
/* 0277402C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02774030 @ 0x2774030
|
|
void Gambit_fn_02774030(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02774030: ; // 0x2774030
|
|
/* 02774030 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02774030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02774034 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02774034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02774038 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02774038 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02774038 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02774038 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02774038 */ goto L_0277403C;
|
|
L_0277403C: ; // 0x277403c
|
|
/* 0277403C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0277403C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02774040 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02774040 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02774044 */ cpu->ctr = cpu->r[0];
|
|
/* 02774048 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0277404C @ 0x277404c
|
|
void Gambit_fn_0277404C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0277404C: ; // 0x277404c
|
|
/* 0277404C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0277404C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02774050 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02774050 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02774054 */ cpu->ctr = cpu->r[0];
|
|
/* 02774058 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0277405C @ 0x277405c
|
|
void Gambit_fn_0277405C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0277405C: ; // 0x277405c
|
|
/* 0277405C */ cpu->r[0] = cpu->lr;
|
|
/* 02774060 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02774060 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02774060 */ cpu->r[1] = _t0;
|
|
/* 02774064 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02774064 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02774068 */ cpu->r[31] = cpu->r[3];
|
|
/* 0277406C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0277406C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02774070 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02774070 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02774074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02774078 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02774078 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02774078 */ if (_t5) goto L_0277407C; else goto L_02774098;
|
|
L_0277407C: ; // 0x277407c
|
|
/* 0277407C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0277407C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02774080 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02774080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02774084 */ cpu->ctr = cpu->r[0];
|
|
/* 02774088 */ cpu->r[3] = cpu->r[31];
|
|
/* 0277408C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02774090 */ cpu->r[0] = 0x00000002u;
|
|
/* 02774094 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02774094 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02774098: ; // 0x2774098
|
|
/* 02774098 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02774098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0277409C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277409C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027740A0 */ cpu->lr = cpu->r[0];
|
|
/* 027740A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027740A8 */ return;
|
|
}
|
|
|
|
// fn_02774060 @ 0x2774060
|
|
void Gambit_fn_02774060(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02774060: ; // 0x2774060
|
|
/* 02774060 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02774060 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02774060 */ cpu->r[1] = _t0;
|
|
/* 02774064 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02774064 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02774068 */ cpu->r[31] = cpu->r[3];
|
|
/* 0277406C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0277406C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02774070 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02774070 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02774074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02774078 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02774078 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02774078 */ if (_t5) goto L_0277407C; else goto L_02774098;
|
|
L_0277407C: ; // 0x277407c
|
|
/* 0277407C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0277407C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02774080 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02774080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02774084 */ cpu->ctr = cpu->r[0];
|
|
/* 02774088 */ cpu->r[3] = cpu->r[31];
|
|
/* 0277408C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02774090 */ cpu->r[0] = 0x00000002u;
|
|
/* 02774094 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02774094 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02774098: ; // 0x2774098
|
|
/* 02774098 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02774098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0277409C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0277409C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027740A0 */ cpu->lr = cpu->r[0];
|
|
/* 027740A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027740A8 */ return;
|
|
}
|
|
|
|
// fn_027740B8 @ 0x27740b8
|
|
void Gambit_fn_027740B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_027740B8: ; // 0x27740b8
|
|
/* 027740B8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027740B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027740B8 */ cpu->r[1] = _t0;
|
|
/* 027740BC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027740BC */ _t2 = _t1 & 0x00000001u;
|
|
/* 027740BC */ if (_t2) goto L_027740C0; else goto L_027740D0;
|
|
L_027740C0: ; // 0x27740c0
|
|
/* 027740C0 */ cpu->r[3] = 0x00000008u;
|
|
/* 027740C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027740C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027740CC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027740CC */ _t4 = _t3 & 0x00000001u;
|
|
/* 027740CC */ if (_t4) goto L_027740DC; else goto L_027740D0;
|
|
L_027740D0: ; // 0x27740d0
|
|
/* 027740D0 */ cpu->r[12] = 0x00000000u;
|
|
/* 027740D4 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 027740D4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 027740D8 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 027740D8 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
L_027740DC: ; // 0x27740dc
|
|
/* 027740DC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027740DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027740E0 */ cpu->lr = cpu->r[0];
|
|
/* 027740E4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027740E8 */ return;
|
|
}
|
|
|
|
// fn_027740EC @ 0x27740ec
|
|
void Gambit_fn_027740EC(CPUState* cpu) {
|
|
L_027740EC: ; // 0x27740ec
|
|
/* 027740EC */ cpu->r[3] = 0x00000001u;
|
|
/* 027740F0 */ return;
|
|
}
|
|
|
|
// fn_027740F4 @ 0x27740f4
|
|
void Gambit_fn_027740F4(CPUState* cpu) {
|
|
L_027740F4: ; // 0x27740f4
|
|
/* 027740F4 */ cpu->r[3] = 0x00000001u;
|
|
/* 027740F8 */ return;
|
|
}
|
|
|
|
// fn_027740FC @ 0x27740fc
|
|
void Gambit_fn_027740FC(CPUState* cpu) {
|
|
L_027740FC: ; // 0x27740fc
|
|
/* 027740FC */ cpu->r[3] = 0x00000000u;
|
|
/* 02774100 */ return;
|
|
}
|
|
|
|
// fn_02774104 @ 0x2774104
|
|
void Gambit_fn_02774104(CPUState* cpu) {
|
|
L_02774104: ; // 0x2774104
|
|
/* 02774104 */ cpu->r[3] = 0x00000000u;
|
|
/* 02774108 */ return;
|
|
}
|
|
|
|
// fn_0277410C @ 0x277410c
|
|
void Gambit_fn_0277410C(CPUState* cpu) {
|
|
L_0277410C: ; // 0x277410c
|
|
/* 0277410C */ return;
|
|
}
|
|
|
|
// fn_02774110 @ 0x2774110
|
|
void Gambit_fn_02774110(CPUState* cpu) {
|
|
L_02774110: ; // 0x2774110
|
|
/* 02774110 */ cpu->r[3] = 0x00000000u;
|
|
/* 02774114 */ return;
|
|
}
|
|
|
|
// fn_02774118 @ 0x2774118
|
|
void Gambit_fn_02774118(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02774118: ; // 0x2774118
|
|
/* 02774118 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02774118 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0277411C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0277411C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02774120 */ cpu->ctr = cpu->r[0];
|
|
/* 02774124 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02774128 @ 0x2774128
|
|
void Gambit_fn_02774128(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02774128: ; // 0x2774128
|
|
/* 02774128 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02774128 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0277412C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0277412C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02774130 */ cpu->ctr = cpu->r[0];
|
|
/* 02774134 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02774138 @ 0x2774138
|
|
void Gambit_fn_02774138(CPUState* cpu) {
|
|
L_02774138: ; // 0x2774138
|
|
/* 02774138 */ cpu->r[3] = 0x00000001u;
|
|
/* 0277413C */ return;
|
|
}
|
|
|
|
// fn_02774140 @ 0x2774140
|
|
void Gambit_fn_02774140(CPUState* cpu) {
|
|
L_02774140: ; // 0x2774140
|
|
/* 02774140 */ return;
|
|
}
|
|
|