mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
35794 lines
1.8 MiB
Plaintext
35794 lines
1.8 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_027EDDF4 @ 0x27eddf4
|
|
void Gambit_fn_027EDDF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDDF4: ; // 0x27eddf4
|
|
/* 027EDDF4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDDF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDDF4 */ cpu->r[1] = _t0;
|
|
/* 027EDDF8 */ Gambit_fn_027ECE58(cpu);
|
|
/* 027EDDFC */ Gambit_fn_027ED724(cpu);
|
|
/* 027EDE00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDE00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDE04 */ cpu->lr = cpu->r[0];
|
|
/* 027EDE08 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDE0C */ return;
|
|
}
|
|
|
|
// fn_027EDE10 @ 0x27ede10
|
|
void Gambit_fn_027EDE10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDE10: ; // 0x27ede10
|
|
/* 027EDE10 */ cpu->r[0] = cpu->lr;
|
|
/* 027EDE14 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EDE14 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EDE18 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDE18 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EDE18 */ cpu->r[1] = _t1;
|
|
/* 027EDE1C */ Gambit_fn_027ECE58(cpu);
|
|
/* 027EDE20 */ Gambit_fn_027ED7BC(cpu);
|
|
/* 027EDE24 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDE24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EDE28 */ cpu->lr = cpu->r[0];
|
|
/* 027EDE2C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDE30 */ return;
|
|
}
|
|
|
|
// fn_027EDE18 @ 0x27ede18
|
|
void Gambit_fn_027EDE18(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDE18: ; // 0x27ede18
|
|
/* 027EDE18 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDE18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDE18 */ cpu->r[1] = _t0;
|
|
/* 027EDE1C */ Gambit_fn_027ECE58(cpu);
|
|
/* 027EDE20 */ Gambit_fn_027ED7BC(cpu);
|
|
/* 027EDE24 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDE24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDE28 */ cpu->lr = cpu->r[0];
|
|
/* 027EDE2C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDE30 */ return;
|
|
}
|
|
|
|
// fn_027EDE34 @ 0x27ede34
|
|
void Gambit_fn_027EDE34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDE34: ; // 0x27ede34
|
|
/* 027EDE34 */ cpu->r[0] = cpu->lr;
|
|
/* 027EDE38 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EDE38 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EDE3C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDE3C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EDE3C */ cpu->r[1] = _t1;
|
|
/* 027EDE40 */ Gambit_fn_027ECE58(cpu);
|
|
/* 027EDE44 */ Gambit_fn_027EDB84(cpu);
|
|
/* 027EDE48 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDE48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EDE4C */ cpu->lr = cpu->r[0];
|
|
/* 027EDE50 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDE54 */ return;
|
|
}
|
|
|
|
// fn_027EDE3C @ 0x27ede3c
|
|
void Gambit_fn_027EDE3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDE3C: ; // 0x27ede3c
|
|
/* 027EDE3C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDE3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDE3C */ cpu->r[1] = _t0;
|
|
/* 027EDE40 */ Gambit_fn_027ECE58(cpu);
|
|
/* 027EDE44 */ Gambit_fn_027EDB84(cpu);
|
|
/* 027EDE48 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDE48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDE4C */ cpu->lr = cpu->r[0];
|
|
/* 027EDE50 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDE54 */ return;
|
|
}
|
|
|
|
// fn_027EDE58 @ 0x27ede58
|
|
void Gambit_fn_027EDE58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EDE58: ; // 0x27ede58
|
|
/* 027EDE58 */ cpu->r[0] = cpu->lr;
|
|
/* 027EDE5C */ cpu->r[5] = cpu->r[4];
|
|
/* 027EDE60 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EDE60 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EDE64 */ cpu->r[0] = 0x00000000u;
|
|
/* 027EDE68 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EDE68 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EDE68 */ cpu->r[1] = _t1;
|
|
/* 027EDE6C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDE70 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027EDE70 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EDE74 */ Gambit_fn_026D9564(cpu);
|
|
/* 027EDE78 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EDE78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EDE7C */ cpu->lr = cpu->r[0];
|
|
/* 027EDE80 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EDE84 */ return;
|
|
}
|
|
|
|
// fn_027EDE68 @ 0x27ede68
|
|
void Gambit_fn_027EDE68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDE68: ; // 0x27ede68
|
|
/* 027EDE68 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EDE68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDE68 */ cpu->r[1] = _t0;
|
|
/* 027EDE6C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDE70 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EDE70 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027EDE74 */ Gambit_fn_026D9564(cpu);
|
|
/* 027EDE78 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EDE78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EDE7C */ cpu->lr = cpu->r[0];
|
|
/* 027EDE80 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EDE84 */ return;
|
|
}
|
|
|
|
// fn_027EDE88 @ 0x27ede88
|
|
void Gambit_fn_027EDE88(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_027EDE88: ; // 0x27ede88
|
|
/* 027EDE88 */ _t0 = cpu->r[3] + 0x00000108u;
|
|
/* 027EDE88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EDE8C */ return;
|
|
}
|
|
|
|
// fn_027EDE90 @ 0x27ede90
|
|
void Gambit_fn_027EDE90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDE90: ; // 0x27ede90
|
|
/* 027EDE90 */ cpu->r[0] = cpu->lr;
|
|
/* 027EDE94 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EDE94 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EDE98 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDE98 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EDE98 */ cpu->r[1] = _t1;
|
|
/* 027EDE9C */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EDEA0 */ Gambit_fn_027EDE58(cpu);
|
|
/* 027EDEA4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDEA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EDEA8 */ cpu->lr = cpu->r[0];
|
|
/* 027EDEAC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDEB0 */ return;
|
|
}
|
|
|
|
// fn_027EDE98 @ 0x27ede98
|
|
void Gambit_fn_027EDE98(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDE98: ; // 0x27ede98
|
|
/* 027EDE98 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDE98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDE98 */ cpu->r[1] = _t0;
|
|
/* 027EDE9C */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EDEA0 */ Gambit_fn_027EDE58(cpu);
|
|
/* 027EDEA4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDEA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDEA8 */ cpu->lr = cpu->r[0];
|
|
/* 027EDEAC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDEB0 */ return;
|
|
}
|
|
|
|
// fn_027EDEB4 @ 0x27edeb4
|
|
void Gambit_fn_027EDEB4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_027EDEB4: ; // 0x27edeb4
|
|
/* 027EDEB4 */ _t0 = cpu->r[3] + 0x000000ECu;
|
|
/* 027EDEB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EDEB8 */ return;
|
|
}
|
|
|
|
// fn_027EDEBC @ 0x27edebc
|
|
void Gambit_fn_027EDEBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDEBC: ; // 0x27edebc
|
|
/* 027EDEBC */ cpu->r[0] = cpu->lr;
|
|
/* 027EDEC0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EDEC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EDEC4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDEC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EDEC4 */ cpu->r[1] = _t1;
|
|
/* 027EDEC8 */ Gambit_fn_027EDEB4(cpu);
|
|
/* 027EDECC */ Gambit_fn_027EDE58(cpu);
|
|
/* 027EDED0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EDED4 */ cpu->lr = cpu->r[0];
|
|
/* 027EDED8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDEDC */ return;
|
|
}
|
|
|
|
// fn_027EDEC4 @ 0x27edec4
|
|
void Gambit_fn_027EDEC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDEC4: ; // 0x27edec4
|
|
/* 027EDEC4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDEC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDEC4 */ cpu->r[1] = _t0;
|
|
/* 027EDEC8 */ Gambit_fn_027EDEB4(cpu);
|
|
/* 027EDECC */ Gambit_fn_027EDE58(cpu);
|
|
/* 027EDED0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDED4 */ cpu->lr = cpu->r[0];
|
|
/* 027EDED8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDEDC */ return;
|
|
}
|
|
|
|
// fn_027EDEE0 @ 0x27edee0
|
|
void Gambit_fn_027EDEE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_026D9D5C: ; // 0x26d9d5c
|
|
/* 026D9D5C */ cpu->r[0] = cpu->lr;
|
|
/* 026D9D60 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 026D9D60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026D9D60 */ cpu->r[1] = _t0;
|
|
/* 026D9D64 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 026D9D64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 026D9D68 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026D9D68 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 026D9D6C */ _t3 = cpu->r[3] + 0x00000060u;
|
|
/* 026D9D6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 026D9D70 */ _t4 = cpu->r[31] + 0x00000008u;
|
|
/* 026D9D70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026D9D74 */ _t5 = cpu->r[11] + 0x0000000Au;
|
|
/* 026D9D74 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 026D9D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 026D9D7C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026D9D7C */ _t7 = _t6 & 0x00000001u;
|
|
/* 026D9D7C */ if (_t7) goto L_026D9D80; else goto L_026D9D98;
|
|
L_026D9D80: ; // 0x26d9d80
|
|
/* 026D9D80 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026D9D80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026D9D84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 026D9D84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026D9D88 */ cpu->lr = cpu->r[0];
|
|
/* 026D9D8C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 026D9D90 */ cpu->r[3] = 0x00000000u;
|
|
/* 026D9D94 */ return;
|
|
L_026D9D98: ; // 0x26d9d98
|
|
/* 026D9D98 */ cpu->r[12] = 0x100F0000u;
|
|
/* 026D9D9C */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 026D9D9C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 026D9DA0 */ _t11 = cpu->r[12] + 0xFFFFC0BCu;
|
|
/* 026D9DA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 026D9DA4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 026D9DA8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026D9DA8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 026D9DA8 */ if (_t13) goto L_026D9DF8; else goto L_026D9DAC;
|
|
L_026D9DAC: ; // 0x26d9dac
|
|
/* 026D9DAC */ cpu->r[3] = cpu->r[31];
|
|
/* 026D9DB0 */ Gambit_fn_0285A26C(cpu);
|
|
/* 026D9DB4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026D9DB4 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 026D9DB8 */ cpu->r[0] = 0x43300000u;
|
|
/* 026D9DBC */ cpu->r[12] = 0x100F0000u;
|
|
/* 026D9DC0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 026D9DC0 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 026D9DC4 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 026D9DC4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 026D9DC8 */ _t17 = cpu->r[12] + 0xFFFFC0C0u;
|
|
/* 026D9DC8 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 026D9DCC */ cpu->f[0] = cpu->f[0] - cpu->f[13];
|
|
/* 026D9DD0 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026D9DD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026D9DD4 */ cpu->f[13] = (double)(float)cpu->f[0];
|
|
/* 026D9DD8 */ _t19 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026D9DD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 026D9DDC */ cpu->lr = cpu->r[0];
|
|
/* 026D9DE0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 026D9DE4 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 026D9DE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026D9DE8 */ /* nop */
|
|
/* 026D9DEC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 026D9DF0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026D9DF4 */ return;
|
|
L_026D9DF8: ; // 0x26d9df8
|
|
/* 026D9DF8 */ _t21 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026D9DF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 026D9DFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 026D9E00 */ /* nop */
|
|
/* 026D9E04 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026D9E08 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026D9E08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 026D9E0C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 026D9E0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 026D9E10 */ cpu->lr = cpu->r[0];
|
|
/* 026D9E14 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 026D9E18 */ return;
|
|
L_027EDEE0: ; // 0x27edee0
|
|
/* 027EDEE0 */ _t24 = cpu->r[3] + 0x0000001Cu;
|
|
/* 027EDEE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EDEE4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EDEE8 */ _t25 = cpu->r[12] + cpu->r[11];
|
|
/* 027EDEE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EDEEC */ cpu->r[3] = 0x00000001u;
|
|
/* 027EDEF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EDEF4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EDEF4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027EDEF4 */ if (_t27) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EDEF4 */ goto L_027EDEF8;
|
|
L_027EDEF8: ; // 0x27edef8
|
|
/* 027EDEF8 */ cpu->r[3] = cpu->r[0];
|
|
/* 027EDEFC */ goto L_026D9D5C;
|
|
}
|
|
|
|
// fn_027EDF00 @ 0x27edf00
|
|
void Gambit_fn_027EDF00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDF00: ; // 0x27edf00
|
|
/* 027EDF00 */ cpu->r[0] = cpu->lr;
|
|
/* 027EDF04 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EDF04 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EDF08 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDF08 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EDF08 */ cpu->r[1] = _t1;
|
|
/* 027EDF0C */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EDF10 */ Gambit_fn_027EDEE0(cpu);
|
|
/* 027EDF14 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EDF18 */ cpu->lr = cpu->r[0];
|
|
/* 027EDF1C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDF20 */ return;
|
|
}
|
|
|
|
// fn_027EDF08 @ 0x27edf08
|
|
void Gambit_fn_027EDF08(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDF08: ; // 0x27edf08
|
|
/* 027EDF08 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDF08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDF08 */ cpu->r[1] = _t0;
|
|
/* 027EDF0C */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EDF10 */ Gambit_fn_027EDEE0(cpu);
|
|
/* 027EDF14 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDF18 */ cpu->lr = cpu->r[0];
|
|
/* 027EDF1C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDF20 */ return;
|
|
}
|
|
|
|
// fn_027EDF24 @ 0x27edf24
|
|
void Gambit_fn_027EDF24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDF24: ; // 0x27edf24
|
|
/* 027EDF24 */ cpu->r[0] = cpu->lr;
|
|
/* 027EDF28 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EDF28 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EDF2C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDF2C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EDF2C */ cpu->r[1] = _t1;
|
|
/* 027EDF30 */ Gambit_fn_027EDEB4(cpu);
|
|
/* 027EDF34 */ Gambit_fn_027EDEE0(cpu);
|
|
/* 027EDF38 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDF38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EDF3C */ cpu->lr = cpu->r[0];
|
|
/* 027EDF40 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDF44 */ return;
|
|
}
|
|
|
|
// fn_027EDF2C @ 0x27edf2c
|
|
void Gambit_fn_027EDF2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDF2C: ; // 0x27edf2c
|
|
/* 027EDF2C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDF2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDF2C */ cpu->r[1] = _t0;
|
|
/* 027EDF30 */ Gambit_fn_027EDEB4(cpu);
|
|
/* 027EDF34 */ Gambit_fn_027EDEE0(cpu);
|
|
/* 027EDF38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDF38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDF3C */ cpu->lr = cpu->r[0];
|
|
/* 027EDF40 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDF44 */ return;
|
|
}
|
|
|
|
// fn_027EDF48 @ 0x27edf48
|
|
void Gambit_fn_027EDF48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_027EDF48: ; // 0x27edf48
|
|
/* 027EDF48 */ cpu->r[0] = cpu->lr;
|
|
/* 027EDF4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EDF4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDF4C */ cpu->r[1] = _t0;
|
|
/* 027EDF50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDF50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EDF54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EDF54 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EDF58 */ _t3 = cpu->r[3] + 0x0000001Cu;
|
|
/* 027EDF58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EDF5C */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EDF60 */ _t4 = cpu->r[10] + cpu->r[0];
|
|
/* 027EDF60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EDF64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027EDF68 */ cpu->r[0] = 0x00000000u;
|
|
/* 027EDF6C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EDF6C */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EDF6C */ if (_t6) goto L_027EDF84; else goto L_027EDF70;
|
|
L_027EDF70: ; // 0x27edf70
|
|
/* 027EDF70 */ cpu->r[4] = cpu->r[5];
|
|
/* 027EDF74 */ Gambit_fn_026D943C(cpu);
|
|
/* 027EDF78 */ cpu->r[0] = cpu->r[31] ^ cpu->r[3];
|
|
/* 027EDF7C */ cpu->r[11] = rbrew_clz32(cpu->r[0]);
|
|
/* 027EDF80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
L_027EDF84: ; // 0x27edf84
|
|
/* 027EDF84 */ cpu->r[3] = cpu->r[0];
|
|
/* 027EDF88 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027EDF88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EDF8C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDF8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EDF90 */ cpu->lr = cpu->r[0];
|
|
/* 027EDF94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EDF98 */ return;
|
|
}
|
|
|
|
// fn_027EDF4C @ 0x27edf4c
|
|
void Gambit_fn_027EDF4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_027EDF4C: ; // 0x27edf4c
|
|
/* 027EDF4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EDF4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDF4C */ cpu->r[1] = _t0;
|
|
/* 027EDF50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDF50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EDF54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EDF54 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EDF58 */ _t3 = cpu->r[3] + 0x0000001Cu;
|
|
/* 027EDF58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EDF5C */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EDF60 */ _t4 = cpu->r[10] + cpu->r[0];
|
|
/* 027EDF60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EDF64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027EDF68 */ cpu->r[0] = 0x00000000u;
|
|
/* 027EDF6C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EDF6C */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EDF6C */ if (_t6) goto L_027EDF84; else goto L_027EDF70;
|
|
L_027EDF70: ; // 0x27edf70
|
|
/* 027EDF70 */ cpu->r[4] = cpu->r[5];
|
|
/* 027EDF74 */ Gambit_fn_026D943C(cpu);
|
|
/* 027EDF78 */ cpu->r[0] = cpu->r[31] ^ cpu->r[3];
|
|
/* 027EDF7C */ cpu->r[11] = rbrew_clz32(cpu->r[0]);
|
|
/* 027EDF80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
L_027EDF84: ; // 0x27edf84
|
|
/* 027EDF84 */ cpu->r[3] = cpu->r[0];
|
|
/* 027EDF88 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027EDF88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EDF8C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDF8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EDF90 */ cpu->lr = cpu->r[0];
|
|
/* 027EDF94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EDF98 */ return;
|
|
}
|
|
|
|
// fn_027EDF9C @ 0x27edf9c
|
|
void Gambit_fn_027EDF9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDF9C: ; // 0x27edf9c
|
|
/* 027EDF9C */ cpu->r[0] = cpu->lr;
|
|
/* 027EDFA0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EDFA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EDFA4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDFA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EDFA4 */ cpu->r[1] = _t1;
|
|
/* 027EDFA8 */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EDFAC */ Gambit_fn_027EDF48(cpu);
|
|
/* 027EDFB0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDFB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EDFB4 */ cpu->lr = cpu->r[0];
|
|
/* 027EDFB8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDFBC */ return;
|
|
}
|
|
|
|
// fn_027EDFA4 @ 0x27edfa4
|
|
void Gambit_fn_027EDFA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDFA4: ; // 0x27edfa4
|
|
/* 027EDFA4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDFA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDFA4 */ cpu->r[1] = _t0;
|
|
/* 027EDFA8 */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EDFAC */ Gambit_fn_027EDF48(cpu);
|
|
/* 027EDFB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDFB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDFB4 */ cpu->lr = cpu->r[0];
|
|
/* 027EDFB8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDFBC */ return;
|
|
}
|
|
|
|
// fn_027EDFC0 @ 0x27edfc0
|
|
void Gambit_fn_027EDFC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDFC0: ; // 0x27edfc0
|
|
/* 027EDFC0 */ cpu->r[0] = cpu->lr;
|
|
/* 027EDFC4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EDFC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EDFC8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDFC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EDFC8 */ cpu->r[1] = _t1;
|
|
/* 027EDFCC */ Gambit_fn_027EDEB4(cpu);
|
|
/* 027EDFD0 */ Gambit_fn_027EDF48(cpu);
|
|
/* 027EDFD4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDFD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EDFD8 */ cpu->lr = cpu->r[0];
|
|
/* 027EDFDC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDFE0 */ return;
|
|
}
|
|
|
|
// fn_027EDFC8 @ 0x27edfc8
|
|
void Gambit_fn_027EDFC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDFC8: ; // 0x27edfc8
|
|
/* 027EDFC8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EDFC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EDFC8 */ cpu->r[1] = _t0;
|
|
/* 027EDFCC */ Gambit_fn_027EDEB4(cpu);
|
|
/* 027EDFD0 */ Gambit_fn_027EDF48(cpu);
|
|
/* 027EDFD4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EDFD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDFD8 */ cpu->lr = cpu->r[0];
|
|
/* 027EDFDC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EDFE0 */ return;
|
|
}
|
|
|
|
// fn_027EDFE4 @ 0x27edfe4
|
|
void Gambit_fn_027EDFE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EDFE4: ; // 0x27edfe4
|
|
/* 027EDFE4 */ _t0 = cpu->r[3] + 0x0000001Cu;
|
|
/* 027EDFE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EDFE8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EDFEC */ _t1 = cpu->r[12] + cpu->r[0];
|
|
/* 027EDFEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EDFF0 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027EDFF4 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 027EDFF8 */ return;
|
|
}
|
|
|
|
// fn_027EDFFC @ 0x27edffc
|
|
void Gambit_fn_027EDFFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EDFFC: ; // 0x27edffc
|
|
/* 027EDFFC */ cpu->r[0] = cpu->lr;
|
|
/* 027EE000 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EE000 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EE004 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE004 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EE004 */ cpu->r[1] = _t1;
|
|
/* 027EE008 */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EE00C */ Gambit_fn_027EDFE4(cpu);
|
|
/* 027EE010 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE010 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EE014 */ cpu->lr = cpu->r[0];
|
|
/* 027EE018 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE01C */ return;
|
|
}
|
|
|
|
// fn_027EE004 @ 0x27ee004
|
|
void Gambit_fn_027EE004(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EE004: ; // 0x27ee004
|
|
/* 027EE004 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE004 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE004 */ cpu->r[1] = _t0;
|
|
/* 027EE008 */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EE00C */ Gambit_fn_027EDFE4(cpu);
|
|
/* 027EE010 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE010 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EE014 */ cpu->lr = cpu->r[0];
|
|
/* 027EE018 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE01C */ return;
|
|
}
|
|
|
|
// fn_027EE020 @ 0x27ee020
|
|
void Gambit_fn_027EE020(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027EE020: ; // 0x27ee020
|
|
/* 027EE020 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE024 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027EE024 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE024 */ cpu->r[1] = _t0;
|
|
/* 027EE028 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE028 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE02C */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE030 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE030 */ rbrew_write32(cpu->mem, _t2, cpu->r[8]);
|
|
/* 027EE034 */ cpu->r[10] = 0x00000010u;
|
|
/* 027EE038 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE038 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027EE03C */ cpu->r[12] = 0x10110000u;
|
|
/* 027EE040 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE040 */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 027EE044 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE048 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE048 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EE04C */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 027EE04C */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027EE050 */ cpu->r[0] = 0x10110000u;
|
|
/* 027EE054 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE058 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE058 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 027EE05C */ cpu->r[0] = cpu->r[0] + 0x00000118u;
|
|
/* 027EE060 */ _t8 = cpu->r[1] + 0x00000023u;
|
|
/* 027EE060 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 027EE064 */ cpu->r[30] = cpu->r[4];
|
|
/* 027EE068 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE068 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027EE06C */ Gambit_fn_027EA350(cpu);
|
|
/* 027EE070 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE074 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EE078 */ cpu->r[5] = cpu->r[4];
|
|
/* 027EE07C */ Gambit_fn_027ED060(cpu);
|
|
/* 027EE080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EE084 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE084 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027EE084 */ if (_t11) goto L_027EE0A0; else goto L_027EE088;
|
|
L_027EE088: ; // 0x27ee088
|
|
/* 027EE088 */ cpu->r[9] = 0x10110000u;
|
|
/* 027EE08C */ cpu->r[3] = cpu->r[31];
|
|
/* 027EE090 */ _t12 = cpu->r[9] + 0x00000130u;
|
|
/* 027EE090 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027EE094 */ cpu->r[4] = cpu->r[30];
|
|
/* 027EE098 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE09C */ Gambit_fn_027ED2B0(cpu);
|
|
L_027EE0A0: ; // 0x27ee0a0
|
|
/* 027EE0A0 */ _t13 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE0A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EE0A4 */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE0A4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027EE0A8 */ cpu->lr = cpu->r[0];
|
|
/* 027EE0AC */ _t15 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE0AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EE0B0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027EE0B4 */ return;
|
|
}
|
|
|
|
// fn_027EE024 @ 0x27ee024
|
|
void Gambit_fn_027EE024(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027EE024: ; // 0x27ee024
|
|
/* 027EE024 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027EE024 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE024 */ cpu->r[1] = _t0;
|
|
/* 027EE028 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE028 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE02C */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE030 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE030 */ rbrew_write32(cpu->mem, _t2, cpu->r[8]);
|
|
/* 027EE034 */ cpu->r[10] = 0x00000010u;
|
|
/* 027EE038 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE038 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027EE03C */ cpu->r[12] = 0x10110000u;
|
|
/* 027EE040 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE040 */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 027EE044 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE048 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE048 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EE04C */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 027EE04C */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027EE050 */ cpu->r[0] = 0x10110000u;
|
|
/* 027EE054 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE058 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE058 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 027EE05C */ cpu->r[0] = cpu->r[0] + 0x00000118u;
|
|
/* 027EE060 */ _t8 = cpu->r[1] + 0x00000023u;
|
|
/* 027EE060 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 027EE064 */ cpu->r[30] = cpu->r[4];
|
|
/* 027EE068 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE068 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027EE06C */ Gambit_fn_027EA350(cpu);
|
|
/* 027EE070 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE074 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EE078 */ cpu->r[5] = cpu->r[4];
|
|
/* 027EE07C */ Gambit_fn_027ED060(cpu);
|
|
/* 027EE080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EE084 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE084 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027EE084 */ if (_t11) goto L_027EE0A0; else goto L_027EE088;
|
|
L_027EE088: ; // 0x27ee088
|
|
/* 027EE088 */ cpu->r[9] = 0x10110000u;
|
|
/* 027EE08C */ cpu->r[3] = cpu->r[31];
|
|
/* 027EE090 */ _t12 = cpu->r[9] + 0x00000130u;
|
|
/* 027EE090 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027EE094 */ cpu->r[4] = cpu->r[30];
|
|
/* 027EE098 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE09C */ Gambit_fn_027ED2B0(cpu);
|
|
L_027EE0A0: ; // 0x27ee0a0
|
|
/* 027EE0A0 */ _t13 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE0A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EE0A4 */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE0A4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027EE0A8 */ cpu->lr = cpu->r[0];
|
|
/* 027EE0AC */ _t15 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE0AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EE0B0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027EE0B4 */ return;
|
|
}
|
|
|
|
// fn_027EE0B8 @ 0x27ee0b8
|
|
void Gambit_fn_027EE0B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_027EE0B8: ; // 0x27ee0b8
|
|
/* 027EE0B8 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE0BC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EE0BC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EE0C0 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EE0C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EE0C0 */ cpu->r[1] = _t1;
|
|
/* 027EE0C4 */ Gambit_fn_026D943C(cpu);
|
|
/* 027EE0C8 */ _t2 = cpu->r[3] + 0x00000060u;
|
|
/* 027EE0C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EE0CC */ Gambit_fn_0285A26C(cpu);
|
|
/* 027EE0D0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE0D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 027EE0D4 */ cpu->r[0] = 0x43300000u;
|
|
/* 027EE0D8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE0D8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EE0DC */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE0DC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t5);
|
|
/* 027EE0E0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027EE0E4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE0E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE0E8 */ _t7 = cpu->r[12] + 0x00000138u;
|
|
/* 027EE0E8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t7);
|
|
/* 027EE0EC */ cpu->lr = cpu->r[0];
|
|
/* 027EE0F0 */ cpu->f[13] = cpu->f[13] - cpu->f[0];
|
|
/* 027EE0F4 */ cpu->f[1] = (double)(float)cpu->f[13];
|
|
/* 027EE0F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EE0FC */ return;
|
|
}
|
|
|
|
// fn_027EE0C0 @ 0x27ee0c0
|
|
void Gambit_fn_027EE0C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_027EE0C0: ; // 0x27ee0c0
|
|
/* 027EE0C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EE0C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE0C0 */ cpu->r[1] = _t0;
|
|
/* 027EE0C4 */ Gambit_fn_026D943C(cpu);
|
|
/* 027EE0C8 */ _t1 = cpu->r[3] + 0x00000060u;
|
|
/* 027EE0C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EE0CC */ Gambit_fn_0285A26C(cpu);
|
|
/* 027EE0D0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE0D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[3]);
|
|
/* 027EE0D4 */ cpu->r[0] = 0x43300000u;
|
|
/* 027EE0D8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE0D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EE0DC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE0DC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t4);
|
|
/* 027EE0E0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027EE0E4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE0E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EE0E8 */ _t6 = cpu->r[12] + 0x00000138u;
|
|
/* 027EE0E8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t6);
|
|
/* 027EE0EC */ cpu->lr = cpu->r[0];
|
|
/* 027EE0F0 */ cpu->f[13] = cpu->f[13] - cpu->f[0];
|
|
/* 027EE0F4 */ cpu->f[1] = (double)(float)cpu->f[13];
|
|
/* 027EE0F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EE0FC */ return;
|
|
}
|
|
|
|
// fn_027EE100 @ 0x27ee100
|
|
void Gambit_fn_027EE100(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EE100: ; // 0x27ee100
|
|
/* 027EE100 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE104 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EE104 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EE108 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE108 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EE108 */ cpu->r[1] = _t1;
|
|
/* 027EE10C */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EE110 */ Gambit_fn_027EE0B8(cpu);
|
|
/* 027EE114 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EE118 */ cpu->lr = cpu->r[0];
|
|
/* 027EE11C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE120 */ return;
|
|
}
|
|
|
|
// fn_027EE108 @ 0x27ee108
|
|
void Gambit_fn_027EE108(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EE108: ; // 0x27ee108
|
|
/* 027EE108 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE108 */ cpu->r[1] = _t0;
|
|
/* 027EE10C */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EE110 */ Gambit_fn_027EE0B8(cpu);
|
|
/* 027EE114 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EE118 */ cpu->lr = cpu->r[0];
|
|
/* 027EE11C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE120 */ return;
|
|
}
|
|
|
|
// fn_027EE124 @ 0x27ee124
|
|
void Gambit_fn_027EE124(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EE124: ; // 0x27ee124
|
|
/* 027EE124 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE128 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EE128 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EE12C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE12C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EE12C */ cpu->r[1] = _t1;
|
|
/* 027EE130 */ Gambit_fn_026D943C(cpu);
|
|
/* 027EE134 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE134 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EE138 */ _t3 = cpu->r[3] + 0x00000060u;
|
|
/* 027EE138 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EE13C */ cpu->lr = cpu->r[0];
|
|
/* 027EE140 */ _t4 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027EE140 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027EE144 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE148 */ return;
|
|
}
|
|
|
|
// fn_027EE12C @ 0x27ee12c
|
|
void Gambit_fn_027EE12C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EE12C: ; // 0x27ee12c
|
|
/* 027EE12C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE12C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE12C */ cpu->r[1] = _t0;
|
|
/* 027EE130 */ Gambit_fn_026D943C(cpu);
|
|
/* 027EE134 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE134 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EE138 */ _t2 = cpu->r[3] + 0x00000060u;
|
|
/* 027EE138 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EE13C */ cpu->lr = cpu->r[0];
|
|
/* 027EE140 */ _t3 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027EE140 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE144 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE148 */ return;
|
|
}
|
|
|
|
// fn_027EE14C @ 0x27ee14c
|
|
void Gambit_fn_027EE14C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EE14C: ; // 0x27ee14c
|
|
/* 027EE14C */ cpu->r[0] = cpu->lr;
|
|
/* 027EE150 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EE150 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EE154 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE154 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EE154 */ cpu->r[1] = _t1;
|
|
/* 027EE158 */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EE15C */ Gambit_fn_027EE124(cpu);
|
|
/* 027EE160 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EE164 */ cpu->lr = cpu->r[0];
|
|
/* 027EE168 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE16C */ return;
|
|
}
|
|
|
|
// fn_027EE154 @ 0x27ee154
|
|
void Gambit_fn_027EE154(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EE154: ; // 0x27ee154
|
|
/* 027EE154 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE154 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE154 */ cpu->r[1] = _t0;
|
|
/* 027EE158 */ Gambit_fn_027EDE88(cpu);
|
|
/* 027EE15C */ Gambit_fn_027EE124(cpu);
|
|
/* 027EE160 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EE164 */ cpu->lr = cpu->r[0];
|
|
/* 027EE168 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE16C */ return;
|
|
}
|
|
|
|
// fn_027EE170 @ 0x27ee170
|
|
void Gambit_fn_027EE170(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EE170: ; // 0x27ee170
|
|
/* 027EE170 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE174 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EE174 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EE178 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE178 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EE178 */ cpu->r[1] = _t1;
|
|
/* 027EE17C */ Gambit_fn_027EDEB4(cpu);
|
|
/* 027EE180 */ Gambit_fn_027EE0B8(cpu);
|
|
/* 027EE184 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EE188 */ cpu->lr = cpu->r[0];
|
|
/* 027EE18C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE190 */ return;
|
|
}
|
|
|
|
// fn_027EE178 @ 0x27ee178
|
|
void Gambit_fn_027EE178(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EE178: ; // 0x27ee178
|
|
/* 027EE178 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EE178 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE178 */ cpu->r[1] = _t0;
|
|
/* 027EE17C */ Gambit_fn_027EDEB4(cpu);
|
|
/* 027EE180 */ Gambit_fn_027EE0B8(cpu);
|
|
/* 027EE184 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EE188 */ cpu->lr = cpu->r[0];
|
|
/* 027EE18C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE190 */ return;
|
|
}
|
|
|
|
// fn_027EE194 @ 0x27ee194
|
|
void Gambit_fn_027EE194(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_027EE194: ; // 0x27ee194
|
|
/* 027EE194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EE198 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE198 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027EE198 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EE198 */ goto L_027EE19C;
|
|
L_027EE19C: ; // 0x27ee19c
|
|
/* 027EE19C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EE19C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EE1A0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE1A0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027EE1A0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EE1A0 */ goto L_027EE1A4;
|
|
L_027EE1A4: ; // 0x27ee1a4
|
|
/* 027EE1A4 */ 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_027EE1A8 @ 0x27ee1a8
|
|
void Gambit_fn_027EE1A8(CPUState* cpu) {
|
|
L_027EE1A8: ; // 0x27ee1a8
|
|
/* 027EE1A8 */ return;
|
|
}
|
|
|
|
// fn_027EE1AC @ 0x27ee1ac
|
|
void Gambit_fn_027EE1AC(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_027EE1AC: ; // 0x27ee1ac
|
|
/* 027EE1AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EE1B0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE1B0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027EE1B0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EE1B0 */ goto L_027EE1B4;
|
|
L_027EE1B4: ; // 0x27ee1b4
|
|
/* 027EE1B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EE1B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EE1B8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE1B8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027EE1B8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EE1B8 */ goto L_027EE1BC;
|
|
L_027EE1BC: ; // 0x27ee1bc
|
|
/* 027EE1BC */ 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_027EE1C0 @ 0x27ee1c0
|
|
void Gambit_fn_027EE1C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EE1C0: ; // 0x27ee1c0
|
|
/* 027EE1C0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027EE1C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EE1C4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 027EE1C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EE1C8 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 027EE1CC */ cpu->r[11] = 0x10110000u;
|
|
/* 027EE1D0 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 027EE1D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027EE1D4 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027EE1D4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027EE1D8 */ return;
|
|
}
|
|
|
|
// fn_027EE1DC @ 0x27ee1dc
|
|
void Gambit_fn_027EE1DC(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_027EE1DC: ; // 0x27ee1dc
|
|
/* 027EE1DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EE1E0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE1E0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027EE1E0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EE1E0 */ goto L_027EE1E4;
|
|
L_027EE1E4: ; // 0x27ee1e4
|
|
/* 027EE1E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EE1E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EE1E8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE1E8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027EE1E8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EE1E8 */ goto L_027EE1EC;
|
|
L_027EE1EC: ; // 0x27ee1ec
|
|
/* 027EE1EC */ 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_027EE1F0 @ 0x27ee1f0
|
|
void Gambit_fn_027EE1F0(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_027EE1F0: ; // 0x27ee1f0
|
|
/* 027EE1F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EE1F4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE1F4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027EE1F4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EE1F4 */ goto L_027EE1F8;
|
|
L_027EE1F8: ; // 0x27ee1f8
|
|
/* 027EE1F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EE1F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EE1FC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EE1FC */ _t3 = _t2 & 0x00000001u;
|
|
/* 027EE1FC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EE1FC */ goto L_027EE200;
|
|
L_027EE200: ; // 0x27ee200
|
|
/* 027EE200 */ 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_027EE204 @ 0x27ee204
|
|
void Gambit_fn_027EE204(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EE204: ; // 0x27ee204
|
|
/* 027EE204 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE208 */ cpu->r[12] = cpu->r[3] + 0x00000080u;
|
|
/* 027EE20C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EE20C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EE210 */ cpu->r[0] = 0x10110000u;
|
|
/* 027EE214 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EE214 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EE214 */ cpu->r[1] = _t1;
|
|
/* 027EE218 */ cpu->r[0] = cpu->r[0] + 0x00000148u;
|
|
/* 027EE21C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE21C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 027EE220 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE224 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE224 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EE228 */ Gambit_fn_027EA96C(cpu);
|
|
/* 027EE22C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE22C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EE230 */ cpu->lr = cpu->r[0];
|
|
/* 027EE234 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EE238 */ return;
|
|
}
|
|
|
|
// fn_027EE214 @ 0x27ee214
|
|
void Gambit_fn_027EE214(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EE214: ; // 0x27ee214
|
|
/* 027EE214 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EE214 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE214 */ cpu->r[1] = _t0;
|
|
/* 027EE218 */ cpu->r[0] = cpu->r[0] + 0x00000148u;
|
|
/* 027EE21C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE21C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 027EE220 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE224 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE224 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EE228 */ Gambit_fn_027EA96C(cpu);
|
|
/* 027EE22C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE22C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EE230 */ cpu->lr = cpu->r[0];
|
|
/* 027EE234 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EE238 */ return;
|
|
}
|
|
|
|
// fn_027EE23C @ 0x27ee23c
|
|
void Gambit_fn_027EE23C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EE23C: ; // 0x27ee23c
|
|
/* 027EE23C */ cpu->r[0] = cpu->lr;
|
|
/* 027EE240 */ cpu->r[12] = cpu->r[3] + 0x00000080u;
|
|
/* 027EE244 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EE244 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EE248 */ cpu->r[0] = 0x10110000u;
|
|
/* 027EE24C */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EE24C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EE24C */ cpu->r[1] = _t1;
|
|
/* 027EE250 */ cpu->r[0] = cpu->r[0] + 0x00000148u;
|
|
/* 027EE254 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE254 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 027EE258 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE25C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE25C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EE260 */ Gambit_fn_027EA700(cpu);
|
|
/* 027EE264 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE264 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EE268 */ cpu->lr = cpu->r[0];
|
|
/* 027EE26C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EE270 */ return;
|
|
}
|
|
|
|
// fn_027EE24C @ 0x27ee24c
|
|
void Gambit_fn_027EE24C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EE24C: ; // 0x27ee24c
|
|
/* 027EE24C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EE24C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE24C */ cpu->r[1] = _t0;
|
|
/* 027EE250 */ cpu->r[0] = cpu->r[0] + 0x00000148u;
|
|
/* 027EE254 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE254 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 027EE258 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE25C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE25C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EE260 */ Gambit_fn_027EA700(cpu);
|
|
/* 027EE264 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE264 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EE268 */ cpu->lr = cpu->r[0];
|
|
/* 027EE26C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EE270 */ return;
|
|
}
|
|
|
|
// fn_027EE274 @ 0x27ee274
|
|
void Gambit_fn_027EE274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027EE274: ; // 0x27ee274
|
|
/* 027EE274 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE278 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027EE278 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE278 */ cpu->r[1] = _t0;
|
|
/* 027EE27C */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027EE27C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE280 */ _t2 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE280 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EE284 */ _t3 = cpu->r[4] + 0x00000050u;
|
|
/* 027EE284 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE288 */ _t4 = cpu->r[4] + 0x0000006Cu;
|
|
/* 027EE288 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027EE28C */ _t5 = cpu->r[4] + 0x00000048u;
|
|
/* 027EE28C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027EE290 */ _t6 = cpu->r[4] + 0x0000005Cu;
|
|
/* 027EE290 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027EE294 */ _t7 = cpu->r[4] + 0x00000058u;
|
|
/* 027EE294 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027EE298 */ _t8 = cpu->r[4] + 0x00000060u;
|
|
/* 027EE298 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 027EE29C */ _t9 = cpu->r[4] + 0x00000070u;
|
|
/* 027EE29C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027EE2A0 */ _t10 = cpu->r[4] + 0x00000068u;
|
|
/* 027EE2A0 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027EE2A4 */ _t11 = cpu->r[4] + 0x00000064u;
|
|
/* 027EE2A4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027EE2A8 */ _t12 = cpu->r[4] + 0x00000054u;
|
|
/* 027EE2A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027EE2AC */ _t13 = cpu->r[4] + 0x00000074u;
|
|
/* 027EE2AC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 027EE2B0 */ _t14 = cpu->r[4] + 0x0000004Cu;
|
|
/* 027EE2B0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027EE2B4 */ _t15 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE2B4 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[7]);
|
|
/* 027EE2B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE2BC */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE2BC */ rbrew_write_f32(cpu->mem, _t16, cpu->f[4]);
|
|
/* 027EE2C0 */ cpu->r[3] = 0x00000018u;
|
|
/* 027EE2C4 */ _t17 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE2C4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[6]);
|
|
/* 027EE2C8 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE2C8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[10]);
|
|
/* 027EE2CC */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE2CC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 027EE2D0 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE2D0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[8]);
|
|
/* 027EE2D4 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE2D4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 027EE2D8 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE2D8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[9]);
|
|
/* 027EE2DC */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE2DC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 027EE2E0 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE2E0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[5]);
|
|
/* 027EE2E4 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE2E4 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[3]);
|
|
/* 027EE2E8 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE2E8 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 027EE2EC */ Gambit_fn_027E6E4C(cpu);
|
|
/* 027EE2F0 */ Gambit_fn_02929174(cpu);
|
|
/* 027EE2F4 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 027EE2F8 */ Gambit_fn_02C69628(cpu);
|
|
/* 027EE2FC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE300 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 027EE304 */ cpu->r[5] = cpu->r[4];
|
|
/* 027EE308 */ Gambit_fn_02C69544(cpu);
|
|
/* 027EE30C */ cpu->r[9] = 0x00000003u;
|
|
/* 027EE310 */ cpu->r[7] = cpu->r[1] + 0x00000004u;
|
|
/* 027EE314 */ cpu->ctr = cpu->r[9];
|
|
/* 027EE318 */ cpu->r[8] = cpu->r[31] + 0xFFFFFFFCu;
|
|
L_027EE31C: ; // 0x27ee31c
|
|
/* 027EE31C */ _t27 = cpu->r[7] + 0x00000004u;
|
|
/* 027EE31C */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EE320 */ _t28 = cpu->r[8] + 0x00000004u;
|
|
/* 027EE320 */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
/* 027EE324 */ _t29 = cpu->r[7] + 0x00000008u;
|
|
/* 027EE324 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EE328 */ _t30 = cpu->r[8] + 0x00000008u;
|
|
/* 027EE328 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 027EE32C */ _t31 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027EE32C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027EE330 */ _t32 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027EE330 */ rbrew_write32(cpu->mem, _t32, cpu->r[12]);
|
|
/* 027EE334 */ _t33 = cpu->r[7] + 0x00000010u;
|
|
/* 027EE334 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027EE334 */ cpu->r[7] = _t33;
|
|
/* 027EE338 */ _t34 = cpu->r[8] + 0x00000010u;
|
|
/* 027EE338 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 027EE338 */ cpu->r[8] = _t34;
|
|
/* 027EE33C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027EE33C */ _t35 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027EE33C */ _t36 = _t35 >> (0x00000002u & 31u);
|
|
/* 027EE33C */ _t37 = _t36 & 0x00000001u;
|
|
/* 027EE33C */ if (_t37) goto L_027EE31C; else goto L_027EE340;
|
|
L_027EE340: ; // 0x27ee340
|
|
/* 027EE340 */ _t38 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE340 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027EE344 */ _t39 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027EE344 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027EE348 */ cpu->lr = cpu->r[0];
|
|
/* 027EE34C */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027EE350 */ return;
|
|
}
|
|
|
|
// fn_027EE278 @ 0x27ee278
|
|
void Gambit_fn_027EE278(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027EE278: ; // 0x27ee278
|
|
/* 027EE278 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027EE278 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE278 */ cpu->r[1] = _t0;
|
|
/* 027EE27C */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027EE27C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE280 */ _t2 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE280 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EE284 */ _t3 = cpu->r[4] + 0x00000050u;
|
|
/* 027EE284 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE288 */ _t4 = cpu->r[4] + 0x0000006Cu;
|
|
/* 027EE288 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027EE28C */ _t5 = cpu->r[4] + 0x00000048u;
|
|
/* 027EE28C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027EE290 */ _t6 = cpu->r[4] + 0x0000005Cu;
|
|
/* 027EE290 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027EE294 */ _t7 = cpu->r[4] + 0x00000058u;
|
|
/* 027EE294 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027EE298 */ _t8 = cpu->r[4] + 0x00000060u;
|
|
/* 027EE298 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 027EE29C */ _t9 = cpu->r[4] + 0x00000070u;
|
|
/* 027EE29C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027EE2A0 */ _t10 = cpu->r[4] + 0x00000068u;
|
|
/* 027EE2A0 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027EE2A4 */ _t11 = cpu->r[4] + 0x00000064u;
|
|
/* 027EE2A4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027EE2A8 */ _t12 = cpu->r[4] + 0x00000054u;
|
|
/* 027EE2A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027EE2AC */ _t13 = cpu->r[4] + 0x00000074u;
|
|
/* 027EE2AC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 027EE2B0 */ _t14 = cpu->r[4] + 0x0000004Cu;
|
|
/* 027EE2B0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027EE2B4 */ _t15 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE2B4 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[7]);
|
|
/* 027EE2B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE2BC */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE2BC */ rbrew_write_f32(cpu->mem, _t16, cpu->f[4]);
|
|
/* 027EE2C0 */ cpu->r[3] = 0x00000018u;
|
|
/* 027EE2C4 */ _t17 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE2C4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[6]);
|
|
/* 027EE2C8 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE2C8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[10]);
|
|
/* 027EE2CC */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE2CC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 027EE2D0 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE2D0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[8]);
|
|
/* 027EE2D4 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE2D4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 027EE2D8 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE2D8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[9]);
|
|
/* 027EE2DC */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE2DC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 027EE2E0 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE2E0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[5]);
|
|
/* 027EE2E4 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE2E4 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[3]);
|
|
/* 027EE2E8 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE2E8 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 027EE2EC */ Gambit_fn_027E6E4C(cpu);
|
|
/* 027EE2F0 */ Gambit_fn_02929174(cpu);
|
|
/* 027EE2F4 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 027EE2F8 */ Gambit_fn_02C69628(cpu);
|
|
/* 027EE2FC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE300 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 027EE304 */ cpu->r[5] = cpu->r[4];
|
|
/* 027EE308 */ Gambit_fn_02C69544(cpu);
|
|
/* 027EE30C */ cpu->r[9] = 0x00000003u;
|
|
/* 027EE310 */ cpu->r[7] = cpu->r[1] + 0x00000004u;
|
|
/* 027EE314 */ cpu->ctr = cpu->r[9];
|
|
/* 027EE318 */ cpu->r[8] = cpu->r[31] + 0xFFFFFFFCu;
|
|
L_027EE31C: ; // 0x27ee31c
|
|
/* 027EE31C */ _t27 = cpu->r[7] + 0x00000004u;
|
|
/* 027EE31C */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EE320 */ _t28 = cpu->r[8] + 0x00000004u;
|
|
/* 027EE320 */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
/* 027EE324 */ _t29 = cpu->r[7] + 0x00000008u;
|
|
/* 027EE324 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EE328 */ _t30 = cpu->r[8] + 0x00000008u;
|
|
/* 027EE328 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 027EE32C */ _t31 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027EE32C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027EE330 */ _t32 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027EE330 */ rbrew_write32(cpu->mem, _t32, cpu->r[12]);
|
|
/* 027EE334 */ _t33 = cpu->r[7] + 0x00000010u;
|
|
/* 027EE334 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027EE334 */ cpu->r[7] = _t33;
|
|
/* 027EE338 */ _t34 = cpu->r[8] + 0x00000010u;
|
|
/* 027EE338 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 027EE338 */ cpu->r[8] = _t34;
|
|
/* 027EE33C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027EE33C */ _t35 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027EE33C */ _t36 = _t35 >> (0x00000002u & 31u);
|
|
/* 027EE33C */ _t37 = _t36 & 0x00000001u;
|
|
/* 027EE33C */ if (_t37) goto L_027EE31C; else goto L_027EE340;
|
|
L_027EE340: ; // 0x27ee340
|
|
/* 027EE340 */ _t38 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE340 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027EE344 */ _t39 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027EE344 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027EE348 */ cpu->lr = cpu->r[0];
|
|
/* 027EE34C */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027EE350 */ return;
|
|
}
|
|
|
|
// fn_027EE354 @ 0x27ee354
|
|
void Gambit_fn_027EE354(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_027EE354: ; // 0x27ee354
|
|
/* 027EE354 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE358 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 027EE358 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE358 */ cpu->r[1] = _t0;
|
|
/* 027EE35C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 027EE35C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE360 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE364 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE368 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE368 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EE36C */ Gambit_fn_027EE274(cpu);
|
|
/* 027EE370 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE370 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE374 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE374 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027EE378 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE378 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 027EE37C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE37C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE380 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE380 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 027EE384 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE384 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE388 */ _t9 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE388 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027EE38C */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE38C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 027EE390 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE390 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[13]);
|
|
/* 027EE394 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE394 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EE398 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE398 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 027EE39C */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE39C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 027EE3A0 */ _t15 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE3A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EE3A4 */ cpu->lr = cpu->r[0];
|
|
/* 027EE3A8 */ _t16 = cpu->r[1] + 0x00000044u;
|
|
/* 027EE3A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EE3AC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 027EE3B0 */ return;
|
|
}
|
|
|
|
// fn_027EE358 @ 0x27ee358
|
|
void Gambit_fn_027EE358(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_027EE358: ; // 0x27ee358
|
|
/* 027EE358 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 027EE358 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE358 */ cpu->r[1] = _t0;
|
|
/* 027EE35C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 027EE35C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE360 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE364 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE368 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE368 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EE36C */ Gambit_fn_027EE274(cpu);
|
|
/* 027EE370 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE370 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE374 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE374 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027EE378 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE378 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 027EE37C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE37C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE380 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE380 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 027EE384 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE384 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE388 */ _t9 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE388 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027EE38C */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE38C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 027EE390 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE390 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[13]);
|
|
/* 027EE394 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE394 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EE398 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE398 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 027EE39C */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE39C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 027EE3A0 */ _t15 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE3A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EE3A4 */ cpu->lr = cpu->r[0];
|
|
/* 027EE3A8 */ _t16 = cpu->r[1] + 0x00000044u;
|
|
/* 027EE3A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EE3AC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 027EE3B0 */ return;
|
|
}
|
|
|
|
// fn_027EE3B8 @ 0x27ee3b8
|
|
void Gambit_fn_027EE3B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EE3B8: ; // 0x27ee3b8
|
|
/* 027EE3B8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EE3B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE3B8 */ cpu->r[1] = _t0;
|
|
/* 027EE3BC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE3BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE3C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE3C4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE3C8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE3C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EE3CC */ Gambit_fn_027EE354(cpu);
|
|
/* 027EE3D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EE3D4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE3D8 */ Gambit_fn_027ECC04(cpu);
|
|
/* 027EE3DC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE3DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EE3E0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE3E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EE3E4 */ cpu->lr = cpu->r[0];
|
|
/* 027EE3E8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EE3EC */ return;
|
|
}
|
|
|
|
// fn_027EE3F0 @ 0x27ee3f0
|
|
void Gambit_fn_027EE3F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_027EE3F0: ; // 0x27ee3f0
|
|
/* 027EE3F0 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE3F4 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 027EE3F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE3F4 */ cpu->r[1] = _t0;
|
|
/* 027EE3F8 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 027EE3F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE3FC */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 027EE3FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EE400 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EE404 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE408 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EE40C */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE40C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EE410 */ Gambit_fn_027EE274(cpu);
|
|
/* 027EE414 */ _t4 = cpu->r[31] + 0x0000003Cu;
|
|
/* 027EE414 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027EE418 */ _t5 = cpu->r[31] + 0x00000040u;
|
|
/* 027EE418 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027EE41C */ cpu->r[12] = 0x10110000u;
|
|
/* 027EE420 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE420 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 027EE424 */ _t7 = cpu->r[12] + 0x00000160u;
|
|
/* 027EE424 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027EE428 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE42C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE42C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 027EE430 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE434 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE438 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE438 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 027EE43C */ Gambit_fn_02C694BC(cpu);
|
|
/* 027EE440 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EE444 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE444 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EE448 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 027EE448 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027EE44C */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE44C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EE450 */ _t14 = cpu->r[30] + 0x00000004u;
|
|
/* 027EE450 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 027EE454 */ _t15 = cpu->r[30] + 0x00000008u;
|
|
/* 027EE454 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027EE458 */ _t16 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EE45C */ _t17 = cpu->r[1] + 0x00000054u;
|
|
/* 027EE45C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EE460 */ cpu->lr = cpu->r[0];
|
|
/* 027EE464 */ _t18 = cpu->r[1] + 0x00000050u;
|
|
/* 027EE464 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EE468 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 027EE46C */ return;
|
|
}
|
|
|
|
// fn_027EE3F4 @ 0x27ee3f4
|
|
void Gambit_fn_027EE3F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_027EE3F4: ; // 0x27ee3f4
|
|
/* 027EE3F4 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 027EE3F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE3F4 */ cpu->r[1] = _t0;
|
|
/* 027EE3F8 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 027EE3F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE3FC */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 027EE3FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EE400 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EE404 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE408 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EE40C */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE40C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EE410 */ Gambit_fn_027EE274(cpu);
|
|
/* 027EE414 */ _t4 = cpu->r[31] + 0x0000003Cu;
|
|
/* 027EE414 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027EE418 */ _t5 = cpu->r[31] + 0x00000040u;
|
|
/* 027EE418 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027EE41C */ cpu->r[12] = 0x10110000u;
|
|
/* 027EE420 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE420 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 027EE424 */ _t7 = cpu->r[12] + 0x00000160u;
|
|
/* 027EE424 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027EE428 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE42C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE42C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 027EE430 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE434 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE438 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE438 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 027EE43C */ Gambit_fn_02C694BC(cpu);
|
|
/* 027EE440 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EE444 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE444 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EE448 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 027EE448 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027EE44C */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE44C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EE450 */ _t14 = cpu->r[30] + 0x00000004u;
|
|
/* 027EE450 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 027EE454 */ _t15 = cpu->r[30] + 0x00000008u;
|
|
/* 027EE454 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027EE458 */ _t16 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EE45C */ _t17 = cpu->r[1] + 0x00000054u;
|
|
/* 027EE45C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EE460 */ cpu->lr = cpu->r[0];
|
|
/* 027EE464 */ _t18 = cpu->r[1] + 0x00000050u;
|
|
/* 027EE464 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EE468 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 027EE46C */ return;
|
|
}
|
|
|
|
// fn_027EE470 @ 0x27ee470
|
|
void Gambit_fn_027EE470(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_027EE470: ; // 0x27ee470
|
|
/* 027EE470 */ _t0 = cpu->r[3] + 0x00000046u;
|
|
/* 027EE470 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 027EE474 */ return;
|
|
}
|
|
|
|
// fn_027EE478 @ 0x27ee478
|
|
void Gambit_fn_027EE478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027EE478: ; // 0x27ee478
|
|
/* 027EE478 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE47C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027EE47C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE47C */ cpu->r[1] = _t0;
|
|
/* 027EE480 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE480 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EE484 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EE488 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE488 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EE48C */ cpu->r[31] = cpu->r[4];
|
|
/* 027EE490 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE494 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE494 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027EE498 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE498 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EE49C */ cpu->r[29] = cpu->r[5];
|
|
/* 027EE4A0 */ Gambit_fn_027EE354(cpu);
|
|
/* 027EE4A4 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE4A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EE4AC */ Gambit_fn_027ECC04(cpu);
|
|
/* 027EE4B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EE4B4 */ Gambit_fn_027EE470(cpu);
|
|
/* 027EE4B8 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE4B8 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[3]);
|
|
/* 027EE4BC */ cpu->r[3] = cpu->r[30];
|
|
/* 027EE4C0 */ cpu->r[5] = cpu->r[29];
|
|
/* 027EE4C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE4C8 */ Gambit_fn_027ECC70(cpu);
|
|
/* 027EE4CC */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE4CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE4D0 */ _t7 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE4D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EE4D4 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE4D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE4D8 */ cpu->lr = cpu->r[0];
|
|
/* 027EE4DC */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE4DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EE4E0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027EE4E4 */ return;
|
|
}
|
|
|
|
// fn_027EE47C @ 0x27ee47c
|
|
void Gambit_fn_027EE47C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027EE47C: ; // 0x27ee47c
|
|
/* 027EE47C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027EE47C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE47C */ cpu->r[1] = _t0;
|
|
/* 027EE480 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE480 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EE484 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EE488 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE488 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EE48C */ cpu->r[31] = cpu->r[4];
|
|
/* 027EE490 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE494 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE494 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027EE498 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE498 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EE49C */ cpu->r[29] = cpu->r[5];
|
|
/* 027EE4A0 */ Gambit_fn_027EE354(cpu);
|
|
/* 027EE4A4 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE4A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EE4AC */ Gambit_fn_027ECC04(cpu);
|
|
/* 027EE4B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EE4B4 */ Gambit_fn_027EE470(cpu);
|
|
/* 027EE4B8 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE4B8 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[3]);
|
|
/* 027EE4BC */ cpu->r[3] = cpu->r[30];
|
|
/* 027EE4C0 */ cpu->r[5] = cpu->r[29];
|
|
/* 027EE4C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EE4C8 */ Gambit_fn_027ECC70(cpu);
|
|
/* 027EE4CC */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE4CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE4D0 */ _t7 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE4D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EE4D4 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE4D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE4D8 */ cpu->lr = cpu->r[0];
|
|
/* 027EE4DC */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE4DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EE4E0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027EE4E4 */ return;
|
|
}
|
|
|
|
// fn_027EE4E8 @ 0x27ee4e8
|
|
void Gambit_fn_027EE4E8(CPUState* 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_027EE4E8: ; // 0x27ee4e8
|
|
/* 027EE4E8 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE4EC */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027EE4EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE4EC */ cpu->r[1] = _t0;
|
|
/* 027EE4F0 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE4F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE4F4 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE4F4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027EE4F8 */ /* nop */
|
|
/* 027EE4FC */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE500 */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE500 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 027EE504 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE508 */ _t4 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE508 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EE50C */ Gambit_fn_027EE274(cpu);
|
|
/* 027EE510 */ cpu->r[5] = 0x00000000u;
|
|
/* 027EE514 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE518 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE51C */ Gambit_fn_0200D42C(cpu);
|
|
/* 027EE520 */ cpu->r[5] = 0x00000001u;
|
|
/* 027EE524 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE528 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE52C */ Gambit_fn_0200D42C(cpu);
|
|
/* 027EE530 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE534 */ Gambit_fn_02C69350(cpu);
|
|
/* 027EE538 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE53C */ cpu->f[31] = cpu->f[1];
|
|
/* 027EE540 */ Gambit_fn_02C69350(cpu);
|
|
/* 027EE544 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE544 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 027EE548 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE548 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE54C */ cpu->r[10] = 0x10110000u;
|
|
/* 027EE550 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE550 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 027EE554 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE554 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE558 */ _t9 = cpu->r[10] + 0x00000168u;
|
|
/* 027EE558 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027EE55C */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE55C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 027EE560 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE560 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 027EE564 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE564 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EE568 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE568 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 027EE56C */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE56C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 027EE570 */ _t15 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE570 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027EE574 */ _t16 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE574 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EE578 */ _t17 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE578 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 027EE57C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EE57C */ _t19 = _t18 & 0x00000001u;
|
|
/* 027EE57C */ if (_t19) goto L_027EE580; // else: addr-0 trap, fall-through
|
|
L_027EE580: ; // 0x27ee580
|
|
/* 027EE580 */ _t20 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE580 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EE584 */ cpu->lr = cpu->r[0];
|
|
/* 027EE588 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027EE58C */ return;
|
|
}
|
|
|
|
// fn_027EE4EC @ 0x27ee4ec
|
|
void Gambit_fn_027EE4EC(CPUState* 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_027EE4EC: ; // 0x27ee4ec
|
|
/* 027EE4EC */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027EE4EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE4EC */ cpu->r[1] = _t0;
|
|
/* 027EE4F0 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE4F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE4F4 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE4F4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027EE4F8 */ /* nop */
|
|
/* 027EE4FC */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE500 */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE500 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 027EE504 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE508 */ _t4 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE508 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EE50C */ Gambit_fn_027EE274(cpu);
|
|
/* 027EE510 */ cpu->r[5] = 0x00000000u;
|
|
/* 027EE514 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE518 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE51C */ Gambit_fn_0200D42C(cpu);
|
|
/* 027EE520 */ cpu->r[5] = 0x00000001u;
|
|
/* 027EE524 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE528 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE52C */ Gambit_fn_0200D42C(cpu);
|
|
/* 027EE530 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE534 */ Gambit_fn_02C69350(cpu);
|
|
/* 027EE538 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE53C */ cpu->f[31] = cpu->f[1];
|
|
/* 027EE540 */ Gambit_fn_02C69350(cpu);
|
|
/* 027EE544 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE544 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 027EE548 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE548 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE54C */ cpu->r[10] = 0x10110000u;
|
|
/* 027EE550 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE550 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 027EE554 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE554 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE558 */ _t9 = cpu->r[10] + 0x00000168u;
|
|
/* 027EE558 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027EE55C */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE55C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 027EE560 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE560 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 027EE564 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE564 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EE568 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE568 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 027EE56C */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE56C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 027EE570 */ _t15 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE570 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027EE574 */ _t16 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE574 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EE578 */ _t17 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE578 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 027EE57C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EE57C */ _t19 = _t18 & 0x00000001u;
|
|
/* 027EE57C */ if (_t19) goto L_027EE580; // else: addr-0 trap, fall-through
|
|
L_027EE580: ; // 0x27ee580
|
|
/* 027EE580 */ _t20 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE580 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EE584 */ cpu->lr = cpu->r[0];
|
|
/* 027EE588 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027EE58C */ return;
|
|
}
|
|
|
|
// fn_027EE590 @ 0x27ee590
|
|
void Gambit_fn_027EE590(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EE590: ; // 0x27ee590
|
|
/* 027EE590 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027EE590 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE590 */ cpu->r[1] = _t0;
|
|
/* 027EE594 */ _t1 = cpu->r[4] + 0x0000002Cu;
|
|
/* 027EE594 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EE598 */ _t2 = cpu->r[4] + 0x00000028u;
|
|
/* 027EE598 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027EE59C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE59C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 027EE5A0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE5A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EE5A4 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE5A4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027EE5A8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE5A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE5AC */ _t7 = cpu->r[4] + 0x00000030u;
|
|
/* 027EE5AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027EE5B0 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 027EE5B0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 027EE5B4 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE5B4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 027EE5B8 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE5B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EE5BC */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 027EE5BC */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 027EE5C0 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 027EE5C0 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027EE5C4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE5C8 */ return;
|
|
}
|
|
|
|
// fn_027EE5CC @ 0x27ee5cc
|
|
void Gambit_fn_027EE5CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027EE5CC: ; // 0x27ee5cc
|
|
/* 027EE5CC */ cpu->r[0] = cpu->lr;
|
|
/* 027EE5D0 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027EE5D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE5D0 */ cpu->r[1] = _t0;
|
|
/* 027EE5D4 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE5D4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027EE5D8 */ /* nop */
|
|
/* 027EE5DC */ cpu->r[9] = 0x10110000u;
|
|
/* 027EE5E0 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE5E0 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027EE5E4 */ cpu->f[31] = cpu->f[1];
|
|
/* 027EE5E8 */ _t3 = cpu->r[9] + 0x00000168u;
|
|
/* 027EE5E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE5EC */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE5EC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027EE5F0 */ cpu->f[12] = cpu->f[0] - cpu->f[31];
|
|
/* 027EE5F4 */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE5F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EE5F8 */ /* nop */
|
|
/* 027EE5FC */ _t6 = cpu->r[5] + 0x00000008u;
|
|
/* 027EE5FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027EE600 */ /* nop */
|
|
/* 027EE604 */ /* nop */
|
|
/* 027EE608 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE608 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EE60C */ cpu->f[0] = cpu->f[11] * cpu->f[12];
|
|
/* 027EE610 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE610 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE614 */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 027EE614 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027EE618 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE618 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 027EE61C */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EE620 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE624 */ _t12 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027EE624 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 027EE628 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 027EE62C */ _t13 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE62C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027EE630 */ Gambit_fn_027EE354(cpu);
|
|
/* 027EE634 */ _t14 = cpu->r[1] + 0x00000058u;
|
|
/* 027EE634 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027EE638 */ cpu->f[0] = cpu->f[13] * cpu->f[31];
|
|
/* 027EE63C */ /* nop */
|
|
/* 027EE640 */ _t15 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE640 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027EE644 */ /* nop */
|
|
/* 027EE648 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE648 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 027EE64C */ /* nop */
|
|
/* 027EE650 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE650 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EE654 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EE658 */ _t19 = cpu->r[1] + 0x00000048u;
|
|
/* 027EE658 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 027EE65C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE65C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EE660 */ /* nop */
|
|
/* 027EE664 */ _t21 = cpu->r[1] + 0x00000044u;
|
|
/* 027EE664 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 027EE668 */ /* nop */
|
|
/* 027EE66C */ _t22 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE66C */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 027EE670 */ _t23 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE670 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027EE674 */ /* nop */
|
|
/* 027EE678 */ /* nop */
|
|
/* 027EE67C */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE67C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EE680 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE680 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EE684 */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 027EE688 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE688 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 027EE68C */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE68C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 027EE690 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE690 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 027EE694 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE694 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 027EE698 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027EE69C */ _t31 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE69C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 027EE6A0 */ _t32 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE6A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 027EE6A4 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE6A4 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 027EE6A8 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE6A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 027EE6AC */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE6AC */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 027EE6B0 */ _t36 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE6B0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 027EE6B4 */ _t37 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE6B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 027EE6B8 */ _t38 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE6B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027EE6BC */ _t39 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE6BC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 027EE6C0 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EE6C0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027EE6C0 */ if (_t41) goto L_027EE6C4; // else: addr-0 trap, fall-through
|
|
L_027EE6C4: ; // 0x27ee6c4
|
|
/* 027EE6C4 */ _t42 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE6C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027EE6C8 */ cpu->lr = cpu->r[0];
|
|
/* 027EE6CC */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027EE6D0 */ return;
|
|
}
|
|
|
|
// fn_027EE5D0 @ 0x27ee5d0
|
|
void Gambit_fn_027EE5D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027EE5D0: ; // 0x27ee5d0
|
|
/* 027EE5D0 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027EE5D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE5D0 */ cpu->r[1] = _t0;
|
|
/* 027EE5D4 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE5D4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027EE5D8 */ /* nop */
|
|
/* 027EE5DC */ cpu->r[9] = 0x10110000u;
|
|
/* 027EE5E0 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE5E0 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027EE5E4 */ cpu->f[31] = cpu->f[1];
|
|
/* 027EE5E8 */ _t3 = cpu->r[9] + 0x00000168u;
|
|
/* 027EE5E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE5EC */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE5EC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027EE5F0 */ cpu->f[12] = cpu->f[0] - cpu->f[31];
|
|
/* 027EE5F4 */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE5F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EE5F8 */ /* nop */
|
|
/* 027EE5FC */ _t6 = cpu->r[5] + 0x00000008u;
|
|
/* 027EE5FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027EE600 */ /* nop */
|
|
/* 027EE604 */ /* nop */
|
|
/* 027EE608 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE608 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EE60C */ cpu->f[0] = cpu->f[11] * cpu->f[12];
|
|
/* 027EE610 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE610 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE614 */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 027EE614 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027EE618 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE618 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 027EE61C */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE61C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EE620 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE624 */ _t12 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027EE624 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 027EE628 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 027EE62C */ _t13 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE62C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027EE630 */ Gambit_fn_027EE354(cpu);
|
|
/* 027EE634 */ _t14 = cpu->r[1] + 0x00000058u;
|
|
/* 027EE634 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027EE638 */ cpu->f[0] = cpu->f[13] * cpu->f[31];
|
|
/* 027EE63C */ /* nop */
|
|
/* 027EE640 */ _t15 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE640 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027EE644 */ /* nop */
|
|
/* 027EE648 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE648 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 027EE64C */ /* nop */
|
|
/* 027EE650 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE650 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EE654 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EE658 */ _t19 = cpu->r[1] + 0x00000048u;
|
|
/* 027EE658 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 027EE65C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE65C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EE660 */ /* nop */
|
|
/* 027EE664 */ _t21 = cpu->r[1] + 0x00000044u;
|
|
/* 027EE664 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 027EE668 */ /* nop */
|
|
/* 027EE66C */ _t22 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE66C */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 027EE670 */ _t23 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE670 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027EE674 */ /* nop */
|
|
/* 027EE678 */ /* nop */
|
|
/* 027EE67C */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE67C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EE680 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE680 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EE684 */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 027EE688 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE688 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 027EE68C */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE68C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 027EE690 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE690 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 027EE694 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE694 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 027EE698 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027EE69C */ _t31 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE69C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 027EE6A0 */ _t32 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE6A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 027EE6A4 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE6A4 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 027EE6A8 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE6A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 027EE6AC */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE6AC */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 027EE6B0 */ _t36 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE6B0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 027EE6B4 */ _t37 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE6B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 027EE6B8 */ _t38 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE6B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027EE6BC */ _t39 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE6BC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 027EE6C0 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EE6C0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027EE6C0 */ if (_t41) goto L_027EE6C4; // else: addr-0 trap, fall-through
|
|
L_027EE6C4: ; // 0x27ee6c4
|
|
/* 027EE6C4 */ _t42 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE6C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027EE6C8 */ cpu->lr = cpu->r[0];
|
|
/* 027EE6CC */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027EE6D0 */ return;
|
|
}
|
|
|
|
// fn_027EE6D4 @ 0x27ee6d4
|
|
void Gambit_fn_027EE6D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027EE6D4: ; // 0x27ee6d4
|
|
/* 027EE6D4 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE6D8 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027EE6D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE6D8 */ cpu->r[1] = _t0;
|
|
/* 027EE6DC */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE6DC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027EE6E0 */ /* nop */
|
|
/* 027EE6E4 */ cpu->r[9] = 0x10110000u;
|
|
/* 027EE6E8 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE6E8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027EE6EC */ cpu->f[31] = cpu->f[1];
|
|
/* 027EE6F0 */ _t3 = cpu->r[9] + 0x00000168u;
|
|
/* 027EE6F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE6F4 */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE6F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027EE6F8 */ cpu->f[12] = cpu->f[0] - cpu->f[31];
|
|
/* 027EE6FC */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE6FC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EE700 */ /* nop */
|
|
/* 027EE704 */ _t6 = cpu->r[5] + 0x00000008u;
|
|
/* 027EE704 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027EE708 */ /* nop */
|
|
/* 027EE70C */ /* nop */
|
|
/* 027EE710 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EE714 */ cpu->f[0] = cpu->f[11] * cpu->f[12];
|
|
/* 027EE718 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE718 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE71C */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 027EE71C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027EE720 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE720 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 027EE724 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE724 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EE728 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE72C */ _t12 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027EE72C */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 027EE730 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 027EE734 */ _t13 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE734 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027EE738 */ Gambit_fn_027EE3F0(cpu);
|
|
/* 027EE73C */ _t14 = cpu->r[1] + 0x00000058u;
|
|
/* 027EE73C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027EE740 */ cpu->f[0] = cpu->f[13] * cpu->f[31];
|
|
/* 027EE744 */ /* nop */
|
|
/* 027EE748 */ _t15 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE748 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027EE74C */ /* nop */
|
|
/* 027EE750 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE750 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 027EE754 */ /* nop */
|
|
/* 027EE758 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE758 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EE75C */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE75C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EE760 */ _t19 = cpu->r[1] + 0x00000048u;
|
|
/* 027EE760 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 027EE764 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE764 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EE768 */ /* nop */
|
|
/* 027EE76C */ _t21 = cpu->r[1] + 0x00000044u;
|
|
/* 027EE76C */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 027EE770 */ /* nop */
|
|
/* 027EE774 */ _t22 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE774 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 027EE778 */ _t23 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE778 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027EE77C */ /* nop */
|
|
/* 027EE780 */ /* nop */
|
|
/* 027EE784 */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EE788 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE788 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EE78C */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 027EE790 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE790 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 027EE794 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE794 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 027EE798 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE798 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 027EE79C */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE79C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 027EE7A0 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027EE7A4 */ _t31 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE7A4 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 027EE7A8 */ _t32 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE7A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 027EE7AC */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE7AC */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 027EE7B0 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE7B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 027EE7B4 */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE7B4 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 027EE7B8 */ _t36 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE7B8 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 027EE7BC */ _t37 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE7BC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 027EE7C0 */ _t38 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE7C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027EE7C4 */ _t39 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE7C4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 027EE7C8 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EE7C8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027EE7C8 */ if (_t41) goto L_027EE7CC; // else: addr-0 trap, fall-through
|
|
L_027EE7CC: ; // 0x27ee7cc
|
|
/* 027EE7CC */ _t42 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE7CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027EE7D0 */ cpu->lr = cpu->r[0];
|
|
/* 027EE7D4 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027EE7D8 */ return;
|
|
}
|
|
|
|
// fn_027EE6D8 @ 0x27ee6d8
|
|
void Gambit_fn_027EE6D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027EE6D8: ; // 0x27ee6d8
|
|
/* 027EE6D8 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027EE6D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE6D8 */ cpu->r[1] = _t0;
|
|
/* 027EE6DC */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE6DC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027EE6E0 */ /* nop */
|
|
/* 027EE6E4 */ cpu->r[9] = 0x10110000u;
|
|
/* 027EE6E8 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE6E8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027EE6EC */ cpu->f[31] = cpu->f[1];
|
|
/* 027EE6F0 */ _t3 = cpu->r[9] + 0x00000168u;
|
|
/* 027EE6F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE6F4 */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE6F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027EE6F8 */ cpu->f[12] = cpu->f[0] - cpu->f[31];
|
|
/* 027EE6FC */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE6FC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EE700 */ /* nop */
|
|
/* 027EE704 */ _t6 = cpu->r[5] + 0x00000008u;
|
|
/* 027EE704 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027EE708 */ /* nop */
|
|
/* 027EE70C */ /* nop */
|
|
/* 027EE710 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EE714 */ cpu->f[0] = cpu->f[11] * cpu->f[12];
|
|
/* 027EE718 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE718 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE71C */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 027EE71C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027EE720 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE720 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 027EE724 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE724 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EE728 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE72C */ _t12 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027EE72C */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 027EE730 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 027EE734 */ _t13 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE734 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027EE738 */ Gambit_fn_027EE3F0(cpu);
|
|
/* 027EE73C */ _t14 = cpu->r[1] + 0x00000058u;
|
|
/* 027EE73C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027EE740 */ cpu->f[0] = cpu->f[13] * cpu->f[31];
|
|
/* 027EE744 */ /* nop */
|
|
/* 027EE748 */ _t15 = cpu->r[1] + 0x00000040u;
|
|
/* 027EE748 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027EE74C */ /* nop */
|
|
/* 027EE750 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE750 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 027EE754 */ /* nop */
|
|
/* 027EE758 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE758 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EE75C */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE75C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EE760 */ _t19 = cpu->r[1] + 0x00000048u;
|
|
/* 027EE760 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 027EE764 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE764 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EE768 */ /* nop */
|
|
/* 027EE76C */ _t21 = cpu->r[1] + 0x00000044u;
|
|
/* 027EE76C */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 027EE770 */ /* nop */
|
|
/* 027EE774 */ _t22 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE774 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 027EE778 */ _t23 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE778 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027EE77C */ /* nop */
|
|
/* 027EE780 */ /* nop */
|
|
/* 027EE784 */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EE788 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE788 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EE78C */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 027EE790 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE790 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 027EE794 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE794 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 027EE798 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE798 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 027EE79C */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE79C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 027EE7A0 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 027EE7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027EE7A4 */ _t31 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE7A4 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 027EE7A8 */ _t32 = cpu->r[1] + 0x00000030u;
|
|
/* 027EE7A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 027EE7AC */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE7AC */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 027EE7B0 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 027EE7B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 027EE7B4 */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE7B4 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 027EE7B8 */ _t36 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE7B8 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 027EE7BC */ _t37 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE7BC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 027EE7C0 */ _t38 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EE7C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027EE7C4 */ _t39 = cpu->r[1] + 0x00000060u;
|
|
/* 027EE7C4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 027EE7C8 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EE7C8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027EE7C8 */ if (_t41) goto L_027EE7CC; // else: addr-0 trap, fall-through
|
|
L_027EE7CC: ; // 0x27ee7cc
|
|
/* 027EE7CC */ _t42 = cpu->r[1] + 0x00000074u;
|
|
/* 027EE7CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027EE7D0 */ cpu->lr = cpu->r[0];
|
|
/* 027EE7D4 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027EE7D8 */ return;
|
|
}
|
|
|
|
// fn_027EE7DC @ 0x27ee7dc
|
|
void Gambit_fn_027EE7DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_027EE7DC: ; // 0x27ee7dc
|
|
/* 027EE7DC */ cpu->r[0] = cpu->lr;
|
|
/* 027EE7E0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027EE7E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE7E0 */ cpu->r[1] = _t0;
|
|
/* 027EE7E4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE7E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE7E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE7EC */ cpu->r[3] = cpu->r[4];
|
|
/* 027EE7F0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE7F4 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE7F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EE7F8 */ Gambit_fn_02861E88(cpu);
|
|
/* 027EE7FC */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE7FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE800 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE800 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027EE804 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE804 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027EE808 */ cpu->f[12] = cpu->f[13] - cpu->f[12];
|
|
/* 027EE80C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE80C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027EE810 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027EE814 */ cpu->f[13] = fabs(cpu->f[12]);
|
|
/* 027EE818 */ cpu->r[12] = 0x10110000u;
|
|
/* 027EE81C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE81C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 027EE820 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE820 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE824 */ _t9 = cpu->r[12] + 0x00000160u;
|
|
/* 027EE824 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027EE828 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE828 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 027EE82C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE82C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EE830 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE830 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 027EE834 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EE838 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE838 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 027EE83C */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE83C */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 027EE840 */ _t16 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE840 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 027EE844 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE844 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EE848 */ cpu->lr = cpu->r[0];
|
|
/* 027EE84C */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE84C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EE850 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027EE854 */ return;
|
|
}
|
|
|
|
// fn_027EE7E0 @ 0x27ee7e0
|
|
void Gambit_fn_027EE7E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_027EE7E0: ; // 0x27ee7e0
|
|
/* 027EE7E0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027EE7E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE7E0 */ cpu->r[1] = _t0;
|
|
/* 027EE7E4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE7E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EE7E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EE7EC */ cpu->r[3] = cpu->r[4];
|
|
/* 027EE7F0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027EE7F4 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE7F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EE7F8 */ Gambit_fn_02861E88(cpu);
|
|
/* 027EE7FC */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 027EE7FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EE800 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 027EE800 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027EE804 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027EE804 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027EE808 */ cpu->f[12] = cpu->f[13] - cpu->f[12];
|
|
/* 027EE80C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EE80C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027EE810 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027EE814 */ cpu->f[13] = fabs(cpu->f[12]);
|
|
/* 027EE818 */ cpu->r[12] = 0x10110000u;
|
|
/* 027EE81C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE81C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 027EE820 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE820 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EE824 */ _t9 = cpu->r[12] + 0x00000160u;
|
|
/* 027EE824 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027EE828 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE828 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 027EE82C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE82C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EE830 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE830 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 027EE834 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EE838 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 027EE838 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 027EE83C */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 027EE83C */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 027EE840 */ _t16 = cpu->r[31] + 0x00000008u;
|
|
/* 027EE840 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 027EE844 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EE844 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EE848 */ cpu->lr = cpu->r[0];
|
|
/* 027EE84C */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 027EE84C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EE850 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027EE854 */ return;
|
|
}
|
|
|
|
// fn_027EE858 @ 0x27ee858
|
|
void Gambit_fn_027EE858(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027EE858: ; // 0x27ee858
|
|
/* 027EE858 */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 027EE858 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 027EE85C */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 027EE85C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EE860 */ cpu->r[0] = cpu->r[12] | 0x00000010u;
|
|
/* 027EE864 */ _t2 = cpu->r[4] + 0x00000004u;
|
|
/* 027EE864 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027EE868 */ _t3 = cpu->r[3] + 0x00000044u;
|
|
/* 027EE868 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027EE86C */ _t4 = cpu->r[3] + 0x00000040u;
|
|
/* 027EE86C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 027EE870 */ _t5 = cpu->r[3] + 0x0000003Cu;
|
|
/* 027EE870 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027EE874 */ return;
|
|
}
|
|
|
|
// fn_027EE878 @ 0x27ee878
|
|
void Gambit_fn_027EE878(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EE878: ; // 0x27ee878
|
|
/* 027EE878 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027EE878 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE878 */ cpu->r[1] = _t0;
|
|
/* 027EE87C */ _t1 = cpu->r[4] + 0x00000040u;
|
|
/* 027EE87C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EE880 */ _t2 = cpu->r[4] + 0x0000003Cu;
|
|
/* 027EE880 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027EE884 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE884 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 027EE888 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE888 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EE88C */ cpu->r[9] = 0x10110000u;
|
|
/* 027EE890 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE890 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 027EE894 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE894 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE898 */ _t7 = cpu->r[9] + 0x00000160u;
|
|
/* 027EE898 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027EE89C */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 027EE89C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 027EE8A0 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE8A0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 027EE8A4 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EE8A8 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 027EE8A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 027EE8AC */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 027EE8AC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027EE8B0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE8B4 */ return;
|
|
}
|
|
|
|
// fn_027EE8B8 @ 0x27ee8b8
|
|
void Gambit_fn_027EE8B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EE8B8: ; // 0x27ee8b8
|
|
/* 027EE8B8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027EE8B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE8B8 */ cpu->r[1] = _t0;
|
|
/* 027EE8BC */ _t1 = cpu->r[4] + 0x00000020u;
|
|
/* 027EE8BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EE8C0 */ _t2 = cpu->r[4] + 0x0000001Cu;
|
|
/* 027EE8C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027EE8C4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE8C4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 027EE8C8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE8C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EE8CC */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE8CC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027EE8D0 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE8D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE8D4 */ _t7 = cpu->r[4] + 0x00000024u;
|
|
/* 027EE8D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027EE8D8 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 027EE8D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 027EE8DC */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE8DC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 027EE8E0 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE8E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EE8E4 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 027EE8E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 027EE8E8 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 027EE8E8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027EE8EC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE8F0 */ return;
|
|
}
|
|
|
|
// fn_027EE8F4 @ 0x27ee8f4
|
|
void Gambit_fn_027EE8F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EE8F4: ; // 0x27ee8f4
|
|
/* 027EE8F4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027EE8F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE8F4 */ cpu->r[1] = _t0;
|
|
/* 027EE8F8 */ _t1 = cpu->r[4] + 0x00000038u;
|
|
/* 027EE8F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EE8FC */ _t2 = cpu->r[4] + 0x00000034u;
|
|
/* 027EE8FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027EE900 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE900 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 027EE904 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE904 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EE908 */ cpu->r[11] = 0x10110000u;
|
|
/* 027EE90C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE90C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 027EE910 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE910 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EE914 */ _t7 = cpu->r[11] + 0x00000168u;
|
|
/* 027EE914 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027EE918 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 027EE918 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 027EE91C */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE91C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 027EE920 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027EE920 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EE924 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 027EE924 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 027EE928 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 027EE928 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027EE92C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027EE930 */ return;
|
|
}
|
|
|
|
// fn_027EE934 @ 0x27ee934
|
|
void Gambit_fn_027EE934(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87;
|
|
|
|
L_027EE934: ; // 0x27ee934
|
|
/* 027EE934 */ _t0 = cpu->r[1] + 0xFFFFFF40u;
|
|
/* 027EE934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EE934 */ cpu->r[1] = _t0;
|
|
/* 027EE938 */ _t1 = cpu->r[1] + 0x00000064u;
|
|
/* 027EE938 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027EE93C */ _t2 = cpu->r[1] + 0x00000070u;
|
|
/* 027EE93C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 027EE940 */ cpu->r[0] = cpu->lr;
|
|
/* 027EE944 */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 027EE944 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[28]);
|
|
/* 027EE948 */ /* nop */
|
|
/* 027EE94C */ _t4 = cpu->r[1] + 0x00000090u;
|
|
/* 027EE94C */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 027EE950 */ /* nop */
|
|
/* 027EE954 */ _t5 = cpu->r[1] + 0x00000078u;
|
|
/* 027EE954 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[27]);
|
|
/* 027EE958 */ /* nop */
|
|
/* 027EE95C */ _t6 = cpu->r[1] + 0x00000068u;
|
|
/* 027EE95C */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 027EE960 */ _t7 = cpu->r[1] + 0x00000088u;
|
|
/* 027EE960 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[28]);
|
|
/* 027EE964 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EE968 */ _t8 = cpu->r[1] + 0x00000098u;
|
|
/* 027EE968 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 027EE96C */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 027EE970 */ _t9 = cpu->r[1] + 0x000000A0u;
|
|
/* 027EE970 */ rbrew_write_f64(cpu->mem, _t9, cpu->f[30]);
|
|
/* 027EE974 */ _t10 = cpu->r[1] + 0x000000C4u;
|
|
/* 027EE974 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 027EE978 */ /* nop */
|
|
/* 027EE97C */ _t11 = cpu->r[1] + 0x000000B0u;
|
|
/* 027EE97C */ rbrew_write_f64(cpu->mem, _t11, cpu->f[31]);
|
|
/* 027EE980 */ _t12 = cpu->r[1] + 0x000000A8u;
|
|
/* 027EE980 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[30]);
|
|
/* 027EE984 */ /* nop */
|
|
/* 027EE988 */ _t13 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027EE988 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 027EE98C */ _t14 = cpu->r[1] + 0x000000B8u;
|
|
/* 027EE98C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[31]);
|
|
/* 027EE990 */ Gambit_fn_027EE8B8(cpu);
|
|
/* 027EE994 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 027EE998 */ Gambit_fn_027EE8F4(cpu);
|
|
/* 027EE99C */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE9A0 */ Gambit_fn_027EE590(cpu);
|
|
/* 027EE9A4 */ _t15 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027EE9A4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027EE9A8 */ cpu->r[12] = 0x10110000u;
|
|
/* 027EE9AC */ _t16 = cpu->r[12] + 0x00000170u;
|
|
/* 027EE9AC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027EE9B0 */ cpu->f[1] = cpu->f[9] * cpu->f[31];
|
|
/* 027EE9B4 */ Gambit_fn_02C898C4(cpu);
|
|
/* 027EE9B8 */ cpu->r[8] = 0x10110000u;
|
|
/* 027EE9BC */ cpu->r[31] = 0x43300000u;
|
|
/* 027EE9C0 */ _t17 = cpu->r[8] + 0x00000178u;
|
|
/* 027EE9C0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 027EE9C4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE9C4 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 027EE9C8 */ cpu->r[29] = 0x10110000u;
|
|
/* 027EE9CC */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 027EE9D0 */ cpu->r[29] = cpu->r[29] + 0x000053A0u;
|
|
/* 027EE9D4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[4], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 027EE9D8 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EE9D8 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 027EE9DC */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027EE9DC */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 027EE9E0 */ cpu->r[10] = 0x10110000u;
|
|
/* 027EE9E4 */ _t21 = cpu->r[1] + 0x00000050u;
|
|
/* 027EE9E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 027EE9E8 */ cpu->f[13] = cpu->f[12] - cpu->f[13];
|
|
/* 027EE9EC */ _t22 = cpu->r[10] + 0x00000174u;
|
|
/* 027EE9EC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 027EE9F0 */ cpu->r[10] = cpu->r[29] + cpu->r[9];
|
|
/* 027EE9F4 */ _t23 = cpu->r[10] + 0x00000004u;
|
|
/* 027EE9F4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027EE9F8 */ cpu->f[0] = (double)(float)cpu->f[13];
|
|
/* 027EE9FC */ _t24 = cpu->r[10] + 0x0000000Cu;
|
|
/* 027EE9FC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 027EEA00 */ cpu->f[1] = cpu->f[10] * cpu->f[31];
|
|
/* 027EEA04 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 027EEA04 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 027EEA08 */ cpu->f[0] = cpu->f[0] * cpu->f[30];
|
|
/* 027EEA0C */ _t26 = cpu->r[10] + 0x00000008u;
|
|
/* 027EEA0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027EEA10 */ cpu->f[28] = fma(cpu->f[7], cpu->f[0], cpu->f[8]);
|
|
/* 027EEA14 */ cpu->f[29] = fma(cpu->f[9], cpu->f[0], cpu->f[10]);
|
|
/* 027EEA18 */ Gambit_fn_02C898C4(cpu);
|
|
/* 027EEA1C */ _t27 = cpu->r[1] + 0x00000054u;
|
|
/* 027EEA1C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 027EEA20 */ cpu->r[9] = 0x10110000u;
|
|
/* 027EEA24 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEA24 */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 027EEA28 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 027EEA2C */ cpu->r[8] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 027EEA30 */ _t29 = cpu->r[9] + 0x00000178u;
|
|
/* 027EEA30 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t29);
|
|
/* 027EEA34 */ cpu->f[1] = cpu->f[11] * cpu->f[31];
|
|
/* 027EEA38 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEA38 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 027EEA3C */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEA3C */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 027EEA40 */ cpu->f[10] = cpu->f[9] - cpu->f[12];
|
|
/* 027EEA44 */ cpu->r[9] = cpu->r[29] + cpu->r[0];
|
|
/* 027EEA48 */ _t32 = cpu->r[9] + 0x0000000Cu;
|
|
/* 027EEA48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 027EEA4C */ cpu->f[7] = (double)(float)cpu->f[10];
|
|
/* 027EEA50 */ _t33 = cpu->r[9] + 0x00000008u;
|
|
/* 027EEA50 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 027EEA54 */ cpu->f[11] = cpu->f[7] * cpu->f[30];
|
|
/* 027EEA58 */ _t34 = cpu->r[9] + 0x00000004u;
|
|
/* 027EEA58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 027EEA5C */ _t35 = cpu->r[9] + 0x00000000u;
|
|
/* 027EEA5C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 027EEA60 */ cpu->f[27] = fma(cpu->f[0], cpu->f[11], cpu->f[8]);
|
|
/* 027EEA64 */ cpu->f[31] = fma(cpu->f[12], cpu->f[11], cpu->f[13]);
|
|
/* 027EEA68 */ Gambit_fn_02C898C4(cpu);
|
|
/* 027EEA6C */ cpu->r[12] = 0x10110000u;
|
|
/* 027EEA70 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEA70 */ rbrew_write32(cpu->mem, _t36, cpu->r[31]);
|
|
/* 027EEA74 */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 027EEA78 */ _t37 = cpu->r[12] + 0x00000178u;
|
|
/* 027EEA78 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 027EEA7C */ cpu->f[5] = cpu->f[28] * cpu->f[27];
|
|
/* 027EEA80 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEA80 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 027EEA84 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEA84 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 027EEA88 */ cpu->f[8] = cpu->f[7] - cpu->f[0];
|
|
/* 027EEA8C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 027EEA90 */ cpu->f[9] = cpu->f[28] * cpu->f[31];
|
|
/* 027EEA94 */ cpu->r[8] = cpu->r[29] + cpu->r[0];
|
|
/* 027EEA98 */ _t40 = cpu->r[1] + 0x00000058u;
|
|
/* 027EEA98 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 027EEA9C */ cpu->f[11] = (double)(float)cpu->f[8];
|
|
/* 027EEAA0 */ _t41 = cpu->r[8] + 0x00000004u;
|
|
/* 027EEAA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027EEAA4 */ cpu->f[0] = cpu->f[2] * cpu->f[31];
|
|
/* 027EEAA8 */ _t42 = cpu->r[8] + 0x00000008u;
|
|
/* 027EEAA8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 027EEAAC */ cpu->f[11] = cpu->f[11] * cpu->f[30];
|
|
/* 027EEAB0 */ _t43 = cpu->r[8] + 0x00000000u;
|
|
/* 027EEAB0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 027EEAB4 */ cpu->f[0] = -cpu->f[0];
|
|
/* 027EEAB8 */ _t44 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027EEAB8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 027EEABC */ cpu->f[3] = fma(cpu->f[13], cpu->f[11], cpu->f[7]);
|
|
/* 027EEAC0 */ cpu->f[4] = fma(cpu->f[8], cpu->f[11], cpu->f[10]);
|
|
/* 027EEAC4 */ cpu->f[11] = cpu->f[27] * cpu->f[4];
|
|
/* 027EEAC8 */ cpu->f[6] = cpu->f[29] * cpu->f[3];
|
|
/* 027EEACC */ cpu->f[10] = cpu->f[2] * cpu->f[11];
|
|
/* 027EEAD0 */ cpu->f[7] = fma(cpu->f[9], cpu->f[4], -(cpu->f[6]));
|
|
/* 027EEAD4 */ cpu->f[11] = cpu->f[28] * cpu->f[3];
|
|
/* 027EEAD8 */ cpu->f[8] = cpu->f[29] * cpu->f[4];
|
|
/* 027EEADC */ cpu->f[12] = cpu->f[27] * cpu->f[3];
|
|
/* 027EEAE0 */ _t45 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EEAE0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 027EEAE4 */ cpu->f[13] = fma(cpu->f[8], cpu->f[31], cpu->f[11]);
|
|
/* 027EEAE8 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 027EEAE8 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[10]);
|
|
/* 027EEAEC */ cpu->f[10] = cpu->f[1] * cpu->f[7];
|
|
/* 027EEAF0 */ _t47 = cpu->r[1] + 0x00000040u;
|
|
/* 027EEAF0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 027EEAF4 */ _t48 = cpu->r[1] + 0x00000018u;
|
|
/* 027EEAF4 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 027EEAF8 */ cpu->f[13] = fma(cpu->f[9], cpu->f[3], cpu->f[8]);
|
|
/* 027EEAFC */ _t49 = cpu->r[1] + 0x00000044u;
|
|
/* 027EEAFC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 027EEB00 */ cpu->f[8] = cpu->f[28] * cpu->f[4];
|
|
/* 027EEB04 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEB04 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 027EEB08 */ _t51 = cpu->r[1] + 0x00000030u;
|
|
/* 027EEB08 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 027EEB0C */ cpu->r[0] = 0x00000003u;
|
|
/* 027EEB10 */ cpu->f[12] = cpu->f[2] * cpu->f[12];
|
|
/* 027EEB14 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EEB14 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[7]);
|
|
/* 027EEB18 */ cpu->ctr = cpu->r[0];
|
|
/* 027EEB1C */ cpu->f[8] = fma(cpu->f[6], cpu->f[31], -(cpu->f[8]));
|
|
/* 027EEB20 */ _t53 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EEB20 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[9]);
|
|
/* 027EEB24 */ cpu->f[11] = cpu->f[1] * cpu->f[13];
|
|
/* 027EEB28 */ _t54 = cpu->r[1] + 0x00000048u;
|
|
/* 027EEB28 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 027EEB2C */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 027EEB2C */ rbrew_write_f32(cpu->mem, _t55, cpu->f[12]);
|
|
/* 027EEB30 */ cpu->f[12] = cpu->f[1] * cpu->f[5];
|
|
/* 027EEB34 */ _t56 = cpu->r[1] + 0x00000024u;
|
|
/* 027EEB34 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[11]);
|
|
/* 027EEB38 */ _t57 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027EEB38 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[10]);
|
|
/* 027EEB3C */ cpu->f[11] = cpu->f[29] * cpu->f[27];
|
|
/* 027EEB40 */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 027EEB40 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[8]);
|
|
/* 027EEB44 */ _t59 = cpu->r[1] + 0x00000034u;
|
|
/* 027EEB44 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 027EEB48 */ cpu->r[9] = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 027EEB4C */ cpu->r[11] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEB50 */ _t60 = cpu->r[1] + 0x00000038u;
|
|
/* 027EEB50 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[11]);
|
|
L_027EEB54: ; // 0x27eeb54
|
|
/* 027EEB54 */ _t61 = cpu->r[11] + 0x00000004u;
|
|
/* 027EEB54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027EEB58 */ _t62 = cpu->r[9] + 0x00000004u;
|
|
/* 027EEB58 */ rbrew_write32(cpu->mem, _t62, cpu->r[8]);
|
|
/* 027EEB5C */ _t63 = cpu->r[11] + 0x00000008u;
|
|
/* 027EEB5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027EEB60 */ _t64 = cpu->r[9] + 0x00000008u;
|
|
/* 027EEB60 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 027EEB64 */ _t65 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027EEB64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 027EEB68 */ _t66 = cpu->r[9] + 0x0000000Cu;
|
|
/* 027EEB68 */ rbrew_write32(cpu->mem, _t66, cpu->r[10]);
|
|
/* 027EEB6C */ _t67 = cpu->r[11] + 0x00000010u;
|
|
/* 027EEB6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027EEB6C */ cpu->r[11] = _t67;
|
|
/* 027EEB70 */ _t68 = cpu->r[9] + 0x00000010u;
|
|
/* 027EEB70 */ rbrew_write32(cpu->mem, _t68, cpu->r[12]);
|
|
/* 027EEB70 */ cpu->r[9] = _t68;
|
|
/* 027EEB74 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027EEB74 */ _t69 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027EEB74 */ _t70 = _t69 >> (0x00000002u & 31u);
|
|
/* 027EEB74 */ _t71 = _t70 & 0x00000001u;
|
|
/* 027EEB74 */ if (_t71) goto L_027EEB54; else goto L_027EEB78;
|
|
L_027EEB78: ; // 0x27eeb78
|
|
/* 027EEB78 */ _t72 = cpu->r[1] + 0x00000064u;
|
|
/* 027EEB78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027EEB7C */ _t73 = cpu->r[1] + 0x00000088u;
|
|
/* 027EEB7C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 027EEB80 */ _t74 = cpu->r[1] + 0x00000078u;
|
|
/* 027EEB80 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 027EEB84 */ _t75 = cpu->r[1] + 0x00000080u;
|
|
/* 027EEB84 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 027EEB88 */ _t76 = cpu->r[1] + 0x00000098u;
|
|
/* 027EEB88 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 027EEB8C */ _t77 = cpu->r[1] + 0x00000070u;
|
|
/* 027EEB8C */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 027EEB90 */ _t78 = cpu->r[1] + 0x00000090u;
|
|
/* 027EEB90 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 027EEB94 */ _t79 = cpu->r[1] + 0x000000B8u;
|
|
/* 027EEB94 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 027EEB98 */ _t80 = cpu->r[1] + 0x000000A8u;
|
|
/* 027EEB98 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 027EEB9C */ _t81 = cpu->r[1] + 0x000000B0u;
|
|
/* 027EEB9C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t81);
|
|
/* 027EEBA0 */ _t82 = cpu->r[1] + 0x000000A0u;
|
|
/* 027EEBA0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t82);
|
|
/* 027EEBA4 */ _t83 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027EEBA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t83);
|
|
/* 027EEBA8 */ _t84 = cpu->r[1] + 0x00000068u;
|
|
/* 027EEBA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t84);
|
|
/* 027EEBAC */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EEBAC */ _t86 = _t85 & 0x00000001u;
|
|
/* 027EEBAC */ if (_t86) goto L_027EEBB0; // else: addr-0 trap, fall-through
|
|
L_027EEBB0: ; // 0x27eebb0
|
|
/* 027EEBB0 */ _t87 = cpu->r[1] + 0x000000C4u;
|
|
/* 027EEBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 027EEBB4 */ cpu->lr = cpu->r[0];
|
|
/* 027EEBB8 */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 027EEBBC */ return;
|
|
}
|
|
|
|
// fn_027EEBC0 @ 0x27eebc0
|
|
void Gambit_fn_027EEBC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_027EEBC0: ; // 0x27eebc0
|
|
/* 027EEBC0 */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 027EEBC0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 027EEBC4 */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 027EEBC4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EEBC8 */ _t2 = cpu->r[4] + 0x00000008u;
|
|
/* 027EEBC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027EEBCC */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 027EEBCC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EEBD0 */ _t4 = cpu->r[3] + 0x00000024u;
|
|
/* 027EEBD0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 027EEBD4 */ cpu->r[0] = cpu->r[12] | 0x00000010u;
|
|
/* 027EEBD8 */ _t5 = cpu->r[3] + 0x00000020u;
|
|
/* 027EEBD8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027EEBDC */ _t6 = cpu->r[3] + 0x0000001Cu;
|
|
/* 027EEBDC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 027EEBE0 */ _t7 = cpu->r[3] + 0x00000044u;
|
|
/* 027EEBE0 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 027EEBE4 */ return;
|
|
}
|
|
|
|
// fn_027EEBE8 @ 0x27eebe8
|
|
void Gambit_fn_027EEBE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56;
|
|
|
|
L_027EEBE8: ; // 0x27eebe8
|
|
/* 027EEBE8 */ cpu->r[0] = cpu->lr;
|
|
/* 027EEBEC */ cpu->r[11] = 0x10110000u;
|
|
/* 027EEBF0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 027EEBF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEBF0 */ cpu->r[1] = _t0;
|
|
/* 027EEBF4 */ _t1 = cpu->r[11] + 0x00000160u;
|
|
/* 027EEBF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EEBF8 */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EEBF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EEBFC */ cpu->r[31] = cpu->r[3];
|
|
/* 027EEC00 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEC00 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 027EEC04 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027EEC08 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC08 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[13]);
|
|
/* 027EEC0C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 027EEC0C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027EEC10 */ _t6 = cpu->r[1] + 0x00000064u;
|
|
/* 027EEC10 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027EEC14 */ Gambit_fn_027EE878(cpu);
|
|
/* 027EEC18 */ _t7 = cpu->r[4] + 0x00000047u;
|
|
/* 027EEC18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 027EEC1C */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EEC20 */ cpu->r[11] = 0x10110000u;
|
|
/* 027EEC24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u);
|
|
/* 027EEC28 */ _t8 = cpu->r[11] + 0x00000164u;
|
|
/* 027EEC28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 027EEC2C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEC2C */ _t10 = _t9 & 0x00000001u;
|
|
/* 027EEC2C */ if (_t10) goto L_027EEC30; else goto L_027EEC50;
|
|
L_027EEC30: ; // 0x27eec30
|
|
/* 027EEC30 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEC30 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027EEC34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EEC38 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC38 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027EEC3C */ cpu->f[13] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 027EEC40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027EEC44 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC44 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 027EEC48 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEC48 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027EEC48 */ if (_t15) goto L_027EEC4C; else goto L_027EECD0;
|
|
L_027EEC4C: ; // 0x27eec4c
|
|
/* 027EEC4C */ goto L_027EEC74;
|
|
L_027EEC50: ; // 0x27eec50
|
|
/* 027EEC50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 027EEC54 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEC54 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027EEC54 */ if (_t17) goto L_027EEC58; else goto L_027EEC68;
|
|
L_027EEC58: ; // 0x27eec58
|
|
/* 027EEC58 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEC58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 027EEC5C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC5C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 027EEC60 */ cpu->f[13] = -fma(cpu->f[12], cpu->f[0], -(cpu->f[13]));
|
|
/* 027EEC64 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC64 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
L_027EEC68: ; // 0x27eec68
|
|
/* 027EEC68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EEC6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027EEC70 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEC70 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027EEC70 */ if (_t22) goto L_027EEC74; else goto L_027EECD0;
|
|
L_027EEC74: ; // 0x27eec74
|
|
/* 027EEC74 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEC74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027EEC78 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 027EEC78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 027EEC7C */ cpu->f[13] = -fma(cpu->f[12], cpu->f[0], -(cpu->f[13]));
|
|
/* 027EEC80 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EEC84 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEC84 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[13]);
|
|
/* 027EEC88 */ Gambit_fn_027EE934(cpu);
|
|
/* 027EEC8C */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEC8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EEC90 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027EEC94 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 027EEC94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EEC98 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 027EEC98 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 027EEC9C */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EECA0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027EECA4 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 027EECA4 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 027EECA8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EECAC */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 027EECAC */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 027EECB0 */ Gambit_fn_02C69468(cpu);
|
|
/* 027EECB4 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 027EECB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027EECB8 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EECB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027EECBC */ _t34 = cpu->r[31] + 0x00000000u;
|
|
/* 027EECBC */ rbrew_write32(cpu->mem, _t34, cpu->r[11]);
|
|
/* 027EECC0 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 027EECC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027EECC4 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 027EECC4 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 027EECC8 */ _t37 = cpu->r[31] + 0x00000008u;
|
|
/* 027EECC8 */ rbrew_write32(cpu->mem, _t37, cpu->r[9]);
|
|
/* 027EECCC */ goto L_027EED30;
|
|
L_027EECD0: ; // 0x27eecd0
|
|
/* 027EECD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 027EECD4 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EECD4 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027EECD4 */ if (_t39) goto L_027EECD8; else goto L_027EECE8;
|
|
L_027EECD8: ; // 0x27eecd8
|
|
/* 027EECD8 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 027EECD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 027EECDC */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EECDC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027EECE0 */ cpu->f[13] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 027EECE4 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EECE4 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
L_027EECE8: ; // 0x27eece8
|
|
/* 027EECE8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EECEC */ Gambit_fn_027EE934(cpu);
|
|
/* 027EECF0 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EECF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027EECF4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027EECF8 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 027EECF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027EECFC */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 027EECFC */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 027EED00 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 027EED00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027EED04 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 027EED04 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 027EED08 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EED0C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027EED10 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 027EED10 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 027EED14 */ Gambit_fn_02C69468(cpu);
|
|
/* 027EED18 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 027EED18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027EED1C */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EED1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027EED20 */ _t51 = cpu->r[31] + 0x00000000u;
|
|
/* 027EED20 */ rbrew_write32(cpu->mem, _t51, cpu->r[11]);
|
|
/* 027EED24 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 027EED24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027EED28 */ _t53 = cpu->r[31] + 0x00000004u;
|
|
/* 027EED28 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 027EED2C */ _t54 = cpu->r[31] + 0x00000008u;
|
|
/* 027EED2C */ rbrew_write32(cpu->mem, _t54, cpu->r[9]);
|
|
L_027EED30: ; // 0x27eed30
|
|
/* 027EED30 */ _t55 = cpu->r[1] + 0x00000064u;
|
|
/* 027EED30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027EED34 */ _t56 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EED34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027EED38 */ cpu->lr = cpu->r[0];
|
|
/* 027EED3C */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 027EED40 */ return;
|
|
}
|
|
|
|
// fn_027EEBF0 @ 0x27eebf0
|
|
void Gambit_fn_027EEBF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56;
|
|
|
|
L_027EEBF0: ; // 0x27eebf0
|
|
/* 027EEBF0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 027EEBF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEBF0 */ cpu->r[1] = _t0;
|
|
/* 027EEBF4 */ _t1 = cpu->r[11] + 0x00000160u;
|
|
/* 027EEBF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EEBF8 */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EEBF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EEBFC */ cpu->r[31] = cpu->r[3];
|
|
/* 027EEC00 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEC00 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 027EEC04 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027EEC08 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC08 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[13]);
|
|
/* 027EEC0C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 027EEC0C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027EEC10 */ _t6 = cpu->r[1] + 0x00000064u;
|
|
/* 027EEC10 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027EEC14 */ Gambit_fn_027EE878(cpu);
|
|
/* 027EEC18 */ _t7 = cpu->r[4] + 0x00000047u;
|
|
/* 027EEC18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 027EEC1C */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EEC20 */ cpu->r[11] = 0x10110000u;
|
|
/* 027EEC24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u);
|
|
/* 027EEC28 */ _t8 = cpu->r[11] + 0x00000164u;
|
|
/* 027EEC28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 027EEC2C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEC2C */ _t10 = _t9 & 0x00000001u;
|
|
/* 027EEC2C */ if (_t10) goto L_027EEC30; else goto L_027EEC50;
|
|
L_027EEC30: ; // 0x27eec30
|
|
/* 027EEC30 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEC30 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027EEC34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EEC38 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC38 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027EEC3C */ cpu->f[13] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 027EEC40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027EEC44 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC44 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 027EEC48 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEC48 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027EEC48 */ if (_t15) goto L_027EEC4C; else goto L_027EECD0;
|
|
L_027EEC4C: ; // 0x27eec4c
|
|
/* 027EEC4C */ goto L_027EEC74;
|
|
L_027EEC50: ; // 0x27eec50
|
|
/* 027EEC50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 027EEC54 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEC54 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027EEC54 */ if (_t17) goto L_027EEC58; else goto L_027EEC68;
|
|
L_027EEC58: ; // 0x27eec58
|
|
/* 027EEC58 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEC58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 027EEC5C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC5C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 027EEC60 */ cpu->f[13] = -fma(cpu->f[12], cpu->f[0], -(cpu->f[13]));
|
|
/* 027EEC64 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC64 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
L_027EEC68: ; // 0x27eec68
|
|
/* 027EEC68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EEC6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027EEC70 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEC70 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027EEC70 */ if (_t22) goto L_027EEC74; else goto L_027EECD0;
|
|
L_027EEC74: ; // 0x27eec74
|
|
/* 027EEC74 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEC74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027EEC78 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 027EEC78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 027EEC7C */ cpu->f[13] = -fma(cpu->f[12], cpu->f[0], -(cpu->f[13]));
|
|
/* 027EEC80 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EEC84 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEC84 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[13]);
|
|
/* 027EEC88 */ Gambit_fn_027EE934(cpu);
|
|
/* 027EEC8C */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEC8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EEC90 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027EEC94 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 027EEC94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EEC98 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 027EEC98 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 027EEC9C */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEC9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EECA0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027EECA4 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 027EECA4 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 027EECA8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EECAC */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 027EECAC */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 027EECB0 */ Gambit_fn_02C69468(cpu);
|
|
/* 027EECB4 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 027EECB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027EECB8 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EECB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027EECBC */ _t34 = cpu->r[31] + 0x00000000u;
|
|
/* 027EECBC */ rbrew_write32(cpu->mem, _t34, cpu->r[11]);
|
|
/* 027EECC0 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 027EECC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027EECC4 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 027EECC4 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 027EECC8 */ _t37 = cpu->r[31] + 0x00000008u;
|
|
/* 027EECC8 */ rbrew_write32(cpu->mem, _t37, cpu->r[9]);
|
|
/* 027EECCC */ goto L_027EED30;
|
|
L_027EECD0: ; // 0x27eecd0
|
|
/* 027EECD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 027EECD4 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EECD4 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027EECD4 */ if (_t39) goto L_027EECD8; else goto L_027EECE8;
|
|
L_027EECD8: ; // 0x27eecd8
|
|
/* 027EECD8 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 027EECD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 027EECDC */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EECDC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027EECE0 */ cpu->f[13] = fma(cpu->f[12], cpu->f[0], cpu->f[13]);
|
|
/* 027EECE4 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EECE4 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
L_027EECE8: ; // 0x27eece8
|
|
/* 027EECE8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EECEC */ Gambit_fn_027EE934(cpu);
|
|
/* 027EECF0 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EECF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027EECF4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027EECF8 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 027EECF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027EECFC */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 027EECFC */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 027EED00 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 027EED00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027EED04 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 027EED04 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 027EED08 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EED0C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027EED10 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 027EED10 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 027EED14 */ Gambit_fn_02C69468(cpu);
|
|
/* 027EED18 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 027EED18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027EED1C */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EED1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027EED20 */ _t51 = cpu->r[31] + 0x00000000u;
|
|
/* 027EED20 */ rbrew_write32(cpu->mem, _t51, cpu->r[11]);
|
|
/* 027EED24 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 027EED24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027EED28 */ _t53 = cpu->r[31] + 0x00000004u;
|
|
/* 027EED28 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 027EED2C */ _t54 = cpu->r[31] + 0x00000008u;
|
|
/* 027EED2C */ rbrew_write32(cpu->mem, _t54, cpu->r[9]);
|
|
L_027EED30: ; // 0x27eed30
|
|
/* 027EED30 */ _t55 = cpu->r[1] + 0x00000064u;
|
|
/* 027EED30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027EED34 */ _t56 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027EED34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027EED38 */ cpu->lr = cpu->r[0];
|
|
/* 027EED3C */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 027EED40 */ return;
|
|
}
|
|
|
|
// fn_027EED4C @ 0x27eed4c
|
|
void Gambit_fn_027EED4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EED4C: ; // 0x27eed4c
|
|
/* 027EED4C */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 027EED4C */ cpu->r[11] = rbrew_read8(cpu->mem, _t0);
|
|
/* 027EED50 */ cpu->r[12] = rbrew_rlwinm(cpu->r[5], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 027EED54 */ cpu->r[10] = cpu->r[11] & 0x000000FDu;
|
|
/* 027EED54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027EED58 */ _t1 = cpu->r[3] + 0x00000045u;
|
|
/* 027EED58 */ rbrew_write8(cpu->mem, _t1, (uint8_t)cpu->r[4]);
|
|
/* 027EED5C */ cpu->r[0] = cpu->r[10] | cpu->r[12];
|
|
/* 027EED60 */ _t2 = cpu->r[3] + 0x00000044u;
|
|
/* 027EED60 */ rbrew_write8(cpu->mem, _t2, (uint8_t)cpu->r[0]);
|
|
/* 027EED64 */ return;
|
|
}
|
|
|
|
// fn_027EED68 @ 0x27eed68
|
|
void Gambit_fn_027EED68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027EED68: ; // 0x27eed68
|
|
/* 027EED68 */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 027EED68 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 027EED6C */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 027EED6C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EED70 */ cpu->r[0] = cpu->r[12] | 0x00000010u;
|
|
/* 027EED74 */ _t2 = cpu->r[4] + 0x00000004u;
|
|
/* 027EED74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027EED78 */ _t3 = cpu->r[3] + 0x00000044u;
|
|
/* 027EED78 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027EED7C */ _t4 = cpu->r[3] + 0x00000038u;
|
|
/* 027EED7C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 027EED80 */ _t5 = cpu->r[3] + 0x00000034u;
|
|
/* 027EED80 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027EED84 */ return;
|
|
}
|
|
|
|
// fn_027EED88 @ 0x27eed88
|
|
void Gambit_fn_027EED88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_027EED88: ; // 0x27eed88
|
|
/* 027EED88 */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 027EED88 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 027EED8C */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 027EED8C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027EED90 */ _t2 = cpu->r[4] + 0x00000008u;
|
|
/* 027EED90 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027EED94 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 027EED94 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027EED98 */ _t4 = cpu->r[3] + 0x00000030u;
|
|
/* 027EED98 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 027EED9C */ cpu->r[0] = cpu->r[12] | 0x00000010u;
|
|
/* 027EEDA0 */ _t5 = cpu->r[3] + 0x0000002Cu;
|
|
/* 027EEDA0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027EEDA4 */ _t6 = cpu->r[3] + 0x00000028u;
|
|
/* 027EEDA4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 027EEDA8 */ _t7 = cpu->r[3] + 0x00000044u;
|
|
/* 027EEDA8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 027EEDAC */ return;
|
|
}
|
|
|
|
// fn_027EEDC4 @ 0x27eedc4
|
|
void Gambit_fn_027EEDC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EEDC4: ; // 0x27eedc4
|
|
/* 027EEDC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EEDC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEDC4 */ cpu->r[1] = _t0;
|
|
/* 027EEDC8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027EEDCC */ Gambit_fn_027EE590(cpu);
|
|
/* 027EEDD0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027EEDD4 */ cpu->r[3] = cpu->r[10];
|
|
/* 027EEDD8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027EEDD8 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[12]);
|
|
/* 027EEDDC */ Gambit_fn_027EED88(cpu);
|
|
/* 027EEDE0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EEDE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EEDE4 */ cpu->lr = cpu->r[0];
|
|
/* 027EEDE8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EEDEC */ return;
|
|
}
|
|
|
|
// fn_027EEDF0 @ 0x27eedf0
|
|
void Gambit_fn_027EEDF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EEDF0: ; // 0x27eedf0
|
|
/* 027EEDF0 */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 027EEDF0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t0);
|
|
/* 027EEDF4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Eu);
|
|
/* 027EEDF8 */ cpu->r[0] = cpu->r[12] | cpu->r[4];
|
|
/* 027EEDFC */ _t1 = cpu->r[3] + 0x00000044u;
|
|
/* 027EEDFC */ rbrew_write8(cpu->mem, _t1, (uint8_t)cpu->r[0]);
|
|
/* 027EEE00 */ return;
|
|
}
|
|
|
|
// fn_027EEE04 @ 0x27eee04
|
|
void Gambit_fn_027EEE04(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_027EEE04: ; // 0x27eee04
|
|
/* 027EEE04 */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 027EEE04 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 027EEE08 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EEE0C */ return;
|
|
}
|
|
|
|
// fn_027EEE10 @ 0x27eee10
|
|
void Gambit_fn_027EEE10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_027EEE10: ; // 0x27eee10
|
|
/* 027EEE10 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EEE10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEE10 */ cpu->r[1] = _t0;
|
|
/* 027EEE14 */ /* nop */
|
|
/* 027EEE18 */ cpu->r[9] = cpu->r[1] + 0x00000008u;
|
|
/* 027EEE1C */ /* nop */
|
|
/* 027EEE20 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEE20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EEE24 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 027EEE24 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027EEE28 */ _t3 = cpu->r[4] + 0x00000001u;
|
|
/* 027EEE28 */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 027EEE2C */ _t4 = rbrew_rlwinm(cpu->r[11], 0x00000018u, 0x00000000u, 0x00000007u);
|
|
/* 027EEE2C */ _t5 = cpu->r[10] & 0x00FFFFFFu;
|
|
/* 027EEE2C */ cpu->r[10] = _t5 | _t4;
|
|
/* 027EEE30 */ _t6 = cpu->r[4] + 0x00000002u;
|
|
/* 027EEE30 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027EEE34 */ _t7 = rbrew_rlwinm(cpu->r[12], 0x00000010u, 0x00000008u, 0x0000000Fu);
|
|
/* 027EEE34 */ _t8 = cpu->r[10] & 0xFF00FFFFu;
|
|
/* 027EEE34 */ cpu->r[10] = _t8 | _t7;
|
|
/* 027EEE38 */ _t9 = rbrew_rlwinm(cpu->r[0], 0x00000008u, 0x00000010u, 0x00000017u);
|
|
/* 027EEE38 */ _t10 = cpu->r[10] & 0xFFFF00FFu;
|
|
/* 027EEE38 */ cpu->r[10] = _t10 | _t9;
|
|
/* 027EEE3C */ cpu->r[11] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEE40 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEE40 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 027EEE44 */ /* nop */
|
|
/* 027EEE48 */ /* nop */
|
|
/* 027EEE4C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EEE50 */ return;
|
|
}
|
|
|
|
// fn_027EEE58 @ 0x27eee58
|
|
void Gambit_fn_027EEE58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EEE58: ; // 0x27eee58
|
|
/* 027EEE58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EEE58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEE58 */ cpu->r[1] = _t0;
|
|
/* 027EEE5C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEE5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EEE60 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EEE64 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEE64 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EEE68 */ Gambit_fn_0285FA88(cpu);
|
|
/* 027EEE6C */ cpu->r[4] = cpu->r[31];
|
|
/* 027EEE70 */ Gambit_fn_027EEE10(cpu);
|
|
/* 027EEE74 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEE74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EEE78 */ cpu->lr = cpu->r[0];
|
|
/* 027EEE7C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEE7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EEE80 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EEE84 */ return;
|
|
}
|
|
|
|
// fn_027EEE94 @ 0x27eee94
|
|
void Gambit_fn_027EEE94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027EEE94: ; // 0x27eee94
|
|
/* 027EEE94 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EEE94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEE94 */ cpu->r[1] = _t0;
|
|
/* 027EEE98 */ _t1 = cpu->r[6] + 0x000000D4u;
|
|
/* 027EEE98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EEE9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EEEA0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEEA0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027EEEA0 */ rbrew_dispatch(cpu, (_t3) ? 0x027eeea4u : 0x027eee10u); return;
|
|
/* 027EEEA4 */ cpu->r[7] = 0x00000008u;
|
|
/* 027EEEA8 */ cpu->r[8] = 0x00000000u;
|
|
L_027EEEAC: ; // 0x27eeeac
|
|
/* 027EEEAC */ _t4 = cpu->r[6] + 0x000000CDu;
|
|
/* 027EEEAC */ cpu->r[9] = rbrew_read8(cpu->mem, _t4);
|
|
/* 027EEEB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 027EEEB4 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EEEB4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EEEB4 */ if (_t6) goto L_027EEEB8; else goto L_027EEED0;
|
|
L_027EEEB8: ; // 0x27eeeb8
|
|
/* 027EEEB8 */ _t7 = cpu->r[6] + 0x000000D0u;
|
|
/* 027EEEB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EEEBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027EEEC0 */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 027EEEC4 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 027EEEC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EEEC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EEECC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEECC */ _t10 = _t9 & 0x00000001u;
|
|
/* 027EEECC */ if (_t10) goto L_027EEED0;
|
|
/* 027EEECC */ rbrew_dispatch(cpu, 0x027eee10u); return;
|
|
L_027EEED0: ; // 0x27eeed0
|
|
/* 027EEED0 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 027EEED0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027EEED4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 027EEED8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEED8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027EEED8 */ if (_t12) goto L_027EEEDC; else goto L_027EEEAC;
|
|
L_027EEEDC: ; // 0x27eeedc
|
|
/* 027EEEDC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEEDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EEEE0 */ cpu->lr = cpu->r[0];
|
|
/* 027EEEE4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EEEE8 */ return;
|
|
}
|
|
|
|
// fn_027EEEF0 @ 0x27eeef0
|
|
void Gambit_fn_027EEEF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EEEF0: ; // 0x27eeef0
|
|
/* 027EEEF0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EEEF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEEF0 */ cpu->r[1] = _t0;
|
|
/* 027EEEF4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEEF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EEEF8 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EEEFC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEEFC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EEF00 */ Gambit_fn_0285FA88(cpu);
|
|
/* 027EEF04 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EEF08 */ Gambit_fn_027EEE10(cpu);
|
|
/* 027EEF0C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEF0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EEF10 */ cpu->lr = cpu->r[0];
|
|
/* 027EEF14 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEF14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EEF18 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EEF1C */ return;
|
|
}
|
|
|
|
// fn_027EEF20 @ 0x27eef20
|
|
void Gambit_fn_027EEF20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_027EEF20: ; // 0x27eef20
|
|
/* 027EEF20 */ cpu->r[12] = cpu->r[3] + 0x00000004u;
|
|
/* 027EEF24 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EEF24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEF24 */ cpu->r[1] = _t0;
|
|
/* 027EEF28 */ /* nop */
|
|
/* 027EEF2C */ cpu->r[11] = cpu->r[1] + 0x00000008u;
|
|
/* 027EEF30 */ /* nop */
|
|
/* 027EEF34 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEF34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EEF38 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 027EEF38 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027EEF3C */ _t3 = cpu->r[4] + 0x00000001u;
|
|
/* 027EEF3C */ cpu->r[9] = rbrew_read8(cpu->mem, _t3);
|
|
/* 027EEF40 */ _t4 = rbrew_rlwinm(cpu->r[11], 0x00000018u, 0x00000000u, 0x00000007u);
|
|
/* 027EEF40 */ _t5 = cpu->r[0] & 0x00FFFFFFu;
|
|
/* 027EEF40 */ cpu->r[0] = _t5 | _t4;
|
|
/* 027EEF44 */ _t6 = cpu->r[4] + 0x00000002u;
|
|
/* 027EEF44 */ cpu->r[10] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027EEF48 */ _t7 = rbrew_rlwinm(cpu->r[9], 0x00000010u, 0x00000008u, 0x0000000Fu);
|
|
/* 027EEF48 */ _t8 = cpu->r[0] & 0xFF00FFFFu;
|
|
/* 027EEF48 */ cpu->r[0] = _t8 | _t7;
|
|
/* 027EEF4C */ _t9 = rbrew_rlwinm(cpu->r[10], 0x00000008u, 0x00000010u, 0x00000017u);
|
|
/* 027EEF4C */ _t10 = cpu->r[0] & 0xFFFF00FFu;
|
|
/* 027EEF4C */ cpu->r[0] = _t10 | _t9;
|
|
/* 027EEF50 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEF54 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEF54 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027EEF58 */ /* nop */
|
|
/* 027EEF5C */ /* nop */
|
|
/* 027EEF60 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EEF64 */ return;
|
|
}
|
|
|
|
// fn_027EEF24 @ 0x27eef24
|
|
void Gambit_fn_027EEF24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_027EEF24: ; // 0x27eef24
|
|
/* 027EEF24 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EEF24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEF24 */ cpu->r[1] = _t0;
|
|
/* 027EEF28 */ /* nop */
|
|
/* 027EEF2C */ cpu->r[11] = cpu->r[1] + 0x00000008u;
|
|
/* 027EEF30 */ /* nop */
|
|
/* 027EEF34 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EEF34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EEF38 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 027EEF38 */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027EEF3C */ _t3 = cpu->r[4] + 0x00000001u;
|
|
/* 027EEF3C */ cpu->r[9] = rbrew_read8(cpu->mem, _t3);
|
|
/* 027EEF40 */ _t4 = rbrew_rlwinm(cpu->r[11], 0x00000018u, 0x00000000u, 0x00000007u);
|
|
/* 027EEF40 */ _t5 = cpu->r[0] & 0x00FFFFFFu;
|
|
/* 027EEF40 */ cpu->r[0] = _t5 | _t4;
|
|
/* 027EEF44 */ _t6 = cpu->r[4] + 0x00000002u;
|
|
/* 027EEF44 */ cpu->r[10] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027EEF48 */ _t7 = rbrew_rlwinm(cpu->r[9], 0x00000010u, 0x00000008u, 0x0000000Fu);
|
|
/* 027EEF48 */ _t8 = cpu->r[0] & 0xFF00FFFFu;
|
|
/* 027EEF48 */ cpu->r[0] = _t8 | _t7;
|
|
/* 027EEF4C */ _t9 = rbrew_rlwinm(cpu->r[10], 0x00000008u, 0x00000010u, 0x00000017u);
|
|
/* 027EEF4C */ _t10 = cpu->r[0] & 0xFFFF00FFu;
|
|
/* 027EEF4C */ cpu->r[0] = _t10 | _t9;
|
|
/* 027EEF50 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEF54 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEF54 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027EEF58 */ /* nop */
|
|
/* 027EEF5C */ /* nop */
|
|
/* 027EEF60 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EEF64 */ return;
|
|
}
|
|
|
|
// fn_027EEF6C @ 0x27eef6c
|
|
void Gambit_fn_027EEF6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EEF6C: ; // 0x27eef6c
|
|
/* 027EEF6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EEF6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEF6C */ cpu->r[1] = _t0;
|
|
/* 027EEF70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEF70 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EEF74 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EEF78 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEF78 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EEF7C */ Gambit_fn_0285FA88(cpu);
|
|
/* 027EEF80 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EEF84 */ Gambit_fn_027EEF20(cpu);
|
|
/* 027EEF88 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EEF88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EEF8C */ cpu->lr = cpu->r[0];
|
|
/* 027EEF90 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEF90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EEF94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EEF98 */ return;
|
|
}
|
|
|
|
// fn_027EEFA8 @ 0x27eefa8
|
|
void Gambit_fn_027EEFA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027EEFA8: ; // 0x27eefa8
|
|
/* 027EEFA8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EEFA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EEFA8 */ cpu->r[1] = _t0;
|
|
/* 027EEFAC */ _t1 = cpu->r[6] + 0x000000D4u;
|
|
/* 027EEFAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EEFB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EEFB4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEFB4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027EEFB4 */ rbrew_dispatch(cpu, (_t3) ? 0x027eefb8u : 0x027eef20u); return;
|
|
/* 027EEFB8 */ cpu->r[7] = 0x00000008u;
|
|
/* 027EEFBC */ cpu->r[8] = 0x00000000u;
|
|
L_027EEFC0: ; // 0x27eefc0
|
|
/* 027EEFC0 */ _t4 = cpu->r[6] + 0x000000CDu;
|
|
/* 027EEFC0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t4);
|
|
/* 027EEFC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 027EEFC8 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EEFC8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EEFC8 */ if (_t6) goto L_027EEFCC; else goto L_027EEFE4;
|
|
L_027EEFCC: ; // 0x27eefcc
|
|
/* 027EEFCC */ _t7 = cpu->r[6] + 0x000000D0u;
|
|
/* 027EEFCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EEFD0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027EEFD4 */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 027EEFD8 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 027EEFD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EEFDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EEFE0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEFE0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027EEFE0 */ if (_t10) goto L_027EEFE4;
|
|
/* 027EEFE0 */ rbrew_dispatch(cpu, 0x027eef20u); return;
|
|
L_027EEFE4: ; // 0x27eefe4
|
|
/* 027EEFE4 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 027EEFE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027EEFE8 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 027EEFEC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EEFEC */ _t12 = _t11 & 0x00000001u;
|
|
/* 027EEFEC */ if (_t12) goto L_027EEFF0; else goto L_027EEFC0;
|
|
L_027EEFF0: ; // 0x27eeff0
|
|
/* 027EEFF0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EEFF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EEFF4 */ cpu->lr = cpu->r[0];
|
|
/* 027EEFF8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EEFFC */ return;
|
|
}
|
|
|
|
// fn_027EF004 @ 0x27ef004
|
|
void Gambit_fn_027EF004(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EF004: ; // 0x27ef004
|
|
/* 027EF004 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EF004 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF004 */ cpu->r[1] = _t0;
|
|
/* 027EF008 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF008 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EF00C */ cpu->r[31] = cpu->r[4];
|
|
/* 027EF010 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF010 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EF014 */ Gambit_fn_0285FA88(cpu);
|
|
/* 027EF018 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EF01C */ Gambit_fn_027EEF20(cpu);
|
|
/* 027EF020 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EF024 */ cpu->lr = cpu->r[0];
|
|
/* 027EF028 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF028 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EF02C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EF030 */ return;
|
|
}
|
|
|
|
// fn_027EF038 @ 0x27ef038
|
|
void Gambit_fn_027EF038(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_027EF038: ; // 0x27ef038
|
|
/* 027EF038 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EF038 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF038 */ cpu->r[1] = _t0;
|
|
/* 027EF03C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF03C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EF040 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EF044 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF044 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EF048 */ Gambit_fn_0285FA88(cpu);
|
|
/* 027EF04C */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF04C */ cpu->r[0] = rbrew_read16(cpu->mem, _t3);
|
|
/* 027EF050 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EF054 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF054 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027EF054 */ if (_t5) goto L_027EF198; else goto L_027EF058;
|
|
L_027EF058: ; // 0x27ef058
|
|
/* 027EF058 */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF058 */ cpu->r[4] = rbrew_read16(cpu->mem, _t6);
|
|
/* 027EF05C */ cpu->r[8] = rbrew_rlwinm(cpu->r[4], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF060 */ cpu->r[7] = rbrew_rlwinm(cpu->r[4], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF064 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000014u);
|
|
/* 027EF068 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000012u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF06C */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000016u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF070 */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF074 */ cpu->r[5] = rbrew_rlwinm(cpu->r[4], 0x0000001Cu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF078 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu);
|
|
/* 027EF07C */ cpu->r[0] = cpu->r[10] + cpu->r[11];
|
|
/* 027EF080 */ cpu->r[6] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF084 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027EF088 */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000019u, 0x0000001Du, 0x0000001Fu);
|
|
/* 027EF08C */ cpu->r[0] = cpu->r[12] + cpu->r[9];
|
|
/* 027EF090 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x0000000Cu);
|
|
/* 027EF094 */ cpu->r[12] = cpu->r[5] + cpu->r[0];
|
|
/* 027EF098 */ cpu->r[9] = rbrew_rlwinm(cpu->r[4], 0x0000001Fu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF09C */ cpu->r[5] = cpu->r[12] + cpu->r[6];
|
|
/* 027EF0A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF0A4 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)0x00000014u);
|
|
/* 027EF0A8 */ cpu->r[9] = cpu->r[5] + cpu->r[8];
|
|
/* 027EF0AC */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 027EF0AC */ cpu->r[6] = rbrew_read8(cpu->mem, _t7);
|
|
/* 027EF0B0 */ cpu->r[12] = cpu->r[9] + cpu->r[0];
|
|
/* 027EF0B4 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027EF0B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EF0B8 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
/* 027EF0BC */ _t9 = cpu->r[7] + cpu->r[12];
|
|
/* 027EF0BC */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[6]);
|
|
/* 027EF0C0 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF0C0 */ cpu->r[9] = rbrew_read16(cpu->mem, _t10);
|
|
/* 027EF0C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000012u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF0C8 */ cpu->r[5] = rbrew_rlwinm(cpu->r[9], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF0CC */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu);
|
|
/* 027EF0D0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF0D4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000016u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF0D8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000014u);
|
|
/* 027EF0DC */ cpu->r[10] = cpu->r[8] + cpu->r[5];
|
|
/* 027EF0E0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027EF0E4 */ cpu->r[10] = cpu->r[6] + cpu->r[0];
|
|
/* 027EF0E8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[9], 0x0000001Cu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF0EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF0F0 */ cpu->r[5] = cpu->r[11] + cpu->r[10];
|
|
/* 027EF0F4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF0F8 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Cu);
|
|
/* 027EF0FC */ cpu->r[6] = rbrew_rlwinm(cpu->r[9], 0x00000019u, 0x0000001Du, 0x0000001Fu);
|
|
/* 027EF100 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF104 */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF108 */ cpu->r[11] = cpu->r[5] + cpu->r[8];
|
|
/* 027EF10C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)0x00000014u);
|
|
/* 027EF110 */ cpu->r[5] = cpu->r[11] + cpu->r[12];
|
|
/* 027EF114 */ cpu->r[8] = cpu->r[5] + cpu->r[7];
|
|
/* 027EF118 */ _t11 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027EF118 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EF11C */ cpu->r[8] = cpu->r[8] + cpu->r[0];
|
|
/* 027EF120 */ _t12 = cpu->r[31] + 0x00000001u;
|
|
/* 027EF120 */ cpu->r[4] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027EF124 */ cpu->r[12] = cpu->r[11] + cpu->r[8];
|
|
/* 027EF128 */ _t13 = cpu->r[12] + 0x00000001u;
|
|
/* 027EF128 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[4]);
|
|
/* 027EF12C */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF12C */ cpu->r[4] = rbrew_read16(cpu->mem, _t14);
|
|
/* 027EF130 */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF134 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000016u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF138 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x00000014u);
|
|
/* 027EF13C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF140 */ cpu->r[5] = rbrew_rlwinm(cpu->r[4], 0x00000012u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF144 */ cpu->r[0] = cpu->r[12] + cpu->r[0];
|
|
/* 027EF148 */ cpu->r[7] = rbrew_rlwinm(cpu->r[4], 0x0000001Cu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF14C */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x0000001Cu);
|
|
/* 027EF150 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF154 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000019u, 0x0000001Du, 0x0000001Fu);
|
|
/* 027EF158 */ cpu->r[7] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027EF15C */ cpu->r[9] = rbrew_rlwinm(cpu->r[4], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF160 */ cpu->r[0] = cpu->r[6] + cpu->r[11];
|
|
/* 027EF164 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)0x0000000Cu);
|
|
/* 027EF168 */ cpu->r[5] = cpu->r[7] + cpu->r[0];
|
|
/* 027EF16C */ cpu->r[6] = rbrew_rlwinm(cpu->r[4], 0x0000001Fu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF170 */ cpu->r[11] = cpu->r[5] + cpu->r[8];
|
|
/* 027EF174 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF178 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)0x00000014u);
|
|
/* 027EF17C */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
/* 027EF180 */ cpu->r[5] = cpu->r[11] + cpu->r[0];
|
|
/* 027EF184 */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027EF184 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EF188 */ cpu->r[7] = cpu->r[5] + cpu->r[7];
|
|
/* 027EF18C */ _t16 = cpu->r[31] + 0x00000002u;
|
|
/* 027EF18C */ cpu->r[6] = rbrew_read8(cpu->mem, _t16);
|
|
/* 027EF190 */ cpu->r[9] = cpu->r[8] + cpu->r[7];
|
|
/* 027EF194 */ _t17 = cpu->r[9] + 0x00000002u;
|
|
/* 027EF194 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[6]);
|
|
L_027EF198: ; // 0x27ef198
|
|
/* 027EF198 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF19C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF19C */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027EF1A0 */ cpu->lr = cpu->r[0];
|
|
/* 027EF1A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EF1A8 */ return;
|
|
}
|
|
|
|
// fn_027EF1B0 @ 0x27ef1b0
|
|
void Gambit_fn_027EF1B0(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_027EF1B0: ; // 0x27ef1b0
|
|
/* 027EF1B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EF1B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF1B0 */ cpu->r[1] = _t0;
|
|
/* 027EF1B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF1B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EF1B8 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EF1BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF1BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EF1C0 */ Gambit_fn_0285FA88(cpu);
|
|
/* 027EF1C4 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF1C4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t3);
|
|
/* 027EF1C8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF1C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EF1CC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF1CC */ _t5 = _t4 & 0x00000001u;
|
|
/* 027EF1CC */ if (_t5) goto L_027EF314; else goto L_027EF1D0;
|
|
L_027EF1D0: ; // 0x27ef1d0
|
|
/* 027EF1D0 */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF1D0 */ cpu->r[4] = rbrew_read16(cpu->mem, _t6);
|
|
/* 027EF1D4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000012u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF1D8 */ cpu->r[8] = rbrew_rlwinm(cpu->r[4], 0x00000016u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF1DC */ cpu->r[9] = rbrew_rlwinm(cpu->r[4], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF1E0 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu);
|
|
/* 027EF1E4 */ cpu->r[0] = cpu->r[8] + cpu->r[9];
|
|
/* 027EF1E8 */ cpu->r[5] = rbrew_rlwinm(cpu->r[4], 0x0000001Cu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF1EC */ cpu->r[8] = rbrew_rlwinm(cpu->r[4], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF1F0 */ cpu->r[6] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF1F4 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000014u);
|
|
/* 027EF1F8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[4], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF1FC */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027EF200 */ cpu->r[5] = rbrew_rlwinm(cpu->r[4], 0x0000001Fu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF204 */ cpu->r[0] = cpu->r[12] + cpu->r[9];
|
|
/* 027EF208 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x0000000Cu);
|
|
/* 027EF20C */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 027EF210 */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000019u, 0x0000001Du, 0x0000001Fu);
|
|
/* 027EF214 */ cpu->r[9] = cpu->r[12] + cpu->r[6];
|
|
/* 027EF218 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x00000014u);
|
|
/* 027EF21C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF220 */ cpu->r[9] = cpu->r[9] + cpu->r[8];
|
|
/* 027EF224 */ cpu->r[12] = cpu->r[9] + cpu->r[0];
|
|
/* 027EF228 */ _t7 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027EF228 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EF22C */ cpu->r[7] = cpu->r[12] + cpu->r[7];
|
|
/* 027EF230 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 027EF230 */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 027EF234 */ cpu->r[12] = cpu->r[11] + cpu->r[7];
|
|
/* 027EF238 */ _t9 = cpu->r[12] + 0x00000003u;
|
|
/* 027EF238 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 027EF23C */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF23C */ cpu->r[7] = rbrew_read16(cpu->mem, _t10);
|
|
/* 027EF240 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000012u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF244 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000016u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF248 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x0000001Cu);
|
|
/* 027EF24C */ cpu->r[6] = rbrew_rlwinm(cpu->r[7], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF250 */ cpu->r[12] = rbrew_rlwinm(cpu->r[7], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF254 */ cpu->r[0] = cpu->r[5] + cpu->r[6];
|
|
/* 027EF258 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x00000014u);
|
|
/* 027EF25C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027EF260 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x0000001Fu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF264 */ cpu->r[12] = rbrew_rlwinm(cpu->r[7], 0x0000001Cu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF268 */ cpu->r[6] = cpu->r[11] + cpu->r[5];
|
|
/* 027EF26C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 027EF270 */ cpu->r[9] = cpu->r[10] + cpu->r[6];
|
|
/* 027EF274 */ cpu->r[6] = rbrew_rlwinm(cpu->r[7], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF278 */ cpu->r[5] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF27C */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000019u, 0x0000001Du, 0x0000001Fu);
|
|
/* 027EF280 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)0x0000000Cu);
|
|
/* 027EF284 */ cpu->r[7] = cpu->r[9] + cpu->r[5];
|
|
/* 027EF288 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF28C */ cpu->r[9] = cpu->r[7] + cpu->r[8];
|
|
/* 027EF290 */ cpu->r[12] = cpu->r[9] + cpu->r[11];
|
|
/* 027EF294 */ _t11 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027EF294 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EF298 */ cpu->r[0] = cpu->r[12] + cpu->r[0];
|
|
/* 027EF29C */ _t12 = cpu->r[31] + 0x00000001u;
|
|
/* 027EF29C */ cpu->r[4] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027EF2A0 */ cpu->r[5] = cpu->r[6] + cpu->r[0];
|
|
/* 027EF2A4 */ _t13 = cpu->r[5] + 0x00000004u;
|
|
/* 027EF2A4 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[4]);
|
|
/* 027EF2A8 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF2A8 */ cpu->r[9] = rbrew_read16(cpu->mem, _t14);
|
|
/* 027EF2AC */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x00000012u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF2B0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[9], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF2B4 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x0000001Cu);
|
|
/* 027EF2B8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x00000016u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF2BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000014u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF2C0 */ cpu->r[11] = cpu->r[7] + cpu->r[10];
|
|
/* 027EF2C4 */ cpu->r[5] = rbrew_rlwinm(cpu->r[9], 0x0000001Cu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF2C8 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 027EF2CC */ cpu->r[6] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF2D0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF2D4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027EF2D8 */ cpu->r[11] = cpu->r[8] + cpu->r[10];
|
|
/* 027EF2DC */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x0000000Cu);
|
|
/* 027EF2E0 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
/* 027EF2E4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[9], 0x00000019u, 0x0000001Du, 0x0000001Fu);
|
|
/* 027EF2E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 027EF2EC */ cpu->r[7] = cpu->r[12] + cpu->r[6];
|
|
/* 027EF2F0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF2F4 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 027EF2F8 */ cpu->r[9] = cpu->r[7] + cpu->r[8];
|
|
/* 027EF2FC */ cpu->r[12] = cpu->r[9] + cpu->r[11];
|
|
/* 027EF300 */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027EF300 */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EF304 */ cpu->r[0] = cpu->r[12] + cpu->r[5];
|
|
/* 027EF308 */ _t16 = cpu->r[31] + 0x00000002u;
|
|
/* 027EF308 */ cpu->r[7] = rbrew_read8(cpu->mem, _t16);
|
|
/* 027EF30C */ cpu->r[8] = cpu->r[6] + cpu->r[0];
|
|
/* 027EF310 */ _t17 = cpu->r[8] + 0x00000005u;
|
|
/* 027EF310 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[7]);
|
|
L_027EF314: ; // 0x27ef314
|
|
/* 027EF314 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF318 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF318 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027EF31C */ cpu->lr = cpu->r[0];
|
|
/* 027EF320 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EF324 */ return;
|
|
}
|
|
|
|
// fn_027EF328 @ 0x27ef328
|
|
void Gambit_fn_027EF328(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_027EF328: ; // 0x27ef328
|
|
/* 027EF328 */ cpu->r[0] = cpu->lr;
|
|
/* 027EF32C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF32C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF32C */ cpu->r[1] = _t0;
|
|
/* 027EF330 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF330 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EF334 */ cpu->r[31] = cpu->r[5];
|
|
/* 027EF338 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF338 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 027EF33C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF33C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027EF340 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF340 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EF344 */ cpu->r[29] = cpu->r[3];
|
|
/* 027EF348 */ _t5 = cpu->r[31] + 0x00000004u;
|
|
/* 027EF348 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EF34C */ _t6 = cpu->r[12] + 0x00000014u;
|
|
/* 027EF34C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EF350 */ cpu->ctr = cpu->r[0];
|
|
/* 027EF354 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EF358 */ cpu->r[30] = cpu->r[4];
|
|
/* 027EF35C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF360 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 027EF360 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EF364 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF368 */ Gambit_fn_0285FB2C(cpu);
|
|
/* 027EF36C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF370 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF370 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027EF370 */ if (_t9) goto L_027EF3B8; else goto L_027EF374;
|
|
L_027EF374: ; // 0x27ef374
|
|
/* 027EF374 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF374 */ cpu->r[11] = rbrew_read16(cpu->mem, _t10);
|
|
/* 027EF378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027EF37C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF37C */ _t12 = _t11 & 0x00000001u;
|
|
/* 027EF37C */ if (_t12) goto L_027EF3B8; else goto L_027EF380;
|
|
L_027EF380: ; // 0x27ef380
|
|
/* 027EF380 */ _t13 = cpu->r[3] + 0x0000000Au;
|
|
/* 027EF380 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 027EF384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027EF388 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF388 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027EF388 */ if (_t15) goto L_027EF38C; else goto L_027EF3B8;
|
|
L_027EF38C: ; // 0x27ef38c
|
|
/* 027EF38C */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 027EF38C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EF390 */ cpu->r[10] = cpu->r[3] + cpu->r[0];
|
|
/* 027EF394 */ _t17 = cpu->r[29] + 0x00000000u;
|
|
/* 027EF394 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 027EF398 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF398 */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF39C */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF39C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027EF3A0 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF3A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EF3A4 */ cpu->lr = cpu->r[0];
|
|
/* 027EF3A8 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF3A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027EF3AC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF3B0 */ cpu->r[3] = 0x00000001u;
|
|
/* 027EF3B4 */ return;
|
|
L_027EF3B8: ; // 0x27ef3b8
|
|
/* 027EF3B8 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF3B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027EF3BC */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF3BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EF3C0 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF3C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EF3C4 */ cpu->lr = cpu->r[0];
|
|
/* 027EF3C8 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF3C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EF3CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF3D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027EF3D4 */ return;
|
|
}
|
|
|
|
// fn_027EF32C @ 0x27ef32c
|
|
void Gambit_fn_027EF32C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_027EF32C: ; // 0x27ef32c
|
|
/* 027EF32C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF32C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF32C */ cpu->r[1] = _t0;
|
|
/* 027EF330 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF330 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EF334 */ cpu->r[31] = cpu->r[5];
|
|
/* 027EF338 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF338 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 027EF33C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF33C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027EF340 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF340 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EF344 */ cpu->r[29] = cpu->r[3];
|
|
/* 027EF348 */ _t5 = cpu->r[31] + 0x00000004u;
|
|
/* 027EF348 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EF34C */ _t6 = cpu->r[12] + 0x00000014u;
|
|
/* 027EF34C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EF350 */ cpu->ctr = cpu->r[0];
|
|
/* 027EF354 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EF358 */ cpu->r[30] = cpu->r[4];
|
|
/* 027EF35C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF360 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 027EF360 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EF364 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF368 */ Gambit_fn_0285FB2C(cpu);
|
|
/* 027EF36C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF370 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF370 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027EF370 */ if (_t9) goto L_027EF3B8; else goto L_027EF374;
|
|
L_027EF374: ; // 0x27ef374
|
|
/* 027EF374 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF374 */ cpu->r[11] = rbrew_read16(cpu->mem, _t10);
|
|
/* 027EF378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027EF37C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF37C */ _t12 = _t11 & 0x00000001u;
|
|
/* 027EF37C */ if (_t12) goto L_027EF3B8; else goto L_027EF380;
|
|
L_027EF380: ; // 0x27ef380
|
|
/* 027EF380 */ _t13 = cpu->r[3] + 0x0000000Au;
|
|
/* 027EF380 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 027EF384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027EF388 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF388 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027EF388 */ if (_t15) goto L_027EF38C; else goto L_027EF3B8;
|
|
L_027EF38C: ; // 0x27ef38c
|
|
/* 027EF38C */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 027EF38C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EF390 */ cpu->r[10] = cpu->r[3] + cpu->r[0];
|
|
/* 027EF394 */ _t17 = cpu->r[29] + 0x00000000u;
|
|
/* 027EF394 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 027EF398 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF398 */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF39C */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF39C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027EF3A0 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF3A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EF3A4 */ cpu->lr = cpu->r[0];
|
|
/* 027EF3A8 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF3A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027EF3AC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF3B0 */ cpu->r[3] = 0x00000001u;
|
|
/* 027EF3B4 */ return;
|
|
L_027EF3B8: ; // 0x27ef3b8
|
|
/* 027EF3B8 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF3B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027EF3BC */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF3BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EF3C0 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF3C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EF3C4 */ cpu->lr = cpu->r[0];
|
|
/* 027EF3C8 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF3C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EF3CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF3D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027EF3D4 */ return;
|
|
}
|
|
|
|
// fn_027EF3D8 @ 0x27ef3d8
|
|
void Gambit_fn_027EF3D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_027EF3D8: ; // 0x27ef3d8
|
|
/* 027EF3D8 */ cpu->r[0] = cpu->lr;
|
|
/* 027EF3DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF3DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF3DC */ cpu->r[1] = _t0;
|
|
/* 027EF3E0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF3E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 027EF3E4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF3E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EF3E8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF3E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027EF3EC */ cpu->r[30] = cpu->r[5];
|
|
/* 027EF3F0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF3F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027EF3F4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF3F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EF3F8 */ cpu->r[29] = cpu->r[4];
|
|
/* 027EF3FC */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 027EF3FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EF400 */ _t7 = cpu->r[12] + 0x00000014u;
|
|
/* 027EF400 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EF404 */ cpu->r[28] = cpu->r[3];
|
|
/* 027EF408 */ cpu->ctr = cpu->r[8];
|
|
/* 027EF40C */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF410 */ cpu->r[31] = cpu->r[6];
|
|
/* 027EF414 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF418 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 027EF418 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EF41C */ cpu->r[3] = cpu->r[29];
|
|
/* 027EF420 */ Gambit_fn_0285FB2C(cpu);
|
|
/* 027EF424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF428 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF428 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027EF428 */ if (_t10) goto L_027EF47C; else goto L_027EF42C;
|
|
L_027EF42C: ; // 0x27ef42c
|
|
/* 027EF42C */ _t11 = cpu->r[3] + 0x0000000Au;
|
|
/* 027EF42C */ cpu->r[9] = rbrew_read8(cpu->mem, _t11);
|
|
/* 027EF430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u);
|
|
/* 027EF434 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF434 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027EF434 */ if (_t13) goto L_027EF438; else goto L_027EF47C;
|
|
L_027EF438: ; // 0x27ef438
|
|
/* 027EF438 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF438 */ cpu->r[10] = rbrew_read16(cpu->mem, _t14);
|
|
/* 027EF43C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 027EF440 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027EF440 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027EF440 */ if (_t16) goto L_027EF444; else goto L_027EF47C;
|
|
L_027EF444: ; // 0x27ef444
|
|
/* 027EF444 */ _t17 = cpu->r[3] + 0x00000004u;
|
|
/* 027EF444 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EF448 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF44C */ cpu->r[7] = cpu->r[3] + cpu->r[0];
|
|
/* 027EF450 */ _t18 = cpu->r[12] + cpu->r[7];
|
|
/* 027EF450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF454 */ _t19 = cpu->r[28] + 0x00000000u;
|
|
/* 027EF454 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 027EF458 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF458 */ cpu->r[28] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EF45C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF45C */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027EF460 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027EF464 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF464 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EF468 */ cpu->lr = cpu->r[0];
|
|
/* 027EF46C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF46C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EF470 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF474 */ cpu->r[3] = 0x00000001u;
|
|
/* 027EF478 */ return;
|
|
L_027EF47C: ; // 0x27ef47c
|
|
/* 027EF47C */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF47C */ cpu->r[28] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EF480 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF480 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EF484 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EF488 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF488 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027EF48C */ cpu->lr = cpu->r[0];
|
|
/* 027EF490 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF490 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EF494 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF498 */ cpu->r[3] = 0x00000000u;
|
|
/* 027EF49C */ return;
|
|
}
|
|
|
|
// fn_027EF3DC @ 0x27ef3dc
|
|
void Gambit_fn_027EF3DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_027EF3DC: ; // 0x27ef3dc
|
|
/* 027EF3DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF3DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF3DC */ cpu->r[1] = _t0;
|
|
/* 027EF3E0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF3E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 027EF3E4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF3E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EF3E8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF3E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027EF3EC */ cpu->r[30] = cpu->r[5];
|
|
/* 027EF3F0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF3F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027EF3F4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF3F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EF3F8 */ cpu->r[29] = cpu->r[4];
|
|
/* 027EF3FC */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 027EF3FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EF400 */ _t7 = cpu->r[12] + 0x00000014u;
|
|
/* 027EF400 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EF404 */ cpu->r[28] = cpu->r[3];
|
|
/* 027EF408 */ cpu->ctr = cpu->r[8];
|
|
/* 027EF40C */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF410 */ cpu->r[31] = cpu->r[6];
|
|
/* 027EF414 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF418 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 027EF418 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EF41C */ cpu->r[3] = cpu->r[29];
|
|
/* 027EF420 */ Gambit_fn_0285FB2C(cpu);
|
|
/* 027EF424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF428 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF428 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027EF428 */ if (_t10) goto L_027EF47C; else goto L_027EF42C;
|
|
L_027EF42C: ; // 0x27ef42c
|
|
/* 027EF42C */ _t11 = cpu->r[3] + 0x0000000Au;
|
|
/* 027EF42C */ cpu->r[9] = rbrew_read8(cpu->mem, _t11);
|
|
/* 027EF430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u);
|
|
/* 027EF434 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF434 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027EF434 */ if (_t13) goto L_027EF438; else goto L_027EF47C;
|
|
L_027EF438: ; // 0x27ef438
|
|
/* 027EF438 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF438 */ cpu->r[10] = rbrew_read16(cpu->mem, _t14);
|
|
/* 027EF43C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 027EF440 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027EF440 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027EF440 */ if (_t16) goto L_027EF444; else goto L_027EF47C;
|
|
L_027EF444: ; // 0x27ef444
|
|
/* 027EF444 */ _t17 = cpu->r[3] + 0x00000004u;
|
|
/* 027EF444 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EF448 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF44C */ cpu->r[7] = cpu->r[3] + cpu->r[0];
|
|
/* 027EF450 */ _t18 = cpu->r[12] + cpu->r[7];
|
|
/* 027EF450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF454 */ _t19 = cpu->r[28] + 0x00000000u;
|
|
/* 027EF454 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 027EF458 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF458 */ cpu->r[28] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EF45C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF45C */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027EF460 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027EF464 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF464 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EF468 */ cpu->lr = cpu->r[0];
|
|
/* 027EF46C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF46C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EF470 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF474 */ cpu->r[3] = 0x00000001u;
|
|
/* 027EF478 */ return;
|
|
L_027EF47C: ; // 0x27ef47c
|
|
/* 027EF47C */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF47C */ cpu->r[28] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EF480 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF480 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EF484 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EF488 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF488 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027EF48C */ cpu->lr = cpu->r[0];
|
|
/* 027EF490 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF490 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EF494 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF498 */ cpu->r[3] = 0x00000000u;
|
|
/* 027EF49C */ return;
|
|
}
|
|
|
|
// fn_027EF4A0 @ 0x27ef4a0
|
|
void Gambit_fn_027EF4A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_027EF4A0: ; // 0x27ef4a0
|
|
/* 027EF4A0 */ cpu->r[0] = cpu->lr;
|
|
/* 027EF4A4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF4A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF4A4 */ cpu->r[1] = _t0;
|
|
/* 027EF4A8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF4A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 027EF4AC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF4AC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EF4B0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF4B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027EF4B4 */ cpu->r[30] = cpu->r[5];
|
|
/* 027EF4B8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF4B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027EF4BC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF4BC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EF4C0 */ cpu->r[29] = cpu->r[4];
|
|
/* 027EF4C4 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 027EF4C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EF4C8 */ _t7 = cpu->r[12] + 0x00000014u;
|
|
/* 027EF4C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EF4CC */ cpu->r[28] = cpu->r[3];
|
|
/* 027EF4D0 */ cpu->ctr = cpu->r[8];
|
|
/* 027EF4D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF4D8 */ cpu->r[31] = cpu->r[6];
|
|
/* 027EF4DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF4E0 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 027EF4E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EF4E4 */ cpu->r[3] = cpu->r[29];
|
|
/* 027EF4E8 */ Gambit_fn_0285FB2C(cpu);
|
|
/* 027EF4EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF4F0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF4F0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027EF4F0 */ if (_t10) goto L_027EF544; else goto L_027EF4F4;
|
|
L_027EF4F4: ; // 0x27ef4f4
|
|
/* 027EF4F4 */ _t11 = cpu->r[3] + 0x0000000Au;
|
|
/* 027EF4F4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t11);
|
|
/* 027EF4F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 027EF4FC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF4FC */ _t13 = _t12 & 0x00000001u;
|
|
/* 027EF4FC */ if (_t13) goto L_027EF500; else goto L_027EF544;
|
|
L_027EF500: ; // 0x27ef500
|
|
/* 027EF500 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF500 */ cpu->r[10] = rbrew_read16(cpu->mem, _t14);
|
|
/* 027EF504 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 027EF508 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027EF508 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027EF508 */ if (_t16) goto L_027EF50C; else goto L_027EF544;
|
|
L_027EF50C: ; // 0x27ef50c
|
|
/* 027EF50C */ _t17 = cpu->r[3] + 0x00000004u;
|
|
/* 027EF50C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EF510 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF514 */ cpu->r[7] = cpu->r[3] + cpu->r[0];
|
|
/* 027EF518 */ _t18 = cpu->r[12] + cpu->r[7];
|
|
/* 027EF518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF51C */ _t19 = cpu->r[28] + 0x00000000u;
|
|
/* 027EF51C */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 027EF520 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF520 */ cpu->r[28] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EF524 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF524 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027EF528 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027EF52C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF52C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EF530 */ cpu->lr = cpu->r[0];
|
|
/* 027EF534 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF534 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EF538 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF53C */ cpu->r[3] = 0x00000001u;
|
|
/* 027EF540 */ return;
|
|
L_027EF544: ; // 0x27ef544
|
|
/* 027EF544 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF544 */ cpu->r[28] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EF548 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF548 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EF54C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF54C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EF550 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF550 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027EF554 */ cpu->lr = cpu->r[0];
|
|
/* 027EF558 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF558 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EF55C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF560 */ cpu->r[3] = 0x00000000u;
|
|
/* 027EF564 */ return;
|
|
}
|
|
|
|
// fn_027EF4A4 @ 0x27ef4a4
|
|
void Gambit_fn_027EF4A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_027EF4A4: ; // 0x27ef4a4
|
|
/* 027EF4A4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF4A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF4A4 */ cpu->r[1] = _t0;
|
|
/* 027EF4A8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF4A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 027EF4AC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF4AC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EF4B0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF4B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027EF4B4 */ cpu->r[30] = cpu->r[5];
|
|
/* 027EF4B8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF4B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027EF4BC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF4BC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EF4C0 */ cpu->r[29] = cpu->r[4];
|
|
/* 027EF4C4 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 027EF4C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EF4C8 */ _t7 = cpu->r[12] + 0x00000014u;
|
|
/* 027EF4C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EF4CC */ cpu->r[28] = cpu->r[3];
|
|
/* 027EF4D0 */ cpu->ctr = cpu->r[8];
|
|
/* 027EF4D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF4D8 */ cpu->r[31] = cpu->r[6];
|
|
/* 027EF4DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF4E0 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 027EF4E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EF4E4 */ cpu->r[3] = cpu->r[29];
|
|
/* 027EF4E8 */ Gambit_fn_0285FB2C(cpu);
|
|
/* 027EF4EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF4F0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF4F0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027EF4F0 */ if (_t10) goto L_027EF544; else goto L_027EF4F4;
|
|
L_027EF4F4: ; // 0x27ef4f4
|
|
/* 027EF4F4 */ _t11 = cpu->r[3] + 0x0000000Au;
|
|
/* 027EF4F4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t11);
|
|
/* 027EF4F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 027EF4FC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF4FC */ _t13 = _t12 & 0x00000001u;
|
|
/* 027EF4FC */ if (_t13) goto L_027EF500; else goto L_027EF544;
|
|
L_027EF500: ; // 0x27ef500
|
|
/* 027EF500 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF500 */ cpu->r[10] = rbrew_read16(cpu->mem, _t14);
|
|
/* 027EF504 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 027EF508 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027EF508 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027EF508 */ if (_t16) goto L_027EF50C; else goto L_027EF544;
|
|
L_027EF50C: ; // 0x27ef50c
|
|
/* 027EF50C */ _t17 = cpu->r[3] + 0x00000004u;
|
|
/* 027EF50C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EF510 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF514 */ cpu->r[7] = cpu->r[3] + cpu->r[0];
|
|
/* 027EF518 */ _t18 = cpu->r[12] + cpu->r[7];
|
|
/* 027EF518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF51C */ _t19 = cpu->r[28] + 0x00000000u;
|
|
/* 027EF51C */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 027EF520 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF520 */ cpu->r[28] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EF524 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF524 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027EF528 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027EF52C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF52C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EF530 */ cpu->lr = cpu->r[0];
|
|
/* 027EF534 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF534 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EF538 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF53C */ cpu->r[3] = 0x00000001u;
|
|
/* 027EF540 */ return;
|
|
L_027EF544: ; // 0x27ef544
|
|
/* 027EF544 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF544 */ cpu->r[28] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EF548 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF548 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EF54C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF54C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EF550 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF550 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027EF554 */ cpu->lr = cpu->r[0];
|
|
/* 027EF558 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF558 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EF55C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF560 */ cpu->r[3] = 0x00000000u;
|
|
/* 027EF564 */ return;
|
|
}
|
|
|
|
// fn_027EF568 @ 0x27ef568
|
|
void Gambit_fn_027EF568(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_027EF568: ; // 0x27ef568
|
|
/* 027EF568 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027EF568 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF568 */ cpu->r[1] = _t0;
|
|
/* 027EF56C */ /* nop */
|
|
/* 027EF570 */ cpu->r[0] = cpu->lr;
|
|
/* 027EF574 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EF574 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027EF578 */ _t2 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027EF578 */ cpu->r[30] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EF57C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EF580 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF580 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027EF580 */ if (_t4) goto L_027EF628; else goto L_027EF584;
|
|
L_027EF584: ; // 0x27ef584
|
|
/* 027EF584 */ cpu->r[31] = 0x101D0000u;
|
|
/* 027EF588 */ cpu->r[25] = 0x101D0000u;
|
|
/* 027EF58C */ cpu->r[26] = 0x101D0000u;
|
|
/* 027EF590 */ cpu->r[31] = cpu->r[31] + 0x00000F58u;
|
|
/* 027EF594 */ cpu->r[25] = cpu->r[25] + 0x00000F38u;
|
|
/* 027EF598 */ cpu->r[27] = 0x00000001u;
|
|
/* 027EF59C */ cpu->r[28] = 0x101D0000u;
|
|
/* 027EF5A0 */ cpu->r[29] = 0x00000000u;
|
|
L_027EF5A4: ; // 0x27ef5a4
|
|
/* 027EF5A4 */ _t5 = cpu->r[28] + 0xFFFFEDD8u;
|
|
/* 027EF5A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EF5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 027EF5AC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF5AC */ _t7 = _t6 & 0x00000001u;
|
|
/* 027EF5AC */ if (_t7) goto L_027EF5B0; else goto L_027EF5CC;
|
|
L_027EF5B0: ; // 0x27ef5b0
|
|
/* 027EF5B0 */ _t8 = cpu->r[26] + 0xFFFFD7ECu;
|
|
/* 027EF5B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EF5B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EF5B8 */ _t9 = cpu->r[28] + 0xFFFFEDD8u;
|
|
/* 027EF5B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[27]);
|
|
/* 027EF5BC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF5BC */ _t11 = _t10 & 0x00000001u;
|
|
/* 027EF5BC */ if (_t11) goto L_027EF5C0; else goto L_027EF5C8;
|
|
L_027EF5C0: ; // 0x27ef5c0
|
|
/* 027EF5C0 */ _t12 = cpu->r[25] + 0x00000000u;
|
|
/* 027EF5C0 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 027EF5C4 */ _t13 = cpu->r[26] + 0xFFFFD7ECu;
|
|
/* 027EF5C4 */ rbrew_write32(cpu->mem, _t13, cpu->r[27]);
|
|
L_027EF5C8: ; // 0x27ef5c8
|
|
/* 027EF5C8 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 027EF5C8 */ rbrew_write32(cpu->mem, _t14, cpu->r[25]);
|
|
L_027EF5CC: ; // 0x27ef5cc
|
|
/* 027EF5CC */ _t15 = cpu->r[30] + 0x00000008u;
|
|
/* 027EF5CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EF5D0 */ _t16 = cpu->r[10] + 0x00000014u;
|
|
/* 027EF5D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EF5D4 */ cpu->ctr = cpu->r[0];
|
|
/* 027EF5D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF5DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF5E0 */ cpu->r[12] = cpu->r[3];
|
|
/* 027EF5E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027EF5E4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF5E4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027EF5E4 */ if (_t18) goto L_027EF61C; else goto L_027EF5E8;
|
|
L_027EF5E8: ; // 0x27ef5e8
|
|
/* 027EF5E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 027EF5EC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF5EC */ _t20 = _t19 & 0x00000001u;
|
|
/* 027EF5EC */ if (_t20) goto L_027EF614; else goto L_027EF5F0;
|
|
L_027EF5F0: ; // 0x27ef5f0
|
|
/* 027EF5F0 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 027EF5F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027EF5F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027EF5F8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF5F8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027EF5F8 */ if (_t23) goto L_027EF61C; else goto L_027EF5FC;
|
|
L_027EF5FC: ; // 0x27ef5fc
|
|
/* 027EF5FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 027EF600 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF600 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027EF600 */ if (_t25) goto L_027EF614; else goto L_027EF604;
|
|
L_027EF604: ; // 0x27ef604
|
|
/* 027EF604 */ _t26 = cpu->r[12] + 0x00000000u;
|
|
/* 027EF604 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EF608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027EF60C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF60C */ _t28 = _t27 & 0x00000001u;
|
|
/* 027EF60C */ if (_t28) goto L_027EF610; else goto L_027EF5FC;
|
|
L_027EF610: ; // 0x27ef610
|
|
/* 027EF610 */ goto L_027EF61C;
|
|
L_027EF614: ; // 0x27ef614
|
|
/* 027EF614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EF618 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF618 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027EF618 */ if (_t30) goto L_027EF61C; else goto L_027EF62C;
|
|
L_027EF61C: ; // 0x27ef61c
|
|
/* 027EF61C */ _t31 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027EF61C */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027EF620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EF624 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF624 */ _t33 = _t32 & 0x00000001u;
|
|
/* 027EF624 */ if (_t33) goto L_027EF628; else goto L_027EF5A4;
|
|
L_027EF628: ; // 0x27ef628
|
|
/* 027EF628 */ cpu->r[30] = 0x00000000u;
|
|
L_027EF62C: ; // 0x27ef62c
|
|
/* 027EF62C */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF630 */ /* nop */
|
|
/* 027EF634 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EF634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027EF638 */ cpu->lr = cpu->r[0];
|
|
/* 027EF63C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027EF640 */ return;
|
|
}
|
|
|
|
// fn_027EF644 @ 0x27ef644
|
|
void Gambit_fn_027EF644(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_027EF644: ; // 0x27ef644
|
|
/* 027EF644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF648 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF648 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027EF648 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EF648 */ goto L_027EF64C;
|
|
L_027EF64C: ; // 0x27ef64c
|
|
/* 027EF64C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF64C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EF650 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF650 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027EF650 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EF650 */ goto L_027EF654;
|
|
L_027EF654: ; // 0x27ef654
|
|
/* 027EF654 */ 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_027EF658 @ 0x27ef658
|
|
void Gambit_fn_027EF658(CPUState* cpu) {
|
|
L_027EF658: ; // 0x27ef658
|
|
/* 027EF658 */ return;
|
|
}
|
|
|
|
// fn_027EF65C @ 0x27ef65c
|
|
void Gambit_fn_027EF65C(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_027EF65C: ; // 0x27ef65c
|
|
/* 027EF65C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF660 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF660 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027EF660 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EF660 */ goto L_027EF664;
|
|
L_027EF664: ; // 0x27ef664
|
|
/* 027EF664 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EF664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EF668 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF668 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027EF668 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EF668 */ goto L_027EF66C;
|
|
L_027EF66C: ; // 0x27ef66c
|
|
/* 027EF66C */ 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_027EF670 @ 0x27ef670
|
|
void Gambit_fn_027EF670(CPUState* cpu) {
|
|
L_027EF670: ; // 0x27ef670
|
|
/* 027EF670 */ return;
|
|
}
|
|
|
|
// fn_027EF674 @ 0x27ef674
|
|
void Gambit_fn_027EF674(CPUState* cpu) {
|
|
L_027EF674: ; // 0x27ef674
|
|
/* 027EF674 */ return;
|
|
}
|
|
|
|
// fn_027EF678 @ 0x27ef678
|
|
void Gambit_fn_027EF678(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EF678: ; // 0x27ef678
|
|
/* 027EF678 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 027EF678 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EF67C */ cpu->r[9] = 0x10110000u;
|
|
/* 027EF680 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 027EF680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EF684 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 027EF688 */ _t2 = cpu->r[9] + 0x0000739Au;
|
|
/* 027EF688 */ cpu->r[0] = rbrew_read16(cpu->mem, _t2);
|
|
/* 027EF68C */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
/* 027EF690 */ _t3 = cpu->r[12] + 0xFFFFFFFEu;
|
|
/* 027EF690 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[0]);
|
|
/* 027EF694 */ return;
|
|
}
|
|
|
|
// fn_027EF6B0 @ 0x27ef6b0
|
|
void Gambit_fn_027EF6B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EF698: ; // 0x27ef698
|
|
/* 027EF698 */ cpu->r[3] = 0x101C0000u;
|
|
/* 027EF69C */ _t0 = cpu->r[3] + 0x00004DACu;
|
|
/* 027EF69C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EF6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF6A4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF6A4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 027EF6A4 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027EF6A4 */ goto L_027EF6A8;
|
|
L_027EF6A8: ; // 0x27ef6a8
|
|
/* 027EF6A8 */ _t3 = cpu->r[3] + 0x000000E0u;
|
|
/* 027EF6A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EF6AC */ return;
|
|
L_027EF6B0: ; // 0x27ef6b0
|
|
/* 027EF6B0 */ goto L_027EF698;
|
|
}
|
|
|
|
// fn_027EF6B4 @ 0x27ef6b4
|
|
void Gambit_fn_027EF6B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EF6B4: ; // 0x27ef6b4
|
|
/* 027EF6B4 */ _t0 = cpu->r[3] + 0x00000028u;
|
|
/* 027EF6B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EF6B8 */ _t1 = cpu->r[12] + 0x00000010u;
|
|
/* 027EF6B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EF6BC */ return;
|
|
}
|
|
|
|
// fn_027EF6C0 @ 0x27ef6c0
|
|
void Gambit_fn_027EF6C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027EF6C0: ; // 0x27ef6c0
|
|
/* 027EF6C0 */ cpu->r[0] = cpu->lr;
|
|
/* 027EF6C4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EF6C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EF6C8 */ cpu->r[11] = cpu->r[3];
|
|
/* 027EF6CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EF6CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EF6CC */ cpu->r[1] = _t1;
|
|
/* 027EF6D0 */ Gambit_fn_027EF6B4(cpu);
|
|
/* 027EF6D4 */ _t2 = cpu->r[3] + 0x00000018u;
|
|
/* 027EF6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EF6D8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF6DC */ _t3 = cpu->r[11] + 0x00000030u;
|
|
/* 027EF6DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EF6E0 */ _t4 = cpu->r[12] + cpu->r[0];
|
|
/* 027EF6E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EF6E4 */ Gambit_fn_026EBC14(cpu);
|
|
/* 027EF6E8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF6E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EF6EC */ cpu->lr = cpu->r[0];
|
|
/* 027EF6F0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EF6F4 */ return;
|
|
}
|
|
|
|
// fn_027EF6CC @ 0x27ef6cc
|
|
void Gambit_fn_027EF6CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EF6CC: ; // 0x27ef6cc
|
|
/* 027EF6CC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EF6CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF6CC */ cpu->r[1] = _t0;
|
|
/* 027EF6D0 */ Gambit_fn_027EF6B4(cpu);
|
|
/* 027EF6D4 */ _t1 = cpu->r[3] + 0x00000018u;
|
|
/* 027EF6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EF6D8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF6DC */ _t2 = cpu->r[11] + 0x00000030u;
|
|
/* 027EF6DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EF6E0 */ _t3 = cpu->r[12] + cpu->r[0];
|
|
/* 027EF6E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EF6E4 */ Gambit_fn_026EBC14(cpu);
|
|
/* 027EF6E8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF6E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EF6EC */ cpu->lr = cpu->r[0];
|
|
/* 027EF6F0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EF6F4 */ return;
|
|
}
|
|
|
|
// fn_027EF6F8 @ 0x27ef6f8
|
|
void Gambit_fn_027EF6F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EF6F8: ; // 0x27ef6f8
|
|
/* 027EF6F8 */ _t0 = cpu->r[3] + 0x00000028u;
|
|
/* 027EF6F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EF6FC */ _t1 = cpu->r[12] + 0x00000010u;
|
|
/* 027EF6FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EF700 */ return;
|
|
}
|
|
|
|
// fn_027EF704 @ 0x27ef704
|
|
void Gambit_fn_027EF704(CPUState* 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_027EF704: ; // 0x27ef704
|
|
/* 027EF704 */ cpu->r[0] = cpu->lr;
|
|
/* 027EF708 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF708 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF708 */ cpu->r[1] = _t0;
|
|
/* 027EF70C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF70C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EF710 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF710 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 027EF714 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EF718 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF718 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027EF71C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF71C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EF720 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EF724 */ _t5 = cpu->r[3] + 0x00000018u;
|
|
/* 027EF724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EF728 */ cpu->r[9] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF72C */ cpu->r[31] = cpu->r[4];
|
|
/* 027EF730 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF734 */ _t6 = cpu->r[9] + cpu->r[11];
|
|
/* 027EF734 */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 027EF738 */ Gambit_fn_027EF6C0(cpu);
|
|
/* 027EF73C */ cpu->r[29] = cpu->r[3];
|
|
/* 027EF73C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027EF740 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EF744 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF744 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027EF744 */ if (_t8) goto L_027EF748; else goto L_027EF778;
|
|
L_027EF748: ; // 0x27ef748
|
|
/* 027EF748 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF74C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EF750 */ cpu->r[5] = 0x00000000u;
|
|
/* 027EF754 */ Gambit_fn_026E9DF8(cpu);
|
|
/* 027EF758 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF758 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EF75C */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF75C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EF760 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF760 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EF764 */ cpu->lr = cpu->r[0];
|
|
/* 027EF768 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF768 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EF76C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF770 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 027EF774 */ return;
|
|
L_027EF778: ; // 0x27ef778
|
|
/* 027EF778 */ _t13 = cpu->r[29] + 0x00000024u;
|
|
/* 027EF778 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EF77C */ _t14 = cpu->r[8] + 0x0000003Cu;
|
|
/* 027EF77C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027EF780 */ cpu->ctr = cpu->r[10];
|
|
/* 027EF784 */ cpu->r[3] = cpu->r[29];
|
|
/* 027EF788 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF78C */ cpu->r[5] = cpu->r[3];
|
|
/* 027EF790 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF794 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EF798 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EF79C */ Gambit_fn_026E9DF8(cpu);
|
|
/* 027EF7A0 */ _t15 = cpu->r[29] + 0x00000024u;
|
|
/* 027EF7A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EF7A4 */ _t16 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027EF7A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EF7A8 */ cpu->ctr = cpu->r[0];
|
|
/* 027EF7AC */ cpu->r[3] = cpu->r[29];
|
|
/* 027EF7B0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EF7B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF7B8 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF7B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EF7BC */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF7BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF7C0 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF7C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027EF7C4 */ cpu->lr = cpu->r[0];
|
|
/* 027EF7C8 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF7C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EF7CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF7D0 */ return;
|
|
}
|
|
|
|
// fn_027EF708 @ 0x27ef708
|
|
void Gambit_fn_027EF708(CPUState* 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_027EF708: ; // 0x27ef708
|
|
/* 027EF708 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF708 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF708 */ cpu->r[1] = _t0;
|
|
/* 027EF70C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF70C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EF710 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF710 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 027EF714 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EF718 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF718 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027EF71C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF71C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EF720 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EF724 */ _t5 = cpu->r[3] + 0x00000018u;
|
|
/* 027EF724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EF728 */ cpu->r[9] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EF72C */ cpu->r[31] = cpu->r[4];
|
|
/* 027EF730 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF734 */ _t6 = cpu->r[9] + cpu->r[11];
|
|
/* 027EF734 */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 027EF738 */ Gambit_fn_027EF6C0(cpu);
|
|
/* 027EF73C */ cpu->r[29] = cpu->r[3];
|
|
/* 027EF73C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027EF740 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EF744 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF744 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027EF744 */ if (_t8) goto L_027EF748; else goto L_027EF778;
|
|
L_027EF748: ; // 0x27ef748
|
|
/* 027EF748 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF74C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EF750 */ cpu->r[5] = 0x00000000u;
|
|
/* 027EF754 */ Gambit_fn_026E9DF8(cpu);
|
|
/* 027EF758 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF758 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EF75C */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF75C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EF760 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF760 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EF764 */ cpu->lr = cpu->r[0];
|
|
/* 027EF768 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF768 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EF76C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF770 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 027EF774 */ return;
|
|
L_027EF778: ; // 0x27ef778
|
|
/* 027EF778 */ _t13 = cpu->r[29] + 0x00000024u;
|
|
/* 027EF778 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EF77C */ _t14 = cpu->r[8] + 0x0000003Cu;
|
|
/* 027EF77C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027EF780 */ cpu->ctr = cpu->r[10];
|
|
/* 027EF784 */ cpu->r[3] = cpu->r[29];
|
|
/* 027EF788 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF78C */ cpu->r[5] = cpu->r[3];
|
|
/* 027EF790 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF794 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EF798 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EF79C */ Gambit_fn_026E9DF8(cpu);
|
|
/* 027EF7A0 */ _t15 = cpu->r[29] + 0x00000024u;
|
|
/* 027EF7A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EF7A4 */ _t16 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027EF7A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EF7A8 */ cpu->ctr = cpu->r[0];
|
|
/* 027EF7AC */ cpu->r[3] = cpu->r[29];
|
|
/* 027EF7B0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EF7B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF7B8 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF7B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EF7BC */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF7BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF7C0 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF7C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027EF7C4 */ cpu->lr = cpu->r[0];
|
|
/* 027EF7C8 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF7C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EF7CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF7D0 */ return;
|
|
}
|
|
|
|
// fn_027EF7D4 @ 0x27ef7d4
|
|
void Gambit_fn_027EF7D4(CPUState* cpu) {
|
|
uint32_t _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_027EF7D4: ; // 0x27ef7d4
|
|
/* 027EF7D4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027EF7D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF7D4 */ cpu->r[1] = _t0;
|
|
/* 027EF7D8 */ /* nop */
|
|
/* 027EF7DC */ cpu->r[0] = cpu->lr;
|
|
/* 027EF7E0 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EF7E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027EF7E4 */ cpu->r[29] = cpu->r[3];
|
|
/* 027EF7E8 */ cpu->r[31] = cpu->r[5];
|
|
/* 027EF7EC */ _t2 = cpu->r[29] + 0x00000030u;
|
|
/* 027EF7EC */ cpu->r[25] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EF7F0 */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 027EF7F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EF7F4 */ cpu->r[3] = cpu->r[25];
|
|
/* 027EF7F8 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 027EF7F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EF7FC */ cpu->r[30] = cpu->r[4];
|
|
/* 027EF800 */ Gambit_fn_026EBBD8(cpu);
|
|
/* 027EF804 */ _t5 = cpu->r[31] + 0x00000008u;
|
|
/* 027EF804 */ cpu->r[27] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EF808 */ _t6 = cpu->r[27] + 0x00000000u;
|
|
/* 027EF808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EF80C */ cpu->r[28] = 0x00000000u;
|
|
/* 027EF810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[0]);
|
|
/* 027EF814 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EF814 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027EF814 */ if (_t8) goto L_027EF818; else goto L_027EF86C;
|
|
L_027EF818: ; // 0x27ef818
|
|
/* 027EF818 */ cpu->r[26] = 0x00000000u;
|
|
L_027EF81C: ; // 0x27ef81c
|
|
/* 027EF81C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 027EF820 */ cpu->r[9] = 0x00000000u;
|
|
/* 027EF824 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EF824 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027EF824 */ if (_t10) goto L_027EF828; else goto L_027EF830;
|
|
L_027EF828: ; // 0x27ef828
|
|
/* 027EF828 */ _t11 = cpu->r[27] + 0x00000008u;
|
|
/* 027EF828 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EF82C */ _t12 = cpu->r[11] + cpu->r[26];
|
|
/* 027EF82C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
L_027EF830: ; // 0x27ef830
|
|
/* 027EF830 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 027EF834 */ cpu->r[10] = 0x00000000u;
|
|
/* 027EF838 */ _t13 = cpu->r[9] + 0x00000000u;
|
|
/* 027EF838 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EF83C */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EF83C */ _t15 = _t14 & 0x00000001u;
|
|
/* 027EF83C */ if (_t15) goto L_027EF840; else goto L_027EF848;
|
|
L_027EF840: ; // 0x27ef840
|
|
/* 027EF840 */ _t16 = cpu->r[27] + 0x00000008u;
|
|
/* 027EF840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EF844 */ _t17 = cpu->r[12] + cpu->r[26];
|
|
/* 027EF844 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
L_027EF848: ; // 0x27ef848
|
|
/* 027EF848 */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 027EF848 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF84C */ cpu->r[3] = cpu->r[25];
|
|
/* 027EF850 */ cpu->r[4] = cpu->r[30];
|
|
/* 027EF854 */ Gambit_fn_026EBBD8(cpu);
|
|
/* 027EF858 */ _t19 = cpu->r[27] + 0x00000000u;
|
|
/* 027EF858 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027EF85C */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 027EF860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[0]);
|
|
/* 027EF864 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 027EF868 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EF868 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027EF868 */ if (_t21) goto L_027EF81C; else goto L_027EF86C;
|
|
L_027EF86C: ; // 0x27ef86c
|
|
/* 027EF86C */ _t22 = cpu->r[31] + 0x00000000u;
|
|
/* 027EF86C */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027EF870 */ cpu->r[3] = cpu->r[29];
|
|
/* 027EF874 */ cpu->r[4] = cpu->r[30];
|
|
/* 027EF878 */ Gambit_fn_027EF704(cpu);
|
|
/* 027EF87C */ /* nop */
|
|
/* 027EF880 */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027EF880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EF884 */ cpu->lr = cpu->r[0];
|
|
/* 027EF888 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027EF88C */ return;
|
|
}
|
|
|
|
// fn_027EF890 @ 0x27ef890
|
|
void Gambit_fn_027EF890(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EF890: ; // 0x27ef890
|
|
/* 027EF890 */ cpu->r[0] = cpu->lr;
|
|
/* 027EF894 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EF894 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EF898 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EF898 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EF898 */ cpu->r[1] = _t1;
|
|
/* 027EF89C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EF8A0 */ Gambit_fn_026E9DDC(cpu);
|
|
/* 027EF8A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EF8A8 */ cpu->lr = cpu->r[0];
|
|
/* 027EF8AC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EF8B0 */ return;
|
|
}
|
|
|
|
// fn_027EF898 @ 0x27ef898
|
|
void Gambit_fn_027EF898(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EF898: ; // 0x27ef898
|
|
/* 027EF898 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EF898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF898 */ cpu->r[1] = _t0;
|
|
/* 027EF89C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EF8A0 */ Gambit_fn_026E9DDC(cpu);
|
|
/* 027EF8A4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EF8A8 */ cpu->lr = cpu->r[0];
|
|
/* 027EF8AC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EF8B0 */ return;
|
|
}
|
|
|
|
// fn_027EF8B4 @ 0x27ef8b4
|
|
void Gambit_fn_027EF8B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_027EF8B4: ; // 0x27ef8b4
|
|
/* 027EF8B4 */ cpu->r[0] = cpu->lr;
|
|
/* 027EF8B8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF8B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF8B8 */ cpu->r[1] = _t0;
|
|
/* 027EF8BC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF8BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EF8C0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF8C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027EF8C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EF8C8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF8C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027EF8CC */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF8CC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027EF8D0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF8D0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EF8D4 */ cpu->r[29] = cpu->r[5];
|
|
/* 027EF8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027EF8D8 */ cpu->r[28] = cpu->r[4];
|
|
/* 027EF8DC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF8DC */ _t7 = _t6 & 0x00000001u;
|
|
/* 027EF8DC */ if (_t7) goto L_027EF8F4; else goto L_027EF8E0;
|
|
L_027EF8E0: ; // 0x27ef8e0
|
|
/* 027EF8E0 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 027EF8E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EF8E4 */ _t9 = cpu->r[28] + 0x00000004u;
|
|
/* 027EF8E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EF8E8 */ Gambit_fn_027EF890(cpu);
|
|
/* 027EF8EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF8F0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF8F0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027EF8F0 */ if (_t11) goto L_027EF8F4; else goto L_027EF934;
|
|
L_027EF8F4: ; // 0x27ef8f4
|
|
/* 027EF8F4 */ _t12 = cpu->r[31] + 0x00000024u;
|
|
/* 027EF8F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EF8F8 */ _t13 = cpu->r[10] + 0x00000034u;
|
|
/* 027EF8F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EF8FC */ _t14 = cpu->r[28] + 0x00000004u;
|
|
/* 027EF8FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027EF900 */ cpu->ctr = cpu->r[0];
|
|
/* 027EF904 */ _t15 = cpu->r[28] + 0x00000050u;
|
|
/* 027EF904 */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EF908 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EF90C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF910 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EF910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EF914 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF914 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027EF914 */ if (_t17) goto L_027EF934; else goto L_027EF918;
|
|
L_027EF918: ; // 0x27ef918
|
|
/* 027EF918 */ _t18 = cpu->r[30] + 0x00000024u;
|
|
/* 027EF918 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF91C */ _t19 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027EF91C */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027EF920 */ cpu->ctr = cpu->r[7];
|
|
/* 027EF924 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF928 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF92C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF930 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF930 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027EF930 */ if (_t21) goto L_027EF934; else goto L_027EF958;
|
|
L_027EF934: ; // 0x27ef934
|
|
/* 027EF934 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF934 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027EF938 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF938 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EF93C */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF93C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EF940 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EF944 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF944 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EF948 */ cpu->lr = cpu->r[0];
|
|
/* 027EF94C */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF94C */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EF950 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF954 */ return;
|
|
L_027EF958: ; // 0x27ef958
|
|
/* 027EF958 */ _t27 = cpu->r[30] + 0x00000024u;
|
|
/* 027EF958 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EF95C */ _t28 = cpu->r[8] + 0x00000024u;
|
|
/* 027EF95C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027EF960 */ cpu->ctr = cpu->r[0];
|
|
/* 027EF964 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF968 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF96C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF970 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF970 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027EF970 */ if (_t30) goto L_027EF9A4; else goto L_027EF974;
|
|
L_027EF974: ; // 0x27ef974
|
|
/* 027EF974 */ cpu->r[5] = cpu->r[29];
|
|
/* 027EF978 */ cpu->r[4] = cpu->r[28];
|
|
/* 027EF97C */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF980 */ Gambit_fn_027EF8B4(cpu);
|
|
/* 027EF984 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF984 */ cpu->r[28] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027EF988 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF988 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027EF98C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF98C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027EF990 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF990 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027EF994 */ cpu->lr = cpu->r[0];
|
|
/* 027EF998 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF998 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027EF99C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF9A0 */ return;
|
|
L_027EF9A4: ; // 0x27ef9a4
|
|
/* 027EF9A4 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF9A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027EF9A8 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF9A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027EF9AC */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF9AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027EF9B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF9B4 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF9B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027EF9B8 */ cpu->lr = cpu->r[0];
|
|
/* 027EF9BC */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF9BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027EF9C0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF9C4 */ return;
|
|
}
|
|
|
|
// fn_027EF8B8 @ 0x27ef8b8
|
|
void Gambit_fn_027EF8B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_027EF8B8: ; // 0x27ef8b8
|
|
/* 027EF8B8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EF8B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF8B8 */ cpu->r[1] = _t0;
|
|
/* 027EF8BC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF8BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EF8C0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF8C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027EF8C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EF8C8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF8C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027EF8CC */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF8CC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027EF8D0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF8D0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027EF8D4 */ cpu->r[29] = cpu->r[5];
|
|
/* 027EF8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027EF8D8 */ cpu->r[28] = cpu->r[4];
|
|
/* 027EF8DC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF8DC */ _t7 = _t6 & 0x00000001u;
|
|
/* 027EF8DC */ if (_t7) goto L_027EF8F4; else goto L_027EF8E0;
|
|
L_027EF8E0: ; // 0x27ef8e0
|
|
/* 027EF8E0 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 027EF8E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EF8E4 */ _t9 = cpu->r[28] + 0x00000004u;
|
|
/* 027EF8E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EF8E8 */ Gambit_fn_027EF890(cpu);
|
|
/* 027EF8EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF8F0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF8F0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027EF8F0 */ if (_t11) goto L_027EF8F4; else goto L_027EF934;
|
|
L_027EF8F4: ; // 0x27ef8f4
|
|
/* 027EF8F4 */ _t12 = cpu->r[31] + 0x00000024u;
|
|
/* 027EF8F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EF8F8 */ _t13 = cpu->r[10] + 0x00000034u;
|
|
/* 027EF8F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027EF8FC */ _t14 = cpu->r[28] + 0x00000004u;
|
|
/* 027EF8FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027EF900 */ cpu->ctr = cpu->r[0];
|
|
/* 027EF904 */ _t15 = cpu->r[28] + 0x00000050u;
|
|
/* 027EF904 */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EF908 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EF90C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF910 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EF910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EF914 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF914 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027EF914 */ if (_t17) goto L_027EF934; else goto L_027EF918;
|
|
L_027EF918: ; // 0x27ef918
|
|
/* 027EF918 */ _t18 = cpu->r[30] + 0x00000024u;
|
|
/* 027EF918 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EF91C */ _t19 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027EF91C */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027EF920 */ cpu->ctr = cpu->r[7];
|
|
/* 027EF924 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF928 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF92C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF930 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF930 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027EF930 */ if (_t21) goto L_027EF934; else goto L_027EF958;
|
|
L_027EF934: ; // 0x27ef934
|
|
/* 027EF934 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF934 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027EF938 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF938 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EF93C */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF93C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EF940 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EF944 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF944 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EF948 */ cpu->lr = cpu->r[0];
|
|
/* 027EF94C */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF94C */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EF950 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF954 */ return;
|
|
L_027EF958: ; // 0x27ef958
|
|
/* 027EF958 */ _t27 = cpu->r[30] + 0x00000024u;
|
|
/* 027EF958 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EF95C */ _t28 = cpu->r[8] + 0x00000024u;
|
|
/* 027EF95C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027EF960 */ cpu->ctr = cpu->r[0];
|
|
/* 027EF964 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF968 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EF96C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EF970 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EF970 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027EF970 */ if (_t30) goto L_027EF9A4; else goto L_027EF974;
|
|
L_027EF974: ; // 0x27ef974
|
|
/* 027EF974 */ cpu->r[5] = cpu->r[29];
|
|
/* 027EF978 */ cpu->r[4] = cpu->r[28];
|
|
/* 027EF97C */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF980 */ Gambit_fn_027EF8B4(cpu);
|
|
/* 027EF984 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF984 */ cpu->r[28] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027EF988 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF988 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027EF98C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF98C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027EF990 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF990 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027EF994 */ cpu->lr = cpu->r[0];
|
|
/* 027EF998 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF998 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027EF99C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF9A0 */ return;
|
|
L_027EF9A4: ; // 0x27ef9a4
|
|
/* 027EF9A4 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 027EF9A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027EF9A8 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF9A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027EF9AC */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EF9AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027EF9B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EF9B4 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 027EF9B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027EF9B8 */ cpu->lr = cpu->r[0];
|
|
/* 027EF9BC */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF9BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027EF9C0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EF9C4 */ return;
|
|
}
|
|
|
|
// fn_027EF9C8 @ 0x27ef9c8
|
|
void Gambit_fn_027EF9C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027EF9C8: ; // 0x27ef9c8
|
|
/* 027EF9C8 */ cpu->r[0] = cpu->lr;
|
|
/* 027EF9CC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EF9CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF9CC */ cpu->r[1] = _t0;
|
|
/* 027EF9D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF9D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EF9D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EF9D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF9D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EF9DC */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 027EF9DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EF9E0 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 027EF9E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EF9E4 */ Gambit_fn_027EF6C0(cpu);
|
|
/* 027EF9E8 */ cpu->r[5] = 0x00000001u;
|
|
/* 027EF9EC */ cpu->r[4] = cpu->r[31];
|
|
/* 027EF9F0 */ Gambit_fn_027EF8B4(cpu);
|
|
/* 027EF9F4 */ _t5 = cpu->r[3] + 0x00000024u;
|
|
/* 027EF9F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EF9F8 */ _t6 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027EF9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EF9FC */ cpu->ctr = cpu->r[0];
|
|
/* 027EFA00 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 027EFA00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFA04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EFA08 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFA0C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFA10 */ cpu->lr = cpu->r[0];
|
|
/* 027EFA14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFA18 */ return;
|
|
}
|
|
|
|
// fn_027EF9CC @ 0x27ef9cc
|
|
void Gambit_fn_027EF9CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027EF9CC: ; // 0x27ef9cc
|
|
/* 027EF9CC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EF9CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EF9CC */ cpu->r[1] = _t0;
|
|
/* 027EF9D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EF9D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EF9D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EF9D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EF9D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EF9DC */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 027EF9DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EF9E0 */ _t4 = cpu->r[31] + 0x00000000u;
|
|
/* 027EF9E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EF9E4 */ Gambit_fn_027EF6C0(cpu);
|
|
/* 027EF9E8 */ cpu->r[5] = 0x00000001u;
|
|
/* 027EF9EC */ cpu->r[4] = cpu->r[31];
|
|
/* 027EF9F0 */ Gambit_fn_027EF8B4(cpu);
|
|
/* 027EF9F4 */ _t5 = cpu->r[3] + 0x00000024u;
|
|
/* 027EF9F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EF9F8 */ _t6 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027EF9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EF9FC */ cpu->ctr = cpu->r[0];
|
|
/* 027EFA00 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 027EFA00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFA04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EFA08 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFA0C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFA10 */ cpu->lr = cpu->r[0];
|
|
/* 027EFA14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFA18 */ return;
|
|
}
|
|
|
|
// fn_027EFA1C @ 0x27efa1c
|
|
void Gambit_fn_027EFA1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_027EFA1C: ; // 0x27efa1c
|
|
/* 027EFA1C */ cpu->r[0] = cpu->lr;
|
|
/* 027EFA20 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFA20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFA20 */ cpu->r[1] = _t0;
|
|
/* 027EFA24 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA24 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EFA28 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EFA2C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA2C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EFA30 */ Gambit_fn_027EF6C0(cpu);
|
|
/* 027EFA34 */ _t3 = cpu->r[3] + 0x00000024u;
|
|
/* 027EFA34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EFA38 */ _t4 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027EFA38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EFA3C */ cpu->ctr = cpu->r[0];
|
|
/* 027EFA40 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EFA44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EFA48 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EFA4C */ cpu->lr = cpu->r[0];
|
|
/* 027EFA50 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFA54 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFA58 */ return;
|
|
}
|
|
|
|
// fn_027EFA20 @ 0x27efa20
|
|
void Gambit_fn_027EFA20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_027EFA20: ; // 0x27efa20
|
|
/* 027EFA20 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFA20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFA20 */ cpu->r[1] = _t0;
|
|
/* 027EFA24 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA24 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EFA28 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EFA2C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA2C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EFA30 */ Gambit_fn_027EF6C0(cpu);
|
|
/* 027EFA34 */ _t3 = cpu->r[3] + 0x00000024u;
|
|
/* 027EFA34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EFA38 */ _t4 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027EFA38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EFA3C */ cpu->ctr = cpu->r[0];
|
|
/* 027EFA40 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EFA44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EFA48 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EFA4C */ cpu->lr = cpu->r[0];
|
|
/* 027EFA50 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFA54 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFA58 */ return;
|
|
}
|
|
|
|
// fn_027EFA5C @ 0x27efa5c
|
|
void Gambit_fn_027EFA5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EFA5C: ; // 0x27efa5c
|
|
/* 027EFA5C */ cpu->r[0] = cpu->lr;
|
|
/* 027EFA60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFA60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFA60 */ cpu->r[1] = _t0;
|
|
/* 027EFA64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EFA68 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EFA6C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA6C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EFA70 */ cpu->r[0] = cpu->r[3];
|
|
/* 027EFA74 */ Gambit_fn_027EF6B4(cpu);
|
|
/* 027EFA78 */ _t3 = cpu->r[3] + 0x00000018u;
|
|
/* 027EFA78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EFA7C */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EFA80 */ _t4 = cpu->r[10] + cpu->r[11];
|
|
/* 027EFA80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EFA84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027EFA88 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EFA88 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EFA88 */ if (_t6) goto L_027EFA8C; else goto L_027EFAA4;
|
|
L_027EFA8C: ; // 0x27efa8c
|
|
/* 027EFA8C */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFA90 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFA94 */ cpu->lr = cpu->r[0];
|
|
/* 027EFA98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFA9C */ cpu->r[3] = 0x00000000u;
|
|
/* 027EFAA0 */ return;
|
|
L_027EFAA4: ; // 0x27efaa4
|
|
/* 027EFAA4 */ cpu->r[3] = cpu->r[0];
|
|
/* 027EFAA8 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EFAAC */ Gambit_fn_027EF6C0(cpu);
|
|
/* 027EFAB0 */ _t9 = cpu->r[3] + 0x00000024u;
|
|
/* 027EFAB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFAB4 */ _t10 = cpu->r[8] + 0x0000003Cu;
|
|
/* 027EFAB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EFAB8 */ cpu->ctr = cpu->r[9];
|
|
/* 027EFABC */ cpu->r[4] = cpu->r[31];
|
|
/* 027EFAC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EFAC4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFAC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EFAC8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFAC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EFACC */ cpu->lr = cpu->r[0];
|
|
/* 027EFAD0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFAD4 */ return;
|
|
}
|
|
|
|
// fn_027EFA60 @ 0x27efa60
|
|
void Gambit_fn_027EFA60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EFA60: ; // 0x27efa60
|
|
/* 027EFA60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFA60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFA60 */ cpu->r[1] = _t0;
|
|
/* 027EFA64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027EFA68 */ cpu->r[31] = cpu->r[4];
|
|
/* 027EFA6C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA6C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027EFA70 */ cpu->r[0] = cpu->r[3];
|
|
/* 027EFA74 */ Gambit_fn_027EF6B4(cpu);
|
|
/* 027EFA78 */ _t3 = cpu->r[3] + 0x00000018u;
|
|
/* 027EFA78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EFA7C */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EFA80 */ _t4 = cpu->r[10] + cpu->r[11];
|
|
/* 027EFA80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EFA84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027EFA88 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027EFA88 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EFA88 */ if (_t6) goto L_027EFA8C; else goto L_027EFAA4;
|
|
L_027EFA8C: ; // 0x27efa8c
|
|
/* 027EFA8C */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFA8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFA90 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFA90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFA94 */ cpu->lr = cpu->r[0];
|
|
/* 027EFA98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFA9C */ cpu->r[3] = 0x00000000u;
|
|
/* 027EFAA0 */ return;
|
|
L_027EFAA4: ; // 0x27efaa4
|
|
/* 027EFAA4 */ cpu->r[3] = cpu->r[0];
|
|
/* 027EFAA8 */ cpu->r[4] = cpu->r[31];
|
|
/* 027EFAAC */ Gambit_fn_027EF6C0(cpu);
|
|
/* 027EFAB0 */ _t9 = cpu->r[3] + 0x00000024u;
|
|
/* 027EFAB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFAB4 */ _t10 = cpu->r[8] + 0x0000003Cu;
|
|
/* 027EFAB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EFAB8 */ cpu->ctr = cpu->r[9];
|
|
/* 027EFABC */ cpu->r[4] = cpu->r[31];
|
|
/* 027EFAC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EFAC4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFAC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EFAC8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFAC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EFACC */ cpu->lr = cpu->r[0];
|
|
/* 027EFAD0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFAD4 */ return;
|
|
}
|
|
|
|
// fn_027EFAD8 @ 0x27efad8
|
|
void Gambit_fn_027EFAD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EFAD8: ; // 0x27efad8
|
|
/* 027EFAD8 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFADC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFADC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFAE0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFAE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFAE0 */ cpu->r[1] = _t1;
|
|
/* 027EFAE4 */ Gambit_fn_027EF6B4(cpu);
|
|
/* 027EFAE8 */ _t2 = cpu->r[3] + 0x00000018u;
|
|
/* 027EFAE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFAEC */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EFAF0 */ _t3 = cpu->r[12] + cpu->r[0];
|
|
/* 027EFAF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EFAF4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EFAF8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFAF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EFAFC */ cpu->lr = cpu->r[0];
|
|
/* 027EFB00 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFB04 */ return;
|
|
}
|
|
|
|
// fn_027EFAE0 @ 0x27efae0
|
|
void Gambit_fn_027EFAE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EFAE0: ; // 0x27efae0
|
|
/* 027EFAE0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFAE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFAE0 */ cpu->r[1] = _t0;
|
|
/* 027EFAE4 */ Gambit_fn_027EF6B4(cpu);
|
|
/* 027EFAE8 */ _t1 = cpu->r[3] + 0x00000018u;
|
|
/* 027EFAE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFAEC */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027EFAF0 */ _t2 = cpu->r[12] + cpu->r[0];
|
|
/* 027EFAF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFAF4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027EFAF8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFAF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027EFAFC */ cpu->lr = cpu->r[0];
|
|
/* 027EFB00 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFB04 */ return;
|
|
}
|
|
|
|
// fn_027EFB08 @ 0x27efb08
|
|
void Gambit_fn_027EFB08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_027EFB08: ; // 0x27efb08
|
|
/* 027EFB08 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFB0C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EFB0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFB0C */ cpu->r[1] = _t0;
|
|
/* 027EFB10 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFB10 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027EFB14 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFB14 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EFB18 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFB18 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027EFB1C */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFB20 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFB20 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EFB24 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027EFB24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EFB28 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 027EFB28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFB2C */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFB30 */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFB34 */ Gambit_fn_027EFAD8(cpu);
|
|
/* 027EFB38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EFB3C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB3C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027EFB3C */ if (_t8) goto L_027EFB40; else goto L_027EFBC0;
|
|
L_027EFB40: ; // 0x27efb40
|
|
/* 027EFB40 */ _t9 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027EFB40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFB44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 027EFB48 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB48 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027EFB48 */ if (_t11) goto L_027EFBC0; else goto L_027EFB4C;
|
|
L_027EFB4C: ; // 0x27efb4c
|
|
/* 027EFB4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 027EFB50 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB50 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027EFB50 */ if (_t13) goto L_027EFB54; else goto L_027EFB78;
|
|
L_027EFB54: ; // 0x27efb54
|
|
/* 027EFB54 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFB58 */ Gambit_fn_027EF9C8(cpu);
|
|
/* 027EFB5C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFB5C */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027EFB60 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFB60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EFB64 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFB64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EFB68 */ cpu->lr = cpu->r[0];
|
|
/* 027EFB6C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFB6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EFB70 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFB74 */ return;
|
|
L_027EFB78: ; // 0x27efb78
|
|
/* 027EFB78 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFB7C */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFB80 */ Gambit_fn_027EF890(cpu);
|
|
/* 027EFB84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EFB88 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB88 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027EFB88 */ if (_t19) goto L_027EFB8C; else goto L_027EFBC0;
|
|
L_027EFB8C: ; // 0x27efb8c
|
|
/* 027EFB8C */ _t20 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027EFB8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EFB90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EFB94 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB94 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027EFB94 */ if (_t22) goto L_027EFB98; else goto L_027EFBC0;
|
|
L_027EFB98: ; // 0x27efb98
|
|
/* 027EFB98 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFB9C */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFBA0 */ Gambit_fn_027EFA1C(cpu);
|
|
/* 027EFBA4 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFBA4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EFBA8 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFBA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EFBAC */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFBAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EFBB0 */ cpu->lr = cpu->r[0];
|
|
/* 027EFBB4 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFBB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EFBB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFBBC */ return;
|
|
L_027EFBC0: ; // 0x27efbc0
|
|
/* 027EFBC0 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFBC0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EFBC4 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFBC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027EFBC8 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFBC8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EFBCC */ cpu->lr = cpu->r[0];
|
|
/* 027EFBD0 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFBD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027EFBD4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFBD8 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 027EFBDC */ return;
|
|
}
|
|
|
|
// fn_027EFB0C @ 0x27efb0c
|
|
void Gambit_fn_027EFB0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_027EFB0C: ; // 0x27efb0c
|
|
/* 027EFB0C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EFB0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFB0C */ cpu->r[1] = _t0;
|
|
/* 027EFB10 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFB10 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027EFB14 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFB14 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EFB18 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFB18 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027EFB1C */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFB20 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFB20 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EFB24 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027EFB24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EFB28 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 027EFB28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFB2C */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFB30 */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFB34 */ Gambit_fn_027EFAD8(cpu);
|
|
/* 027EFB38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EFB3C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB3C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027EFB3C */ if (_t8) goto L_027EFB40; else goto L_027EFBC0;
|
|
L_027EFB40: ; // 0x27efb40
|
|
/* 027EFB40 */ _t9 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027EFB40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFB44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 027EFB48 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB48 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027EFB48 */ if (_t11) goto L_027EFBC0; else goto L_027EFB4C;
|
|
L_027EFB4C: ; // 0x27efb4c
|
|
/* 027EFB4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 027EFB50 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB50 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027EFB50 */ if (_t13) goto L_027EFB54; else goto L_027EFB78;
|
|
L_027EFB54: ; // 0x27efb54
|
|
/* 027EFB54 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFB58 */ Gambit_fn_027EF9C8(cpu);
|
|
/* 027EFB5C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFB5C */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027EFB60 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFB60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027EFB64 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFB64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027EFB68 */ cpu->lr = cpu->r[0];
|
|
/* 027EFB6C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFB6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027EFB70 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFB74 */ return;
|
|
L_027EFB78: ; // 0x27efb78
|
|
/* 027EFB78 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFB7C */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFB80 */ Gambit_fn_027EF890(cpu);
|
|
/* 027EFB84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027EFB88 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB88 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027EFB88 */ if (_t19) goto L_027EFB8C; else goto L_027EFBC0;
|
|
L_027EFB8C: ; // 0x27efb8c
|
|
/* 027EFB8C */ _t20 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027EFB8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027EFB90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027EFB94 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFB94 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027EFB94 */ if (_t22) goto L_027EFB98; else goto L_027EFBC0;
|
|
L_027EFB98: ; // 0x27efb98
|
|
/* 027EFB98 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFB9C */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFBA0 */ Gambit_fn_027EFA1C(cpu);
|
|
/* 027EFBA4 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFBA4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027EFBA8 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFBA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027EFBAC */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFBAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027EFBB0 */ cpu->lr = cpu->r[0];
|
|
/* 027EFBB4 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFBB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027EFBB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFBBC */ return;
|
|
L_027EFBC0: ; // 0x27efbc0
|
|
/* 027EFBC0 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFBC0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027EFBC4 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFBC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027EFBC8 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFBC8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027EFBCC */ cpu->lr = cpu->r[0];
|
|
/* 027EFBD0 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFBD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027EFBD4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFBD8 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 027EFBDC */ return;
|
|
}
|
|
|
|
// fn_027EFBE0 @ 0x27efbe0
|
|
void Gambit_fn_027EFBE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFBE0: ; // 0x27efbe0
|
|
/* 027EFBE0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027EFBE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EFBE4 */ _t1 = cpu->r[12] + 0x00000028u;
|
|
/* 027EFBE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFBE8 */ _t2 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027EFBE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[3]);
|
|
/* 027EFBEC */ return;
|
|
}
|
|
|
|
// fn_027EFBF0 @ 0x27efbf0
|
|
void Gambit_fn_027EFBF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFBF0: ; // 0x27efbf0
|
|
/* 027EFBF0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027EFBF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EFBF4 */ _t1 = cpu->r[12] + 0x00000028u;
|
|
/* 027EFBF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFBF8 */ _t2 = cpu->r[12] + 0x00000010u;
|
|
/* 027EFBF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[3]);
|
|
/* 027EFBFC */ return;
|
|
}
|
|
|
|
// fn_027EFC00 @ 0x27efc00
|
|
void Gambit_fn_027EFC00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFC00: ; // 0x27efc00
|
|
/* 027EFC00 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 027EFC00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EFC04 */ _t1 = cpu->r[12] + 0x00000028u;
|
|
/* 027EFC04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFC08 */ _t2 = cpu->r[12] + 0x00000018u;
|
|
/* 027EFC08 */ rbrew_write32(cpu->mem, _t2, cpu->r[3]);
|
|
/* 027EFC0C */ return;
|
|
}
|
|
|
|
// fn_027EFC10 @ 0x27efc10
|
|
void Gambit_fn_027EFC10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027EFC10: ; // 0x27efc10
|
|
/* 027EFC10 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFC14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFC14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFC14 */ cpu->r[1] = _t0;
|
|
/* 027EFC18 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFC18 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EFC1C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFC1C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EFC20 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFC24 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFC24 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EFC28 */ _t4 = cpu->r[30] + 0x00000034u;
|
|
/* 027EFC28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EFC2C */ cpu->r[31] = cpu->r[4];
|
|
/* 027EFC30 */ Gambit_fn_026DDCF4(cpu);
|
|
/* 027EFC34 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027EFC34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EFC38 */ _t6 = cpu->r[12] + 0x00000044u;
|
|
/* 027EFC38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFC3C */ cpu->ctr = cpu->r[0];
|
|
/* 027EFC40 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFC44 */ cpu->r[4] = cpu->r[30];
|
|
/* 027EFC48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EFC4C */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFC4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFC50 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFC50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFC54 */ cpu->lr = cpu->r[0];
|
|
/* 027EFC58 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFC58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFC5C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFC60 */ return;
|
|
}
|
|
|
|
// fn_027EFC14 @ 0x27efc14
|
|
void Gambit_fn_027EFC14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027EFC14: ; // 0x27efc14
|
|
/* 027EFC14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFC14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFC14 */ cpu->r[1] = _t0;
|
|
/* 027EFC18 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFC18 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EFC1C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFC1C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EFC20 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFC24 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFC24 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EFC28 */ _t4 = cpu->r[30] + 0x00000034u;
|
|
/* 027EFC28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027EFC2C */ cpu->r[31] = cpu->r[4];
|
|
/* 027EFC30 */ Gambit_fn_026DDCF4(cpu);
|
|
/* 027EFC34 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027EFC34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027EFC38 */ _t6 = cpu->r[12] + 0x00000044u;
|
|
/* 027EFC38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFC3C */ cpu->ctr = cpu->r[0];
|
|
/* 027EFC40 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFC44 */ cpu->r[4] = cpu->r[30];
|
|
/* 027EFC48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027EFC4C */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFC4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFC50 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFC50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFC54 */ cpu->lr = cpu->r[0];
|
|
/* 027EFC58 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFC58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFC5C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFC60 */ return;
|
|
}
|
|
|
|
// fn_027EFC64 @ 0x27efc64
|
|
void Gambit_fn_027EFC64(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_027EFC64: ; // 0x27efc64
|
|
/* 027EFC64 */ _t0 = cpu->r[3] + 0x00000038u;
|
|
/* 027EFC64 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 027EFC68 */ return;
|
|
}
|
|
|
|
// fn_027EFC6C @ 0x27efc6c
|
|
void Gambit_fn_027EFC6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFC6C: ; // 0x27efc6c
|
|
/* 027EFC6C */ _t0 = cpu->r[3] + 0x00000028u;
|
|
/* 027EFC6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EFC70 */ _t1 = cpu->r[12] + 0x00000004u;
|
|
/* 027EFC70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFC74 */ return;
|
|
}
|
|
|
|
// fn_027EFC78 @ 0x27efc78
|
|
void Gambit_fn_027EFC78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_026E81B8: ; // 0x26e81b8
|
|
/* 026E81B8 */ cpu->r[0] = cpu->lr;
|
|
/* 026E81BC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026E81BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026E81BC */ cpu->r[1] = _t0;
|
|
/* 026E81C0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 026E81C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026E81C4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026E81C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026E81C8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026E81C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026E81CC */ _t4 = cpu->r[3] + 0x00001014u;
|
|
/* 026E81CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026E81D0 */ _t5 = cpu->r[3] + 0x0000101Cu;
|
|
/* 026E81D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026E81D4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 026E81D8 */ cpu->r[0] = cpu->r[31] + cpu->r[9];
|
|
/* 026E81DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 026E81E0 */ cpu->r[30] = cpu->r[3] + 0x00001014u;
|
|
/* 026E81E4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E81E4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 026E81E4 */ if (_t7) goto L_026E8218; else goto L_026E81E8;
|
|
L_026E81E8: ; // 0x26e81e8
|
|
/* 026E81E8 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 026E81E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026E81EC */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 026E81EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026E81F0 */ _t10 = cpu->r[12] + 0x00000084u;
|
|
/* 026E81F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026E81F4 */ cpu->ctr = cpu->r[9];
|
|
/* 026E81F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026E81FC */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 026E81FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026E8200 */ _t12 = cpu->r[30] + 0x00000008u;
|
|
/* 026E8200 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026E8204 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 026E8208 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 026E820C */ cpu->r[0] = cpu->r[8] + cpu->r[0];
|
|
/* 026E8210 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 026E8214 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E8214 */ _t14 = _t13 & 0x00000001u;
|
|
/* 026E8214 */ if (_t14) goto L_026E8218; else goto L_026E81E8;
|
|
L_026E8218: ; // 0x26e8218
|
|
/* 026E8218 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 026E8218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026E821C */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 026E821C */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026E8220 */ cpu->lr = cpu->r[0];
|
|
/* 026E8224 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026E8224 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 026E8228 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026E822C */ return;
|
|
L_027EFC78: ; // 0x27efc78
|
|
/* 027EFC78 */ _t18 = cpu->r[3] + 0x0000002Cu;
|
|
/* 027EFC78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EFC7C */ goto L_026E81B8;
|
|
}
|
|
|
|
// fn_027EFC80 @ 0x27efc80
|
|
void Gambit_fn_027EFC80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_026E8230: ; // 0x26e8230
|
|
/* 026E8230 */ cpu->r[0] = cpu->lr;
|
|
/* 026E8234 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026E8234 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026E8234 */ cpu->r[1] = _t0;
|
|
/* 026E8238 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 026E8238 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026E823C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026E823C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026E8240 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026E8240 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026E8244 */ _t4 = cpu->r[3] + 0x00001014u;
|
|
/* 026E8244 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026E8248 */ _t5 = cpu->r[3] + 0x0000101Cu;
|
|
/* 026E8248 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026E824C */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 026E8250 */ cpu->r[0] = cpu->r[31] + cpu->r[9];
|
|
/* 026E8254 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 026E8258 */ cpu->r[30] = cpu->r[3] + 0x00001014u;
|
|
/* 026E825C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E825C */ _t7 = _t6 & 0x00000001u;
|
|
/* 026E825C */ if (_t7) goto L_026E8290; else goto L_026E8260;
|
|
L_026E8260: ; // 0x26e8260
|
|
/* 026E8260 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 026E8260 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026E8264 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 026E8264 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026E8268 */ _t10 = cpu->r[12] + 0x00000094u;
|
|
/* 026E8268 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026E826C */ cpu->ctr = cpu->r[9];
|
|
/* 026E8270 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026E8274 */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 026E8274 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026E8278 */ _t12 = cpu->r[30] + 0x00000008u;
|
|
/* 026E8278 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026E827C */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 026E8280 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 026E8284 */ cpu->r[0] = cpu->r[8] + cpu->r[0];
|
|
/* 026E8288 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 026E828C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E828C */ _t14 = _t13 & 0x00000001u;
|
|
/* 026E828C */ if (_t14) goto L_026E8290; else goto L_026E8260;
|
|
L_026E8290: ; // 0x26e8290
|
|
/* 026E8290 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 026E8290 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026E8294 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 026E8294 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026E8298 */ cpu->lr = cpu->r[0];
|
|
/* 026E829C */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026E829C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 026E82A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026E82A4 */ return;
|
|
L_027EFC80: ; // 0x27efc80
|
|
/* 027EFC80 */ _t18 = cpu->r[3] + 0x0000002Cu;
|
|
/* 027EFC80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027EFC84 */ goto L_026E8230;
|
|
}
|
|
|
|
// fn_027EFC88 @ 0x27efc88
|
|
void Gambit_fn_027EFC88(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFC88: ; // 0x27efc88
|
|
/* 027EFC88 */ _t0 = cpu->r[3] + 0x00000028u;
|
|
/* 027EFC88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EFC8C */ _t1 = cpu->r[12] + 0x00000008u;
|
|
/* 027EFC8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFC90 */ return;
|
|
}
|
|
|
|
// fn_027EFC94 @ 0x27efc94
|
|
void Gambit_fn_027EFC94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EFC94: ; // 0x27efc94
|
|
/* 027EFC94 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFC98 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFC98 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFC9C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFC9C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFC9C */ cpu->r[1] = _t1;
|
|
/* 027EFCA0 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFCA4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFCA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFCA8 */ _t3 = cpu->r[3] + 0x00000C64u;
|
|
/* 027EFCA8 */ cpu->r[3] = rbrew_read8(cpu->mem, _t3);
|
|
/* 027EFCAC */ cpu->lr = cpu->r[0];
|
|
/* 027EFCB0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFCB4 */ return;
|
|
}
|
|
|
|
// fn_027EFC9C @ 0x27efc9c
|
|
void Gambit_fn_027EFC9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFC9C: ; // 0x27efc9c
|
|
/* 027EFC9C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFC9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFC9C */ cpu->r[1] = _t0;
|
|
/* 027EFCA0 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFCA4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFCA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFCA8 */ _t2 = cpu->r[3] + 0x00000C64u;
|
|
/* 027EFCA8 */ cpu->r[3] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027EFCAC */ cpu->lr = cpu->r[0];
|
|
/* 027EFCB0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFCB4 */ return;
|
|
}
|
|
|
|
// fn_027EFCB8 @ 0x27efcb8
|
|
void Gambit_fn_027EFCB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFCB8: ; // 0x27efcb8
|
|
/* 027EFCB8 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFCBC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFCBC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFCC0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFCC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFCC0 */ cpu->r[1] = _t1;
|
|
/* 027EFCC4 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFCC8 */ Gambit_fn_026EC76C(cpu);
|
|
/* 027EFCCC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFCCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFCD0 */ cpu->lr = cpu->r[0];
|
|
/* 027EFCD4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFCD8 */ return;
|
|
}
|
|
|
|
// fn_027EFCC0 @ 0x27efcc0
|
|
void Gambit_fn_027EFCC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFCC0: ; // 0x27efcc0
|
|
/* 027EFCC0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFCC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFCC0 */ cpu->r[1] = _t0;
|
|
/* 027EFCC4 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFCC8 */ Gambit_fn_026EC76C(cpu);
|
|
/* 027EFCCC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFCCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFCD0 */ cpu->lr = cpu->r[0];
|
|
/* 027EFCD4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFCD8 */ return;
|
|
}
|
|
|
|
// fn_027EFCDC @ 0x27efcdc
|
|
void Gambit_fn_027EFCDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFCDC: ; // 0x27efcdc
|
|
/* 027EFCDC */ cpu->r[0] = cpu->lr;
|
|
/* 027EFCE0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFCE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFCE4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFCE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFCE4 */ cpu->r[1] = _t1;
|
|
/* 027EFCE8 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFCEC */ Gambit_fn_026EC77C(cpu);
|
|
/* 027EFCF0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFCF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFCF4 */ cpu->lr = cpu->r[0];
|
|
/* 027EFCF8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFCFC */ return;
|
|
}
|
|
|
|
// fn_027EFCE4 @ 0x27efce4
|
|
void Gambit_fn_027EFCE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFCE4: ; // 0x27efce4
|
|
/* 027EFCE4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFCE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFCE4 */ cpu->r[1] = _t0;
|
|
/* 027EFCE8 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFCEC */ Gambit_fn_026EC77C(cpu);
|
|
/* 027EFCF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFCF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFCF4 */ cpu->lr = cpu->r[0];
|
|
/* 027EFCF8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFCFC */ return;
|
|
}
|
|
|
|
// fn_027EFD00 @ 0x27efd00
|
|
void Gambit_fn_027EFD00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFD00: ; // 0x27efd00
|
|
/* 027EFD00 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFD04 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFD04 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFD08 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFD08 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFD08 */ cpu->r[1] = _t1;
|
|
/* 027EFD0C */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFD10 */ Gambit_fn_026EC78C(cpu);
|
|
/* 027EFD14 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFD14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFD18 */ cpu->lr = cpu->r[0];
|
|
/* 027EFD1C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFD20 */ return;
|
|
}
|
|
|
|
// fn_027EFD08 @ 0x27efd08
|
|
void Gambit_fn_027EFD08(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFD08: ; // 0x27efd08
|
|
/* 027EFD08 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFD08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFD08 */ cpu->r[1] = _t0;
|
|
/* 027EFD0C */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFD10 */ Gambit_fn_026EC78C(cpu);
|
|
/* 027EFD14 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFD14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFD18 */ cpu->lr = cpu->r[0];
|
|
/* 027EFD1C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFD20 */ return;
|
|
}
|
|
|
|
// fn_027EFD24 @ 0x27efd24
|
|
void Gambit_fn_027EFD24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFD24: ; // 0x27efd24
|
|
/* 027EFD24 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFD28 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFD28 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFD2C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFD2C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFD2C */ cpu->r[1] = _t1;
|
|
/* 027EFD30 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFD34 */ Gambit_fn_026EC7B4(cpu);
|
|
/* 027EFD38 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFD38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFD3C */ cpu->lr = cpu->r[0];
|
|
/* 027EFD40 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFD44 */ return;
|
|
}
|
|
|
|
// fn_027EFD2C @ 0x27efd2c
|
|
void Gambit_fn_027EFD2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFD2C: ; // 0x27efd2c
|
|
/* 027EFD2C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFD2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFD2C */ cpu->r[1] = _t0;
|
|
/* 027EFD30 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFD34 */ Gambit_fn_026EC7B4(cpu);
|
|
/* 027EFD38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFD38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFD3C */ cpu->lr = cpu->r[0];
|
|
/* 027EFD40 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFD44 */ return;
|
|
}
|
|
|
|
// fn_027EFD48 @ 0x27efd48
|
|
void Gambit_fn_027EFD48(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFD48: ; // 0x27efd48
|
|
/* 027EFD48 */ _t0 = cpu->r[3] + 0x00000028u;
|
|
/* 027EFD48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027EFD4C */ _t1 = cpu->r[12] + 0x00000008u;
|
|
/* 027EFD4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFD50 */ return;
|
|
}
|
|
|
|
// fn_027EFD54 @ 0x27efd54
|
|
void Gambit_fn_027EFD54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFD54: ; // 0x27efd54
|
|
/* 027EFD54 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFD58 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFD58 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFD5C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFD5C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFD5C */ cpu->r[1] = _t1;
|
|
/* 027EFD60 */ Gambit_fn_027EFD48(cpu);
|
|
/* 027EFD64 */ Gambit_fn_026EC7C4(cpu);
|
|
/* 027EFD68 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFD68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFD6C */ cpu->lr = cpu->r[0];
|
|
/* 027EFD70 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFD74 */ return;
|
|
}
|
|
|
|
// fn_027EFD5C @ 0x27efd5c
|
|
void Gambit_fn_027EFD5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFD5C: ; // 0x27efd5c
|
|
/* 027EFD5C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFD5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFD5C */ cpu->r[1] = _t0;
|
|
/* 027EFD60 */ Gambit_fn_027EFD48(cpu);
|
|
/* 027EFD64 */ Gambit_fn_026EC7C4(cpu);
|
|
/* 027EFD68 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFD68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFD6C */ cpu->lr = cpu->r[0];
|
|
/* 027EFD70 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFD74 */ return;
|
|
}
|
|
|
|
// fn_027EFD78 @ 0x27efd78
|
|
void Gambit_fn_027EFD78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFD78: ; // 0x27efd78
|
|
/* 027EFD78 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFD7C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFD7C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFD80 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFD80 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFD80 */ cpu->r[1] = _t1;
|
|
/* 027EFD84 */ Gambit_fn_027EFD48(cpu);
|
|
/* 027EFD88 */ Gambit_fn_026EC7D8(cpu);
|
|
/* 027EFD8C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFD8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFD90 */ cpu->lr = cpu->r[0];
|
|
/* 027EFD94 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFD98 */ return;
|
|
}
|
|
|
|
// fn_027EFD80 @ 0x27efd80
|
|
void Gambit_fn_027EFD80(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFD80: ; // 0x27efd80
|
|
/* 027EFD80 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFD80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFD80 */ cpu->r[1] = _t0;
|
|
/* 027EFD84 */ Gambit_fn_027EFD48(cpu);
|
|
/* 027EFD88 */ Gambit_fn_026EC7D8(cpu);
|
|
/* 027EFD8C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFD8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFD90 */ cpu->lr = cpu->r[0];
|
|
/* 027EFD94 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFD98 */ return;
|
|
}
|
|
|
|
// fn_027EFD9C @ 0x27efd9c
|
|
void Gambit_fn_027EFD9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_027EFD9C: ; // 0x27efd9c
|
|
/* 027EFD9C */ cpu->r[0] = cpu->lr;
|
|
/* 027EFDA0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFDA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFDA0 */ cpu->r[1] = _t0;
|
|
/* 027EFDA4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFDA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EFDA8 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFDAC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFDAC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EFDB0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFDB0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EFDB4 */ Gambit_fn_027EFD54(cpu);
|
|
/* 027EFDB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFDB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027EFDBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFDBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 027EFDBC */ if (_t5) goto L_027EFDC8; else goto L_027EFDC0;
|
|
L_027EFDC0: ; // 0x27efdc0
|
|
/* 027EFDC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFDC4 */ Gambit_fn_027EFCB8(cpu);
|
|
L_027EFDC8: ; // 0x27efdc8
|
|
/* 027EFDC8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFDC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFDCC */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFDD0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFDD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFDD4 */ cpu->lr = cpu->r[0];
|
|
/* 027EFDD8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFDD8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFDDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFDE0 */ return;
|
|
}
|
|
|
|
// fn_027EFDA0 @ 0x27efda0
|
|
void Gambit_fn_027EFDA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_027EFDA0: ; // 0x27efda0
|
|
/* 027EFDA0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFDA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFDA0 */ cpu->r[1] = _t0;
|
|
/* 027EFDA4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFDA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EFDA8 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFDAC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFDAC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EFDB0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFDB0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EFDB4 */ Gambit_fn_027EFD54(cpu);
|
|
/* 027EFDB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFDB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027EFDBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFDBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 027EFDBC */ if (_t5) goto L_027EFDC8; else goto L_027EFDC0;
|
|
L_027EFDC0: ; // 0x27efdc0
|
|
/* 027EFDC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFDC4 */ Gambit_fn_027EFCB8(cpu);
|
|
L_027EFDC8: ; // 0x27efdc8
|
|
/* 027EFDC8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFDC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFDCC */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFDD0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFDD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFDD4 */ cpu->lr = cpu->r[0];
|
|
/* 027EFDD8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFDD8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFDDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFDE0 */ return;
|
|
}
|
|
|
|
// fn_027EFDE4 @ 0x27efde4
|
|
void Gambit_fn_027EFDE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_027EFDE4: ; // 0x27efde4
|
|
/* 027EFDE4 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFDE8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFDE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFDE8 */ cpu->r[1] = _t0;
|
|
/* 027EFDEC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFDEC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EFDF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFDF4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFDF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EFDF8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFDF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EFDFC */ Gambit_fn_027EFD78(cpu);
|
|
/* 027EFE00 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFE00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027EFE04 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFE04 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027EFE04 */ if (_t5) goto L_027EFE10; else goto L_027EFE08;
|
|
L_027EFE08: ; // 0x27efe08
|
|
/* 027EFE08 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFE0C */ Gambit_fn_027EFCDC(cpu);
|
|
L_027EFE10: ; // 0x27efe10
|
|
/* 027EFE10 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFE10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFE14 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFE18 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFE18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFE1C */ cpu->lr = cpu->r[0];
|
|
/* 027EFE20 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFE20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFE24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFE28 */ return;
|
|
}
|
|
|
|
// fn_027EFDE8 @ 0x27efde8
|
|
void Gambit_fn_027EFDE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_027EFDE8: ; // 0x27efde8
|
|
/* 027EFDE8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027EFDE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFDE8 */ cpu->r[1] = _t0;
|
|
/* 027EFDEC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFDEC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027EFDF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFDF4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFDF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027EFDF8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFDF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027EFDFC */ Gambit_fn_027EFD78(cpu);
|
|
/* 027EFE00 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFE00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027EFE04 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFE04 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027EFE04 */ if (_t5) goto L_027EFE10; else goto L_027EFE08;
|
|
L_027EFE08: ; // 0x27efe08
|
|
/* 027EFE08 */ cpu->r[3] = cpu->r[30];
|
|
/* 027EFE0C */ Gambit_fn_027EFCDC(cpu);
|
|
L_027EFE10: ; // 0x27efe10
|
|
/* 027EFE10 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFE10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027EFE14 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFE18 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFE18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027EFE1C */ cpu->lr = cpu->r[0];
|
|
/* 027EFE20 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027EFE20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027EFE24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027EFE28 */ return;
|
|
}
|
|
|
|
// fn_027EFE2C @ 0x27efe2c
|
|
void Gambit_fn_027EFE2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFE2C: ; // 0x27efe2c
|
|
/* 027EFE2C */ cpu->r[0] = cpu->lr;
|
|
/* 027EFE30 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFE30 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFE34 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFE34 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFE34 */ cpu->r[1] = _t1;
|
|
/* 027EFE38 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFE3C */ Gambit_fn_026EC6F4(cpu);
|
|
/* 027EFE40 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFE40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFE44 */ cpu->lr = cpu->r[0];
|
|
/* 027EFE48 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFE4C */ return;
|
|
}
|
|
|
|
// fn_027EFE34 @ 0x27efe34
|
|
void Gambit_fn_027EFE34(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFE34: ; // 0x27efe34
|
|
/* 027EFE34 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFE34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFE34 */ cpu->r[1] = _t0;
|
|
/* 027EFE38 */ Gambit_fn_027EFC88(cpu);
|
|
/* 027EFE3C */ Gambit_fn_026EC6F4(cpu);
|
|
/* 027EFE40 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFE40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFE44 */ cpu->lr = cpu->r[0];
|
|
/* 027EFE48 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFE4C */ return;
|
|
}
|
|
|
|
// fn_027EFE50 @ 0x27efe50
|
|
void Gambit_fn_027EFE50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFE50: ; // 0x27efe50
|
|
/* 027EFE50 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFE54 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFE54 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFE58 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFE58 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFE58 */ cpu->r[1] = _t1;
|
|
/* 027EFE5C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFE60 */ Gambit_fn_026E9EF8(cpu);
|
|
/* 027EFE64 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFE68 */ cpu->lr = cpu->r[0];
|
|
/* 027EFE6C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFE70 */ return;
|
|
}
|
|
|
|
// fn_027EFE58 @ 0x27efe58
|
|
void Gambit_fn_027EFE58(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFE58: ; // 0x27efe58
|
|
/* 027EFE58 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFE58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFE58 */ cpu->r[1] = _t0;
|
|
/* 027EFE5C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFE60 */ Gambit_fn_026E9EF8(cpu);
|
|
/* 027EFE64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFE68 */ cpu->lr = cpu->r[0];
|
|
/* 027EFE6C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFE70 */ return;
|
|
}
|
|
|
|
// fn_027EFE74 @ 0x27efe74
|
|
void Gambit_fn_027EFE74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027EFE74: ; // 0x27efe74
|
|
/* 027EFE74 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFE78 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFE78 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFE7C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFE7C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFE7C */ cpu->r[1] = _t1;
|
|
/* 027EFE80 */ Gambit_fn_027EF6B4(cpu);
|
|
/* 027EFE84 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFE84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFE88 */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 027EFE88 */ cpu->r[3] = rbrew_read8(cpu->mem, _t3);
|
|
/* 027EFE8C */ cpu->lr = cpu->r[0];
|
|
/* 027EFE90 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFE94 */ return;
|
|
}
|
|
|
|
// fn_027EFE7C @ 0x27efe7c
|
|
void Gambit_fn_027EFE7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFE7C: ; // 0x27efe7c
|
|
/* 027EFE7C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFE7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFE7C */ cpu->r[1] = _t0;
|
|
/* 027EFE80 */ Gambit_fn_027EF6B4(cpu);
|
|
/* 027EFE84 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFE84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFE88 */ _t2 = cpu->r[3] + 0x00000010u;
|
|
/* 027EFE88 */ cpu->r[3] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027EFE8C */ cpu->lr = cpu->r[0];
|
|
/* 027EFE90 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFE94 */ return;
|
|
}
|
|
|
|
// fn_027EFE98 @ 0x27efe98
|
|
void Gambit_fn_027EFE98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFE98: ; // 0x27efe98
|
|
/* 027EFE98 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFE9C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFE9C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFEA0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFEA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFEA0 */ cpu->r[1] = _t1;
|
|
/* 027EFEA4 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFEA8 */ Gambit_fn_026EA324(cpu);
|
|
/* 027EFEAC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFEAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFEB0 */ cpu->lr = cpu->r[0];
|
|
/* 027EFEB4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFEB8 */ return;
|
|
}
|
|
|
|
// fn_027EFEA0 @ 0x27efea0
|
|
void Gambit_fn_027EFEA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFEA0: ; // 0x27efea0
|
|
/* 027EFEA0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFEA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFEA0 */ cpu->r[1] = _t0;
|
|
/* 027EFEA4 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFEA8 */ Gambit_fn_026EA324(cpu);
|
|
/* 027EFEAC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFEAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFEB0 */ cpu->lr = cpu->r[0];
|
|
/* 027EFEB4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFEB8 */ return;
|
|
}
|
|
|
|
// fn_027EFEBC @ 0x27efebc
|
|
void Gambit_fn_027EFEBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFEBC: ; // 0x27efebc
|
|
/* 027EFEBC */ cpu->r[0] = cpu->lr;
|
|
/* 027EFEC0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFEC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFEC4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFEC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFEC4 */ cpu->r[1] = _t1;
|
|
/* 027EFEC8 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFECC */ Gambit_fn_026EA334(cpu);
|
|
/* 027EFED0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFED4 */ cpu->lr = cpu->r[0];
|
|
/* 027EFED8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFEDC */ return;
|
|
}
|
|
|
|
// fn_027EFEC4 @ 0x27efec4
|
|
void Gambit_fn_027EFEC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFEC4: ; // 0x27efec4
|
|
/* 027EFEC4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFEC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFEC4 */ cpu->r[1] = _t0;
|
|
/* 027EFEC8 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFECC */ Gambit_fn_026EA334(cpu);
|
|
/* 027EFED0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFED4 */ cpu->lr = cpu->r[0];
|
|
/* 027EFED8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFEDC */ return;
|
|
}
|
|
|
|
// fn_027EFEE0 @ 0x27efee0
|
|
void Gambit_fn_027EFEE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EFEE0: ; // 0x27efee0
|
|
/* 027EFEE0 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFEE4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EFEE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFEE4 */ cpu->r[1] = _t0;
|
|
/* 027EFEE8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFEE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027EFEEC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFEEC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EFEF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFEF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027EFEF4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFEF4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EFEF8 */ cpu->r[0] = cpu->r[3];
|
|
/* 027EFEFC */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027EFF00 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFF04 */ cpu->r[3] = cpu->r[0];
|
|
/* 027EFF08 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFF0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EFF10 */ cpu->r[29] = 0x00000000u;
|
|
/* 027EFF14 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFF18 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027EFF18 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EFF18 */ if (_t6) goto L_027EFF1C; else goto L_027EFF34;
|
|
L_027EFF1C: ; // 0x27eff1c
|
|
/* 027EFF1C */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFF20 */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFF24 */ Gambit_fn_026EA334(cpu);
|
|
/* 027EFF28 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 027EFF28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EFF2C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027EFF30 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFF30 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027EFF30 */ if (_t8) goto L_027EFF34; else goto L_027EFF1C;
|
|
L_027EFF34: ; // 0x27eff34
|
|
/* 027EFF34 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFF34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFF38 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFF38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EFF3C */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFF3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EFF40 */ cpu->lr = cpu->r[0];
|
|
/* 027EFF44 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFF44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EFF48 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFF4C */ return;
|
|
}
|
|
|
|
// fn_027EFEE4 @ 0x27efee4
|
|
void Gambit_fn_027EFEE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EFEE4: ; // 0x27efee4
|
|
/* 027EFEE4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EFEE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFEE4 */ cpu->r[1] = _t0;
|
|
/* 027EFEE8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFEE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027EFEEC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFEEC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EFEF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFEF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027EFEF4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFEF4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EFEF8 */ cpu->r[0] = cpu->r[3];
|
|
/* 027EFEFC */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027EFF00 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFF04 */ cpu->r[3] = cpu->r[0];
|
|
/* 027EFF08 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFF0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EFF10 */ cpu->r[29] = 0x00000000u;
|
|
/* 027EFF14 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFF18 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027EFF18 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EFF18 */ if (_t6) goto L_027EFF1C; else goto L_027EFF34;
|
|
L_027EFF1C: ; // 0x27eff1c
|
|
/* 027EFF1C */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFF20 */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFF24 */ Gambit_fn_026EA334(cpu);
|
|
/* 027EFF28 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 027EFF28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EFF2C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027EFF30 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFF30 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027EFF30 */ if (_t8) goto L_027EFF34; else goto L_027EFF1C;
|
|
L_027EFF34: ; // 0x27eff34
|
|
/* 027EFF34 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFF34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFF38 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFF38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EFF3C */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFF3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EFF40 */ cpu->lr = cpu->r[0];
|
|
/* 027EFF44 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFF44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EFF48 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFF4C */ return;
|
|
}
|
|
|
|
// fn_027EFF50 @ 0x27eff50
|
|
void Gambit_fn_027EFF50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFF50: ; // 0x27eff50
|
|
/* 027EFF50 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFF54 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFF54 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFF58 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFF58 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFF58 */ cpu->r[1] = _t1;
|
|
/* 027EFF5C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFF60 */ Gambit_fn_026EA344(cpu);
|
|
/* 027EFF64 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFF64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027EFF68 */ cpu->lr = cpu->r[0];
|
|
/* 027EFF6C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFF70 */ return;
|
|
}
|
|
|
|
// fn_027EFF58 @ 0x27eff58
|
|
void Gambit_fn_027EFF58(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027EFF58: ; // 0x27eff58
|
|
/* 027EFF58 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFF58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFF58 */ cpu->r[1] = _t0;
|
|
/* 027EFF5C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFF60 */ Gambit_fn_026EA344(cpu);
|
|
/* 027EFF64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFF64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027EFF68 */ cpu->lr = cpu->r[0];
|
|
/* 027EFF6C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027EFF70 */ return;
|
|
}
|
|
|
|
// fn_027EFF74 @ 0x27eff74
|
|
void Gambit_fn_027EFF74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EFF74: ; // 0x27eff74
|
|
/* 027EFF74 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFF78 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EFF78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFF78 */ cpu->r[1] = _t0;
|
|
/* 027EFF7C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFF7C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027EFF80 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFF80 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EFF84 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFF84 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027EFF88 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFF88 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EFF8C */ cpu->r[0] = cpu->r[3];
|
|
/* 027EFF90 */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027EFF94 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFF98 */ cpu->r[3] = cpu->r[0];
|
|
/* 027EFF9C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFFA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EFFA4 */ cpu->r[29] = 0x00000000u;
|
|
/* 027EFFA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFFAC */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027EFFAC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EFFAC */ if (_t6) goto L_027EFFB0; else goto L_027EFFC8;
|
|
L_027EFFB0: ; // 0x27effb0
|
|
/* 027EFFB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFFB4 */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFFB8 */ Gambit_fn_026EA344(cpu);
|
|
/* 027EFFBC */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 027EFFBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EFFC0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027EFFC4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFFC4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027EFFC4 */ if (_t8) goto L_027EFFC8; else goto L_027EFFB0;
|
|
L_027EFFC8: ; // 0x27effc8
|
|
/* 027EFFC8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFFC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFFCC */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFFCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EFFD0 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFFD0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EFFD4 */ cpu->lr = cpu->r[0];
|
|
/* 027EFFD8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFFD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EFFDC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFFE0 */ return;
|
|
}
|
|
|
|
// fn_027EFF78 @ 0x27eff78
|
|
void Gambit_fn_027EFF78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027EFF78: ; // 0x27eff78
|
|
/* 027EFF78 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027EFF78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFF78 */ cpu->r[1] = _t0;
|
|
/* 027EFF7C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFF7C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027EFF80 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFF80 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027EFF84 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFF84 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027EFF88 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFF88 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027EFF8C */ cpu->r[0] = cpu->r[3];
|
|
/* 027EFF90 */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027EFF94 */ cpu->r[30] = cpu->r[3];
|
|
/* 027EFF98 */ cpu->r[3] = cpu->r[0];
|
|
/* 027EFF9C */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFFA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EFFA4 */ cpu->r[29] = 0x00000000u;
|
|
/* 027EFFA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027EFFAC */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027EFFAC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027EFFAC */ if (_t6) goto L_027EFFB0; else goto L_027EFFC8;
|
|
L_027EFFB0: ; // 0x27effb0
|
|
/* 027EFFB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027EFFB4 */ cpu->r[4] = cpu->r[29];
|
|
/* 027EFFB8 */ Gambit_fn_026EA344(cpu);
|
|
/* 027EFFBC */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 027EFFBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027EFFC0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027EFFC4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027EFFC4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027EFFC4 */ if (_t8) goto L_027EFFC8; else goto L_027EFFB0;
|
|
L_027EFFC8: ; // 0x27effc8
|
|
/* 027EFFC8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027EFFC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027EFFCC */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027EFFCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027EFFD0 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027EFFD0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027EFFD4 */ cpu->lr = cpu->r[0];
|
|
/* 027EFFD8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027EFFD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027EFFDC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027EFFE0 */ return;
|
|
}
|
|
|
|
// fn_027EFFF4 @ 0x27efff4
|
|
void Gambit_fn_027EFFF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027EFFF4: ; // 0x27efff4
|
|
/* 027EFFF4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFFF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027EFFF4 */ cpu->r[1] = _t0;
|
|
/* 027EFFF8 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFFFC */ _t1 = cpu->r[11] + 0x00000004u;
|
|
/* 027EFFFC */ cpu->r[5] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F0000 */ Gambit_fn_026EA354(cpu);
|
|
/* 027F0004 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F0008 */ cpu->lr = cpu->r[0];
|
|
/* 027F000C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F0010 */ return;
|
|
}
|
|
|
|
// fn_027F0014 @ 0x27f0014
|
|
void Gambit_fn_027F0014(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027EFFE4: ; // 0x27effe4
|
|
/* 027EFFE4 */ cpu->r[0] = cpu->lr;
|
|
/* 027EFFE8 */ cpu->r[11] = cpu->r[4];
|
|
/* 027EFFEC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027EFFEC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027EFFF0 */ cpu->r[4] = cpu->r[5];
|
|
/* 027EFFF4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027EFFF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027EFFF4 */ cpu->r[1] = _t1;
|
|
/* 027EFFF8 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027EFFFC */ _t2 = cpu->r[11] + 0x00000004u;
|
|
/* 027EFFFC */ cpu->r[5] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F0000 */ Gambit_fn_026EA354(cpu);
|
|
/* 027F0004 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F0008 */ cpu->lr = cpu->r[0];
|
|
/* 027F000C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F0010 */ return;
|
|
L_027F0014: ; // 0x27f0014
|
|
/* 027F0014 */ _t4 = cpu->r[4] + 0x000001A0u;
|
|
/* 027F0014 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F0018 */ goto L_027EFFE4;
|
|
}
|
|
|
|
// fn_027F001C @ 0x27f001c
|
|
void Gambit_fn_027F001C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F001C: ; // 0x27f001c
|
|
/* 027F001C */ cpu->r[0] = cpu->lr;
|
|
/* 027F0020 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F0020 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F0024 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F0024 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F0024 */ cpu->r[1] = _t1;
|
|
/* 027F0028 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027F002C */ Gambit_fn_026EA374(cpu);
|
|
/* 027F0030 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F0034 */ cpu->lr = cpu->r[0];
|
|
/* 027F0038 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F003C */ return;
|
|
}
|
|
|
|
// fn_027F0024 @ 0x27f0024
|
|
void Gambit_fn_027F0024(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F0024: ; // 0x27f0024
|
|
/* 027F0024 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F0024 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0024 */ cpu->r[1] = _t0;
|
|
/* 027F0028 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027F002C */ Gambit_fn_026EA374(cpu);
|
|
/* 027F0030 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F0034 */ cpu->lr = cpu->r[0];
|
|
/* 027F0038 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F003C */ return;
|
|
}
|
|
|
|
// fn_027F0040 @ 0x27f0040
|
|
void Gambit_fn_027F0040(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_027F0040: ; // 0x27f0040
|
|
/* 027F0040 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F0040 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0040 */ cpu->r[1] = _t0;
|
|
/* 027F0044 */ /* nop */
|
|
/* 027F0048 */ cpu->r[0] = cpu->lr;
|
|
/* 027F004C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027F004C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F0050 */ cpu->r[29] = cpu->r[5];
|
|
/* 027F0054 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F0058 */ _t2 = cpu->r[27] + 0x00000000u;
|
|
/* 027F0058 */ cpu->r[28] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F005C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F0060 */ _t3 = cpu->r[27] + 0x00000004u;
|
|
/* 027F0060 */ cpu->r[30] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F0064 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0064 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F0064 */ if (_t5) goto L_027F0068; else goto L_027F0120;
|
|
L_027F0068: ; // 0x27f0068
|
|
/* 027F0068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F006C */ cpu->r[3] = cpu->r[28];
|
|
/* 027F0070 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F0074 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0074 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F0074 */ if (_t7) goto L_027F00DC; else goto L_027F0078;
|
|
L_027F0078: ; // 0x27f0078
|
|
/* 027F0078 */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F007C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]);
|
|
/* 027F0080 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0080 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F0080 */ if (_t9) goto L_027F0084; else goto L_027F0150;
|
|
L_027F0084: ; // 0x27f0084
|
|
/* 027F0084 */ cpu->r[26] = 0x00000000u;
|
|
L_027F0088: ; // 0x27f0088
|
|
/* 027F0088 */ _t10 = cpu->r[27] + 0x00000018u;
|
|
/* 027F0088 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F008C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 027F0090 */ _t11 = cpu->r[27] + 0x0000001Cu;
|
|
/* 027F0090 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F0094 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0094 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F0094 */ if (_t13) goto L_027F0098; else goto L_027F009C;
|
|
L_027F0098: ; // 0x27f0098
|
|
/* 027F0098 */ cpu->r[11] = cpu->r[11] + cpu->r[26];
|
|
L_027F009C: ; // 0x27f009c
|
|
/* 027F009C */ cpu->r[5] = cpu->r[30];
|
|
/* 027F00A0 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F00A4 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F00A8 */ _t14 = cpu->r[11] + 0x00000000u;
|
|
/* 027F00A8 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 027F00AC */ Gambit_fn_027EF704(cpu);
|
|
/* 027F00B0 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 027F00B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F00B8 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 027F00BC */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F00C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]);
|
|
/* 027F00C4 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F00C4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F00C4 */ if (_t16) goto L_027F0088; else goto L_027F00C8;
|
|
L_027F00C8: ; // 0x27f00c8
|
|
/* 027F00C8 */ /* nop */
|
|
/* 027F00CC */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 027F00CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F00D0 */ cpu->lr = cpu->r[0];
|
|
/* 027F00D4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F00D8 */ return;
|
|
L_027F00DC: ; // 0x27f00dc
|
|
/* 027F00DC */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F00E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]);
|
|
/* 027F00E4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F00E4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F00E4 */ if (_t19) goto L_027F00E8; else goto L_027F0150;
|
|
L_027F00E8: ; // 0x27f00e8
|
|
/* 027F00E8 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F00EC */ cpu->r[4] = cpu->r[31];
|
|
/* 027F00F0 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F00F4 */ Gambit_fn_027EF704(cpu);
|
|
/* 027F00F8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 027F00FC */ cpu->r[3] = cpu->r[28];
|
|
/* 027F0100 */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F0104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]);
|
|
/* 027F0108 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0108 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F0108 */ if (_t21) goto L_027F00E8; else goto L_027F010C;
|
|
L_027F010C: ; // 0x27f010c
|
|
/* 027F010C */ /* nop */
|
|
/* 027F0110 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 027F0110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F0114 */ cpu->lr = cpu->r[0];
|
|
/* 027F0118 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F011C */ return;
|
|
L_027F0120: ; // 0x27f0120
|
|
/* 027F0120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F0124 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0124 */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F0124 */ if (_t24) goto L_027F0144; else goto L_027F0128;
|
|
L_027F0128: ; // 0x27f0128
|
|
/* 027F0128 */ _t25 = cpu->r[27] + 0x00000018u;
|
|
/* 027F0128 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F012C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 027F0130 */ _t26 = cpu->r[27] + 0x0000001Cu;
|
|
/* 027F0130 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F0134 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0134 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F0134 */ if (_t28) goto L_027F0138; else goto L_027F0140;
|
|
L_027F0138: ; // 0x27f0138
|
|
/* 027F0138 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F013C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_027F0140: ; // 0x27f0140
|
|
/* 027F0140 */ _t29 = cpu->r[12] + 0x00000000u;
|
|
/* 027F0140 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_027F0144: ; // 0x27f0144
|
|
/* 027F0144 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F0148 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F014C */ Gambit_fn_027EF704(cpu);
|
|
L_027F0150: ; // 0x27f0150
|
|
/* 027F0150 */ /* nop */
|
|
/* 027F0154 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 027F0154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F0158 */ cpu->lr = cpu->r[0];
|
|
/* 027F015C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F0160 */ return;
|
|
}
|
|
|
|
// fn_027F0164 @ 0x27f0164
|
|
void Gambit_fn_027F0164(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_027F0040: ; // 0x27f0040
|
|
/* 027F0040 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F0040 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0040 */ cpu->r[1] = _t0;
|
|
/* 027F0044 */ /* nop */
|
|
/* 027F0048 */ cpu->r[0] = cpu->lr;
|
|
/* 027F004C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027F004C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F0050 */ cpu->r[29] = cpu->r[5];
|
|
/* 027F0054 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F0058 */ _t2 = cpu->r[27] + 0x00000000u;
|
|
/* 027F0058 */ cpu->r[28] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F005C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F0060 */ _t3 = cpu->r[27] + 0x00000004u;
|
|
/* 027F0060 */ cpu->r[30] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F0064 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0064 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F0064 */ if (_t5) goto L_027F0068; else goto L_027F0120;
|
|
L_027F0068: ; // 0x27f0068
|
|
/* 027F0068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F006C */ cpu->r[3] = cpu->r[28];
|
|
/* 027F0070 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F0074 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0074 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F0074 */ if (_t7) goto L_027F00DC; else goto L_027F0078;
|
|
L_027F0078: ; // 0x27f0078
|
|
/* 027F0078 */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F007C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]);
|
|
/* 027F0080 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0080 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F0080 */ if (_t9) goto L_027F0084; else goto L_027F0150;
|
|
L_027F0084: ; // 0x27f0084
|
|
/* 027F0084 */ cpu->r[26] = 0x00000000u;
|
|
L_027F0088: ; // 0x27f0088
|
|
/* 027F0088 */ _t10 = cpu->r[27] + 0x00000018u;
|
|
/* 027F0088 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F008C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 027F0090 */ _t11 = cpu->r[27] + 0x0000001Cu;
|
|
/* 027F0090 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F0094 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0094 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F0094 */ if (_t13) goto L_027F0098; else goto L_027F009C;
|
|
L_027F0098: ; // 0x27f0098
|
|
/* 027F0098 */ cpu->r[11] = cpu->r[11] + cpu->r[26];
|
|
L_027F009C: ; // 0x27f009c
|
|
/* 027F009C */ cpu->r[5] = cpu->r[30];
|
|
/* 027F00A0 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F00A4 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F00A8 */ _t14 = cpu->r[11] + 0x00000000u;
|
|
/* 027F00A8 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 027F00AC */ Gambit_fn_027EF704(cpu);
|
|
/* 027F00B0 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 027F00B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F00B8 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 027F00BC */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F00C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]);
|
|
/* 027F00C4 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F00C4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F00C4 */ if (_t16) goto L_027F0088; else goto L_027F00C8;
|
|
L_027F00C8: ; // 0x27f00c8
|
|
/* 027F00C8 */ /* nop */
|
|
/* 027F00CC */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 027F00CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F00D0 */ cpu->lr = cpu->r[0];
|
|
/* 027F00D4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F00D8 */ return;
|
|
L_027F00DC: ; // 0x27f00dc
|
|
/* 027F00DC */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F00E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]);
|
|
/* 027F00E4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F00E4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F00E4 */ if (_t19) goto L_027F00E8; else goto L_027F0150;
|
|
L_027F00E8: ; // 0x27f00e8
|
|
/* 027F00E8 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F00EC */ cpu->r[4] = cpu->r[31];
|
|
/* 027F00F0 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F00F4 */ Gambit_fn_027EF704(cpu);
|
|
/* 027F00F8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 027F00FC */ cpu->r[3] = cpu->r[28];
|
|
/* 027F0100 */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F0104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]);
|
|
/* 027F0108 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0108 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F0108 */ if (_t21) goto L_027F00E8; else goto L_027F010C;
|
|
L_027F010C: ; // 0x27f010c
|
|
/* 027F010C */ /* nop */
|
|
/* 027F0110 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 027F0110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F0114 */ cpu->lr = cpu->r[0];
|
|
/* 027F0118 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F011C */ return;
|
|
L_027F0120: ; // 0x27f0120
|
|
/* 027F0120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F0124 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0124 */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F0124 */ if (_t24) goto L_027F0144; else goto L_027F0128;
|
|
L_027F0128: ; // 0x27f0128
|
|
/* 027F0128 */ _t25 = cpu->r[27] + 0x00000018u;
|
|
/* 027F0128 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F012C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 027F0130 */ _t26 = cpu->r[27] + 0x0000001Cu;
|
|
/* 027F0130 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F0134 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0134 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F0134 */ if (_t28) goto L_027F0138; else goto L_027F0140;
|
|
L_027F0138: ; // 0x27f0138
|
|
/* 027F0138 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F013C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_027F0140: ; // 0x27f0140
|
|
/* 027F0140 */ _t29 = cpu->r[12] + 0x00000000u;
|
|
/* 027F0140 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_027F0144: ; // 0x27f0144
|
|
/* 027F0144 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F0148 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F014C */ Gambit_fn_027EF704(cpu);
|
|
L_027F0150: ; // 0x27f0150
|
|
/* 027F0150 */ /* nop */
|
|
/* 027F0154 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 027F0154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F0158 */ cpu->lr = cpu->r[0];
|
|
/* 027F015C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F0160 */ return;
|
|
L_027F0164: ; // 0x27f0164
|
|
/* 027F0164 */ _t31 = cpu->r[3] + 0x000001A0u;
|
|
/* 027F0164 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F0168 */ goto L_027F0040;
|
|
}
|
|
|
|
// fn_027F016C @ 0x27f016c
|
|
void Gambit_fn_027F016C(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_027F016C: ; // 0x27f016c
|
|
/* 027F016C */ cpu->r[0] = cpu->lr;
|
|
/* 027F0170 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F0170 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0170 */ cpu->r[1] = _t0;
|
|
/* 027F0174 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0174 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F0178 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0178 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F017C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F0180 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0180 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F0184 */ _t4 = cpu->r[31] + 0x0000000Eu;
|
|
/* 027F0184 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 027F0188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F018C */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027F018C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F0190 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0190 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F0190 */ if (_t7) goto L_027F0194; else goto L_027F01B0;
|
|
L_027F0194: ; // 0x27f0194
|
|
/* 027F0194 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F0198 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0198 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F019C */ cpu->lr = cpu->r[0];
|
|
/* 027F01A0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F01A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F01A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F01A8 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F01AC */ return;
|
|
L_027F01B0: ; // 0x27f01b0
|
|
/* 027F01B0 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 027F01B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F01B4 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F01B8 */ Gambit_fn_027EF890(cpu);
|
|
/* 027F01BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F01C0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F01C0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F01C0 */ if (_t13) goto L_027F01D4; else goto L_027F01C4;
|
|
L_027F01C4: ; // 0x27f01c4
|
|
/* 027F01C4 */ _t14 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F01C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F01C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 027F01CC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F01CC */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F01CC */ if (_t16) goto L_027F01D0; else goto L_027F01D4;
|
|
L_027F01D0: ; // 0x27f01d0
|
|
/* 027F01D0 */ cpu->r[30] = 0x00000001u;
|
|
L_027F01D4: ; // 0x27f01d4
|
|
/* 027F01D4 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027F01D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F01D8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F01DC */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 027F01DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F01E0 */ cpu->lr = cpu->r[0];
|
|
/* 027F01E4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F01E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F01E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F01EC */ return;
|
|
}
|
|
|
|
// fn_027F0170 @ 0x27f0170
|
|
void Gambit_fn_027F0170(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_027F0170: ; // 0x27f0170
|
|
/* 027F0170 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F0170 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0170 */ cpu->r[1] = _t0;
|
|
/* 027F0174 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0174 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F0178 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0178 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F017C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F0180 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0180 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F0184 */ _t4 = cpu->r[31] + 0x0000000Eu;
|
|
/* 027F0184 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 027F0188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F018C */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027F018C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F0190 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0190 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F0190 */ if (_t7) goto L_027F0194; else goto L_027F01B0;
|
|
L_027F0194: ; // 0x27f0194
|
|
/* 027F0194 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F0198 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0198 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F019C */ cpu->lr = cpu->r[0];
|
|
/* 027F01A0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F01A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F01A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F01A8 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F01AC */ return;
|
|
L_027F01B0: ; // 0x27f01b0
|
|
/* 027F01B0 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 027F01B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F01B4 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F01B8 */ Gambit_fn_027EF890(cpu);
|
|
/* 027F01BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F01C0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F01C0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F01C0 */ if (_t13) goto L_027F01D4; else goto L_027F01C4;
|
|
L_027F01C4: ; // 0x27f01c4
|
|
/* 027F01C4 */ _t14 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F01C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F01C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 027F01CC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F01CC */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F01CC */ if (_t16) goto L_027F01D0; else goto L_027F01D4;
|
|
L_027F01D0: ; // 0x27f01d0
|
|
/* 027F01D0 */ cpu->r[30] = 0x00000001u;
|
|
L_027F01D4: ; // 0x27f01d4
|
|
/* 027F01D4 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027F01D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F01D8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F01DC */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 027F01DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F01E0 */ cpu->lr = cpu->r[0];
|
|
/* 027F01E4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F01E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F01E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F01EC */ return;
|
|
}
|
|
|
|
// fn_027F01F0 @ 0x27f01f0
|
|
void Gambit_fn_027F01F0(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_027F01F0: ; // 0x27f01f0
|
|
/* 027F01F0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F01F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F01F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F01F4 */ cpu->r[1] = _t0;
|
|
/* 027F01F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F01F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F01FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F01FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F0200 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F0204 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0204 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F0208 */ _t4 = cpu->r[30] + 0x0000000Eu;
|
|
/* 027F0208 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 027F020C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F0210 */ _t5 = cpu->r[30] + 0x00000000u;
|
|
/* 027F0210 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F0214 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0214 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F0214 */ if (_t7) goto L_027F0218; else goto L_027F0234;
|
|
L_027F0218: ; // 0x27f0218
|
|
/* 027F0218 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F021C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F021C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F0220 */ cpu->lr = cpu->r[0];
|
|
/* 027F0224 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0224 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F0228 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F022C */ cpu->r[3] = 0x00000000u;
|
|
/* 027F0230 */ return;
|
|
L_027F0234: ; // 0x27f0234
|
|
/* 027F0234 */ _t11 = cpu->r[30] + 0x00000004u;
|
|
/* 027F0234 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F0238 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F023C */ Gambit_fn_027EF890(cpu);
|
|
/* 027F0240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F0244 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0244 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F0244 */ if (_t13) goto L_027F0248; else goto L_027F0258;
|
|
L_027F0248: ; // 0x27f0248
|
|
/* 027F0248 */ _t14 = cpu->r[30] + 0x0000004Cu;
|
|
/* 027F0248 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F024C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F0250 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0250 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F0250 */ if (_t16) goto L_027F0254; else goto L_027F0258;
|
|
L_027F0254: ; // 0x27f0254
|
|
/* 027F0254 */ cpu->r[31] = 0x00000001u;
|
|
L_027F0258: ; // 0x27f0258
|
|
/* 027F0258 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0258 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F025C */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F0260 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0260 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F0264 */ cpu->lr = cpu->r[0];
|
|
/* 027F0268 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0268 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F026C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F0270 */ return;
|
|
}
|
|
|
|
// fn_027F01F4 @ 0x27f01f4
|
|
void Gambit_fn_027F01F4(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_027F01F4: ; // 0x27f01f4
|
|
/* 027F01F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F01F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F01F4 */ cpu->r[1] = _t0;
|
|
/* 027F01F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F01F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F01FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F01FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F0200 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F0204 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0204 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F0208 */ _t4 = cpu->r[30] + 0x0000000Eu;
|
|
/* 027F0208 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 027F020C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F0210 */ _t5 = cpu->r[30] + 0x00000000u;
|
|
/* 027F0210 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F0214 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0214 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F0214 */ if (_t7) goto L_027F0218; else goto L_027F0234;
|
|
L_027F0218: ; // 0x27f0218
|
|
/* 027F0218 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F021C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F021C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F0220 */ cpu->lr = cpu->r[0];
|
|
/* 027F0224 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0224 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F0228 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F022C */ cpu->r[3] = 0x00000000u;
|
|
/* 027F0230 */ return;
|
|
L_027F0234: ; // 0x27f0234
|
|
/* 027F0234 */ _t11 = cpu->r[30] + 0x00000004u;
|
|
/* 027F0234 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F0238 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F023C */ Gambit_fn_027EF890(cpu);
|
|
/* 027F0240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F0244 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0244 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F0244 */ if (_t13) goto L_027F0248; else goto L_027F0258;
|
|
L_027F0248: ; // 0x27f0248
|
|
/* 027F0248 */ _t14 = cpu->r[30] + 0x0000004Cu;
|
|
/* 027F0248 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F024C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F0250 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0250 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F0250 */ if (_t16) goto L_027F0254; else goto L_027F0258;
|
|
L_027F0254: ; // 0x27f0254
|
|
/* 027F0254 */ cpu->r[31] = 0x00000001u;
|
|
L_027F0258: ; // 0x27f0258
|
|
/* 027F0258 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0258 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F025C */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F0260 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0260 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F0264 */ cpu->lr = cpu->r[0];
|
|
/* 027F0268 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0268 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F026C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F0270 */ return;
|
|
}
|
|
|
|
// fn_027F0274 @ 0x27f0274
|
|
void Gambit_fn_027F0274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_027F0274: ; // 0x27f0274
|
|
/* 027F0274 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F0274 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0274 */ cpu->r[1] = _t0;
|
|
/* 027F0278 */ cpu->r[0] = cpu->lr;
|
|
/* 027F027C */ /* nop */
|
|
/* 027F0280 */ cpu->r[27] = cpu->r[4];
|
|
/* 027F0284 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027F0284 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F0288 */ cpu->r[0] = cpu->r[3];
|
|
/* 027F028C */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F0290 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F0294 */ cpu->r[3] = cpu->r[0];
|
|
/* 027F0298 */ Gambit_fn_027EF6F8(cpu);
|
|
/* 027F029C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F02A0 */ cpu->r[29] = 0x00000000u;
|
|
/* 027F02A4 */ cpu->r[28] = cpu->r[3];
|
|
/* 027F02A8 */ _t2 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F02A8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F02A8 */ if (_t3) goto L_027F02AC; else goto L_027F02F4;
|
|
L_027F02AC: ; // 0x27f02ac
|
|
/* 027F02AC */ cpu->r[31] = 0x00000001u;
|
|
L_027F02B0: ; // 0x27f02b0
|
|
/* 027F02B0 */ /* nop */
|
|
/* 027F02B4 */ cpu->r[0] = cpu->r[27] & cpu->r[12];
|
|
/* 027F02B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F02B8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F02B8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F02B8 */ if (_t5) goto L_027F02E8; else goto L_027F02BC;
|
|
L_027F02BC: ; // 0x27f02bc
|
|
/* 027F02BC */ cpu->r[3] = cpu->r[28];
|
|
/* 027F02C0 */ cpu->r[4] = cpu->r[29];
|
|
/* 027F02C4 */ Gambit_fn_026E9DDC(cpu);
|
|
/* 027F02C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F02CC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F02CC */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F02CC */ if (_t7) goto L_027F02D0; else goto L_027F02E8;
|
|
L_027F02D0: ; // 0x27f02d0
|
|
/* 027F02D0 */ /* nop */
|
|
/* 027F02D4 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 027F02D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F02D8 */ cpu->lr = cpu->r[0];
|
|
/* 027F02DC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F02E0 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F02E4 */ return;
|
|
L_027F02E8: ; // 0x27f02e8
|
|
/* 027F02E8 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 027F02E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F02EC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027F02F0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F02F0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F02F0 */ if (_t10) goto L_027F02F4; else goto L_027F02B0;
|
|
L_027F02F4: ; // 0x27f02f4
|
|
/* 027F02F4 */ /* nop */
|
|
/* 027F02F8 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 027F02F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F02FC */ cpu->lr = cpu->r[0];
|
|
/* 027F0300 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F0304 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F0308 */ return;
|
|
}
|
|
|
|
// fn_027F030C @ 0x27f030c
|
|
void Gambit_fn_027F030C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F030C: ; // 0x27f030c
|
|
/* 027F030C */ _t0 = cpu->r[3] + 0x00000028u;
|
|
/* 027F030C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F0310 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F0310 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F0314 */ return;
|
|
}
|
|
|
|
// fn_027F0318 @ 0x27f0318
|
|
void Gambit_fn_027F0318(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_027F0318: ; // 0x27f0318
|
|
/* 027F0318 */ cpu->r[0] = cpu->lr;
|
|
/* 027F031C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F031C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F0320 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F0320 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F0320 */ cpu->r[1] = _t1;
|
|
/* 027F0324 */ Gambit_fn_027F030C(cpu);
|
|
/* 027F0328 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 027F0328 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F032C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F0330 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F0334 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0334 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F0334 */ if (_t4) goto L_027F0338; else goto L_027F0344;
|
|
L_027F0338: ; // 0x27f0338
|
|
/* 027F0338 */ _t5 = cpu->r[3] + 0x00000010u;
|
|
/* 027F0338 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F033C */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F0340 */ _t6 = cpu->r[11] + cpu->r[12];
|
|
/* 027F0340 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
L_027F0344: ; // 0x27f0344
|
|
/* 027F0344 */ cpu->r[3] = cpu->r[0];
|
|
/* 027F0348 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0348 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F034C */ cpu->lr = cpu->r[0];
|
|
/* 027F0350 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F0354 */ return;
|
|
}
|
|
|
|
// fn_027F0320 @ 0x27f0320
|
|
void Gambit_fn_027F0320(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_027F0320: ; // 0x27f0320
|
|
/* 027F0320 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F0320 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0320 */ cpu->r[1] = _t0;
|
|
/* 027F0324 */ Gambit_fn_027F030C(cpu);
|
|
/* 027F0328 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 027F0328 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F032C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F0330 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F0334 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0334 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F0334 */ if (_t3) goto L_027F0338; else goto L_027F0344;
|
|
L_027F0338: ; // 0x27f0338
|
|
/* 027F0338 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 027F0338 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F033C */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F0340 */ _t5 = cpu->r[11] + cpu->r[12];
|
|
/* 027F0340 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
L_027F0344: ; // 0x27f0344
|
|
/* 027F0344 */ cpu->r[3] = cpu->r[0];
|
|
/* 027F0348 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0348 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F034C */ cpu->lr = cpu->r[0];
|
|
/* 027F0350 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F0354 */ return;
|
|
}
|
|
|
|
// fn_027F0358 @ 0x27f0358
|
|
void Gambit_fn_027F0358(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_027F0358: ; // 0x27f0358
|
|
/* 027F0358 */ cpu->r[0] = cpu->lr;
|
|
/* 027F035C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F035C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F0360 */ cpu->r[0] = cpu->r[3];
|
|
/* 027F0364 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F0364 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F0364 */ cpu->r[1] = _t1;
|
|
/* 027F0368 */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F036C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[3]);
|
|
/* 027F0370 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0370 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F0370 */ if (_t3) goto L_027F0374; else goto L_027F039C;
|
|
L_027F0374: ; // 0x27f0374
|
|
/* 027F0374 */ cpu->r[3] = cpu->r[0];
|
|
/* 027F0378 */ Gambit_fn_027F0318(cpu);
|
|
/* 027F037C */ _t4 = cpu->r[3] + 0x0000004Cu;
|
|
/* 027F037C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F0380 */ cpu->r[0] = cpu->r[12] ^ 0x00000001u;
|
|
/* 027F0384 */ cpu->r[12] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F0388 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F038C */ cpu->lr = cpu->r[0];
|
|
/* 027F0390 */ cpu->r[3] = rbrew_rlwinm(cpu->r[12], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F0394 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F0398 */ return;
|
|
L_027F039C: ; // 0x27f039c
|
|
/* 027F039C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F039C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F03A0 */ cpu->lr = cpu->r[0];
|
|
/* 027F03A4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F03A8 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F03AC */ return;
|
|
}
|
|
|
|
// fn_027F0364 @ 0x27f0364
|
|
void Gambit_fn_027F0364(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F0364: ; // 0x27f0364
|
|
/* 027F0364 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F0364 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0364 */ cpu->r[1] = _t0;
|
|
/* 027F0368 */ Gambit_fn_027EFC6C(cpu);
|
|
/* 027F036C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[3]);
|
|
/* 027F0370 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0370 */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F0370 */ if (_t2) goto L_027F0374; else goto L_027F039C;
|
|
L_027F0374: ; // 0x27f0374
|
|
/* 027F0374 */ cpu->r[3] = cpu->r[0];
|
|
/* 027F0378 */ Gambit_fn_027F0318(cpu);
|
|
/* 027F037C */ _t3 = cpu->r[3] + 0x0000004Cu;
|
|
/* 027F037C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F0380 */ cpu->r[0] = cpu->r[12] ^ 0x00000001u;
|
|
/* 027F0384 */ cpu->r[12] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F0388 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F038C */ cpu->lr = cpu->r[0];
|
|
/* 027F0390 */ cpu->r[3] = rbrew_rlwinm(cpu->r[12], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F0394 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F0398 */ return;
|
|
L_027F039C: ; // 0x27f039c
|
|
/* 027F039C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F039C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F03A0 */ cpu->lr = cpu->r[0];
|
|
/* 027F03A4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F03A8 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F03AC */ return;
|
|
}
|
|
|
|
// fn_027F03B0 @ 0x27f03b0
|
|
void Gambit_fn_027F03B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F03B0: ; // 0x27f03b0
|
|
/* 027F03B0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F03B4 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 027F03B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F03B4 */ cpu->r[1] = _t0;
|
|
/* 027F03B8 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F03B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F03BC */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 027F03BC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F03C0 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 027F03C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F03C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F03C8 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 027F03CC */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F03CC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F03D0 */ _t5 = cpu->r[31] + 0x00000004u;
|
|
/* 027F03D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F03D4 */ cpu->r[29] = 0x10110000u;
|
|
/* 027F03D8 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F03DC */ cpu->r[29] = cpu->r[29] + 0x00000218u;
|
|
/* 027F03E0 */ cpu->r[0] = cpu->r[0] + 0x0000024Cu;
|
|
/* 027F03E4 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 027F03E4 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 027F03E8 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F03EC */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 027F03EC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F03F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F03F4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F03F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 027F03F8 */ Gambit_fn_027EF328(cpu);
|
|
/* 027F03FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F0400 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0400 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F0400 */ if (_t10) goto L_027F0434; else goto L_027F0404;
|
|
L_027F0404: ; // 0x27f0404
|
|
/* 027F0404 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F0404 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 027F0408 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F040C */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 027F040C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F0410 */ cpu->r[11] = cpu->r[11] + 0x00000248u;
|
|
/* 027F0414 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0414 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F0418 */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0418 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 027F041C */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 027F0420 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 027F0420 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 027F0424 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 027F0428 */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 027F0428 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 027F042C */ Gambit_fn_027EC044(cpu);
|
|
/* 027F0430 */ _t17 = cpu->r[31] + 0x00000008u;
|
|
/* 027F0430 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
L_027F0434: ; // 0x27f0434
|
|
/* 027F0434 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0434 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 027F0438 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F043C */ cpu->r[9] = 0x10110000u;
|
|
/* 027F0440 */ _t19 = cpu->r[31] + 0x00000004u;
|
|
/* 027F0440 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F0444 */ cpu->r[5] = cpu->r[1] + 0x00000038u;
|
|
/* 027F0448 */ cpu->r[9] = cpu->r[9] + 0x0000026Cu;
|
|
/* 027F044C */ _t20 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F044C */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 027F0450 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F0454 */ _t21 = cpu->r[1] + 0x00000038u;
|
|
/* 027F0454 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 027F0458 */ Gambit_fn_027EF3D8(cpu);
|
|
/* 027F045C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F0460 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0460 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F0460 */ if (_t23) goto L_027F0490; else goto L_027F0464;
|
|
L_027F0464: ; // 0x27f0464
|
|
/* 027F0464 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0464 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F0468 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F046C */ _t25 = cpu->r[12] + 0x00000240u;
|
|
/* 027F046C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 027F0470 */ cpu->r[9] = 0x43300000u;
|
|
/* 027F0474 */ cpu->r[10] = cpu->r[11] ^ 0x80000000u;
|
|
/* 027F0478 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0478 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 027F047C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F047C */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
/* 027F0480 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0480 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 027F0484 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027F0488 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 027F048C */ _t29 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F048C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
L_027F0490: ; // 0x27f0490
|
|
/* 027F0490 */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0490 */ rbrew_write32(cpu->mem, _t30, cpu->r[30]);
|
|
/* 027F0494 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F0498 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F049C */ _t31 = cpu->r[31] + 0x00000004u;
|
|
/* 027F049C */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F04A0 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 027F04A4 */ cpu->r[0] = cpu->r[0] + 0x0000025Cu;
|
|
/* 027F04A8 */ _t32 = cpu->r[1] + 0x00000044u;
|
|
/* 027F04A8 */ rbrew_write32(cpu->mem, _t32, cpu->r[29]);
|
|
/* 027F04AC */ cpu->r[6] = 0x00000000u;
|
|
/* 027F04B0 */ _t33 = cpu->r[1] + 0x00000040u;
|
|
/* 027F04B0 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 027F04B4 */ Gambit_fn_027EF3D8(cpu);
|
|
/* 027F04B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F04BC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F04BC */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F04BC */ if (_t35) goto L_027F04EC; else goto L_027F04C0;
|
|
L_027F04C0: ; // 0x27f04c0
|
|
/* 027F04C0 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 027F04C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F04C4 */ cpu->r[8] = 0x10110000u;
|
|
/* 027F04C8 */ _t37 = cpu->r[8] + 0x00000240u;
|
|
/* 027F04C8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 027F04CC */ cpu->r[8] = 0x43300000u;
|
|
/* 027F04D0 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 027F04D4 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 027F04D4 */ rbrew_write32(cpu->mem, _t38, cpu->r[8]);
|
|
/* 027F04D8 */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F04D8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 027F04DC */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 027F04DC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 027F04E0 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027F04E4 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 027F04E8 */ _t41 = cpu->r[31] + 0x00000014u;
|
|
/* 027F04E8 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
L_027F04EC: ; // 0x27f04ec
|
|
/* 027F04EC */ _t42 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F04EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F04F0 */ _t43 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F04F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F04F4 */ _t44 = cpu->r[1] + 0x00000050u;
|
|
/* 027F04F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F04F8 */ cpu->lr = cpu->r[0];
|
|
/* 027F04FC */ _t45 = cpu->r[1] + 0x00000054u;
|
|
/* 027F04FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F0500 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 027F0504 */ return;
|
|
}
|
|
|
|
// fn_027F03B4 @ 0x27f03b4
|
|
void Gambit_fn_027F03B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F03B4: ; // 0x27f03b4
|
|
/* 027F03B4 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 027F03B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F03B4 */ cpu->r[1] = _t0;
|
|
/* 027F03B8 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F03B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F03BC */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 027F03BC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F03C0 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 027F03C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F03C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F03C8 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 027F03CC */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F03CC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F03D0 */ _t5 = cpu->r[31] + 0x00000004u;
|
|
/* 027F03D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F03D4 */ cpu->r[29] = 0x10110000u;
|
|
/* 027F03D8 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F03DC */ cpu->r[29] = cpu->r[29] + 0x00000218u;
|
|
/* 027F03E0 */ cpu->r[0] = cpu->r[0] + 0x0000024Cu;
|
|
/* 027F03E4 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 027F03E4 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 027F03E8 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F03EC */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 027F03EC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F03F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F03F4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F03F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 027F03F8 */ Gambit_fn_027EF328(cpu);
|
|
/* 027F03FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F0400 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0400 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F0400 */ if (_t10) goto L_027F0434; else goto L_027F0404;
|
|
L_027F0404: ; // 0x27f0404
|
|
/* 027F0404 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F0404 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 027F0408 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F040C */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 027F040C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F0410 */ cpu->r[11] = cpu->r[11] + 0x00000248u;
|
|
/* 027F0414 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0414 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F0418 */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0418 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 027F041C */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 027F0420 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 027F0420 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 027F0424 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 027F0428 */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 027F0428 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 027F042C */ Gambit_fn_027EC044(cpu);
|
|
/* 027F0430 */ _t17 = cpu->r[31] + 0x00000008u;
|
|
/* 027F0430 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
L_027F0434: ; // 0x27f0434
|
|
/* 027F0434 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0434 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 027F0438 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F043C */ cpu->r[9] = 0x10110000u;
|
|
/* 027F0440 */ _t19 = cpu->r[31] + 0x00000004u;
|
|
/* 027F0440 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F0444 */ cpu->r[5] = cpu->r[1] + 0x00000038u;
|
|
/* 027F0448 */ cpu->r[9] = cpu->r[9] + 0x0000026Cu;
|
|
/* 027F044C */ _t20 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F044C */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 027F0450 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F0454 */ _t21 = cpu->r[1] + 0x00000038u;
|
|
/* 027F0454 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 027F0458 */ Gambit_fn_027EF3D8(cpu);
|
|
/* 027F045C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F0460 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0460 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F0460 */ if (_t23) goto L_027F0490; else goto L_027F0464;
|
|
L_027F0464: ; // 0x27f0464
|
|
/* 027F0464 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0464 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F0468 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F046C */ _t25 = cpu->r[12] + 0x00000240u;
|
|
/* 027F046C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 027F0470 */ cpu->r[9] = 0x43300000u;
|
|
/* 027F0474 */ cpu->r[10] = cpu->r[11] ^ 0x80000000u;
|
|
/* 027F0478 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0478 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 027F047C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F047C */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
/* 027F0480 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0480 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 027F0484 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027F0488 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 027F048C */ _t29 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F048C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
L_027F0490: ; // 0x27f0490
|
|
/* 027F0490 */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0490 */ rbrew_write32(cpu->mem, _t30, cpu->r[30]);
|
|
/* 027F0494 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F0498 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F049C */ _t31 = cpu->r[31] + 0x00000004u;
|
|
/* 027F049C */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F04A0 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 027F04A4 */ cpu->r[0] = cpu->r[0] + 0x0000025Cu;
|
|
/* 027F04A8 */ _t32 = cpu->r[1] + 0x00000044u;
|
|
/* 027F04A8 */ rbrew_write32(cpu->mem, _t32, cpu->r[29]);
|
|
/* 027F04AC */ cpu->r[6] = 0x00000000u;
|
|
/* 027F04B0 */ _t33 = cpu->r[1] + 0x00000040u;
|
|
/* 027F04B0 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 027F04B4 */ Gambit_fn_027EF3D8(cpu);
|
|
/* 027F04B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F04BC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F04BC */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F04BC */ if (_t35) goto L_027F04EC; else goto L_027F04C0;
|
|
L_027F04C0: ; // 0x27f04c0
|
|
/* 027F04C0 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 027F04C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F04C4 */ cpu->r[8] = 0x10110000u;
|
|
/* 027F04C8 */ _t37 = cpu->r[8] + 0x00000240u;
|
|
/* 027F04C8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 027F04CC */ cpu->r[8] = 0x43300000u;
|
|
/* 027F04D0 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 027F04D4 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 027F04D4 */ rbrew_write32(cpu->mem, _t38, cpu->r[8]);
|
|
/* 027F04D8 */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F04D8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 027F04DC */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 027F04DC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 027F04E0 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027F04E4 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 027F04E8 */ _t41 = cpu->r[31] + 0x00000014u;
|
|
/* 027F04E8 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
L_027F04EC: ; // 0x27f04ec
|
|
/* 027F04EC */ _t42 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F04EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F04F0 */ _t43 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F04F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F04F4 */ _t44 = cpu->r[1] + 0x00000050u;
|
|
/* 027F04F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F04F8 */ cpu->lr = cpu->r[0];
|
|
/* 027F04FC */ _t45 = cpu->r[1] + 0x00000054u;
|
|
/* 027F04FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F0500 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 027F0504 */ return;
|
|
}
|
|
|
|
// fn_027F0508 @ 0x27f0508
|
|
void Gambit_fn_027F0508(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_027F0508: ; // 0x27f0508
|
|
/* 027F0508 */ cpu->r[0] = cpu->lr;
|
|
/* 027F050C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F050C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F050C */ cpu->r[1] = _t0;
|
|
/* 027F0510 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0510 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F0514 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0514 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F0518 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0518 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 027F051C */ cpu->r[28] = cpu->r[4];
|
|
/* 027F0520 */ cpu->r[30] = cpu->r[6];
|
|
/* 027F0524 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F0524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F0528 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0528 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F052C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F052C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F0530 */ cpu->r[29] = cpu->r[5];
|
|
/* 027F0534 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0534 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F0534 */ if (_t7) goto L_027F0538; else goto L_027F0548;
|
|
L_027F0538: ; // 0x27f0538
|
|
/* 027F0538 */ cpu->r[3] = 0x00000020u;
|
|
/* 027F053C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F0540 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F0540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F0544 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0544 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F0544 */ if (_t9) goto L_027F05A4; else goto L_027F0548;
|
|
L_027F0548: ; // 0x27f0548
|
|
/* 027F0548 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F054C */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 027F054C */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 027F0550 */ cpu->r[12] = cpu->r[12] + 0x00000230u;
|
|
/* 027F0554 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F0558 */ _t11 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F0558 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 027F055C */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 027F055C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027F0560 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F0564 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 027F0564 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027F0568 */ _t14 = cpu->r[11] + 0x00003830u;
|
|
/* 027F0568 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F0568 */ cpu->r[11] = _t14;
|
|
/* 027F056C */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F056C */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 027F0570 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 027F0570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F0574 */ _t17 = cpu->r[31] + 0x00000010u;
|
|
/* 027F0574 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 027F0578 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 027F0578 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F057C */ _t19 = cpu->r[31] + 0x00000014u;
|
|
/* 027F057C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 027F0580 */ _t20 = cpu->r[11] + 0x00000004u;
|
|
/* 027F0580 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F0584 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F0588 */ cpu->r[4] = cpu->r[29];
|
|
/* 027F058C */ cpu->r[3] = cpu->r[28];
|
|
/* 027F0590 */ _t21 = cpu->r[31] + 0x00000018u;
|
|
/* 027F0590 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 027F0594 */ Gambit_fn_027EC3C0(cpu);
|
|
/* 027F0598 */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 027F0598 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 027F059C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F05A0 */ Gambit_fn_027F03B0(cpu);
|
|
L_027F05A4: ; // 0x27f05a4
|
|
/* 027F05A4 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 027F05A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F05A8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F05A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F05AC */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F05AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F05B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F05B4 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 027F05B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F05B8 */ cpu->lr = cpu->r[0];
|
|
/* 027F05BC */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 027F05BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F05C0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F05C4 */ return;
|
|
}
|
|
|
|
// fn_027F050C @ 0x27f050c
|
|
void Gambit_fn_027F050C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_027F050C: ; // 0x27f050c
|
|
/* 027F050C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F050C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F050C */ cpu->r[1] = _t0;
|
|
/* 027F0510 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0510 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F0514 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0514 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F0518 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0518 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 027F051C */ cpu->r[28] = cpu->r[4];
|
|
/* 027F0520 */ cpu->r[30] = cpu->r[6];
|
|
/* 027F0524 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F0524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F0528 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0528 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F052C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F052C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F0530 */ cpu->r[29] = cpu->r[5];
|
|
/* 027F0534 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0534 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F0534 */ if (_t7) goto L_027F0538; else goto L_027F0548;
|
|
L_027F0538: ; // 0x27f0538
|
|
/* 027F0538 */ cpu->r[3] = 0x00000020u;
|
|
/* 027F053C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F0540 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F0540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F0544 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0544 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F0544 */ if (_t9) goto L_027F05A4; else goto L_027F0548;
|
|
L_027F0548: ; // 0x27f0548
|
|
/* 027F0548 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F054C */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 027F054C */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 027F0550 */ cpu->r[12] = cpu->r[12] + 0x00000230u;
|
|
/* 027F0554 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F0558 */ _t11 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F0558 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 027F055C */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 027F055C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027F0560 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F0564 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 027F0564 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027F0568 */ _t14 = cpu->r[11] + 0x00003830u;
|
|
/* 027F0568 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F0568 */ cpu->r[11] = _t14;
|
|
/* 027F056C */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F056C */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 027F0570 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 027F0570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F0574 */ _t17 = cpu->r[31] + 0x00000010u;
|
|
/* 027F0574 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 027F0578 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 027F0578 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F057C */ _t19 = cpu->r[31] + 0x00000014u;
|
|
/* 027F057C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 027F0580 */ _t20 = cpu->r[11] + 0x00000004u;
|
|
/* 027F0580 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F0584 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F0588 */ cpu->r[4] = cpu->r[29];
|
|
/* 027F058C */ cpu->r[3] = cpu->r[28];
|
|
/* 027F0590 */ _t21 = cpu->r[31] + 0x00000018u;
|
|
/* 027F0590 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 027F0594 */ Gambit_fn_027EC3C0(cpu);
|
|
/* 027F0598 */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 027F0598 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 027F059C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F05A0 */ Gambit_fn_027F03B0(cpu);
|
|
L_027F05A4: ; // 0x27f05a4
|
|
/* 027F05A4 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 027F05A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F05A8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F05A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F05AC */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F05AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F05B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F05B4 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 027F05B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F05B8 */ cpu->lr = cpu->r[0];
|
|
/* 027F05BC */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 027F05BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F05C0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F05C4 */ return;
|
|
}
|
|
|
|
// fn_027F05C8 @ 0x27f05c8
|
|
void Gambit_fn_027F05C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52;
|
|
|
|
L_027F05C8: ; // 0x27f05c8
|
|
/* 027F05C8 */ cpu->r[0] = cpu->lr;
|
|
/* 027F05CC */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 027F05CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F05CC */ cpu->r[1] = _t0;
|
|
/* 027F05D0 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 027F05D0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 027F05D4 */ /* nop */
|
|
/* 027F05D8 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 027F05D8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F05DC */ /* nop */
|
|
/* 027F05E0 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 027F05E0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 027F05E4 */ _t4 = cpu->r[1] + 0x00000048u;
|
|
/* 027F05E4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 027F05E8 */ _t5 = cpu->r[1] + 0x00000054u;
|
|
/* 027F05E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F05EC */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F05EC */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 027F05F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F05F4 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 027F05F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F05F8 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F05FC */ Gambit_fn_027EE7DC(cpu);
|
|
/* 027F0600 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F0604 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 027F0604 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F0608 */ _t9 = cpu->r[10] + 0x00000280u;
|
|
/* 027F0608 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t9);
|
|
/* 027F060C */ cpu->r[0] = 0x43300000u;
|
|
/* 027F0610 */ _t10 = cpu->r[4] + 0x000000ACu;
|
|
/* 027F0610 */ cpu->r[12] = rbrew_read16(cpu->mem, _t10);
|
|
/* 027F0614 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0614 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027F0618 */ _t12 = cpu->r[4] + 0x000000AEu;
|
|
/* 027F0618 */ cpu->r[0] = rbrew_read16(cpu->mem, _t12);
|
|
/* 027F061C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F061C */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 027F0620 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0620 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t14);
|
|
/* 027F0624 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0624 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027F0628 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0628 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 027F062C */ cpu->f[11] = cpu->f[12] - cpu->f[0];
|
|
/* 027F0630 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 027F0634 */ cpu->f[31] = (double)(float)cpu->f[11];
|
|
/* 027F0638 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F063C */ cpu->f[30] = (double)(float)cpu->f[12];
|
|
/* 027F0640 */ Gambit_fn_027EE878(cpu);
|
|
/* 027F0644 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 027F0644 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F0648 */ _t18 = cpu->r[3] + 0x000000CCu;
|
|
/* 027F0648 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18);
|
|
/* 027F064C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 027F0650 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0650 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F0650 */ if (_t20) goto L_027F0654; else goto L_027F06B0;
|
|
L_027F0654: ; // 0x27f0654
|
|
/* 027F0654 */ _t21 = cpu->r[3] + 0x000000CDu;
|
|
/* 027F0654 */ cpu->r[10] = rbrew_read8(cpu->mem, _t21);
|
|
/* 027F0658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F065C */ cpu->r[11] = 0x00000000u;
|
|
/* 027F0660 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0660 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F0660 */ if (_t23) goto L_027F066C; else goto L_027F0664;
|
|
L_027F0664: ; // 0x27f0664
|
|
/* 027F0664 */ _t24 = cpu->r[3] + 0x000000D0u;
|
|
/* 027F0664 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F0668 */ _t25 = cpu->r[12] + 0x00000004u;
|
|
/* 027F0668 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
L_027F066C: ; // 0x27f066c
|
|
/* 027F066C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F0674 */ _t26 = cpu->r[12] + 0x00000288u;
|
|
/* 027F0674 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F0678 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0678 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F0678 */ if (_t28) goto L_027F06B0; else goto L_027F067C;
|
|
L_027F067C: ; // 0x27f067c
|
|
/* 027F067C */ _t29 = cpu->r[11] + 0x0000000Au;
|
|
/* 027F067C */ cpu->r[0] = rbrew_read16(cpu->mem, _t29);
|
|
/* 027F0680 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000010u, 0x00000011u);
|
|
/* 027F0680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F0684 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0684 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F0684 */ if (_t31) goto L_027F06B0; else goto L_027F0688;
|
|
L_027F0688: ; // 0x27f0688
|
|
/* 027F0688 */ _t32 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F0688 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F068C */ cpu->r[10] = 0x10110000u;
|
|
/* 027F0690 */ _t33 = cpu->r[10] + 0x00000280u;
|
|
/* 027F0690 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 027F0694 */ _t34 = cpu->r[9] + 0x00000004u;
|
|
/* 027F0694 */ cpu->r[0] = rbrew_read16(cpu->mem, _t34);
|
|
/* 027F0698 */ cpu->r[12] = 0x43300000u;
|
|
/* 027F069C */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 027F069C */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 027F06A0 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F06A0 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 027F06A4 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 027F06A4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 027F06A8 */ cpu->f[13] = cpu->f[0] - cpu->f[13];
|
|
/* 027F06AC */ cpu->f[31] = (double)(float)cpu->f[13];
|
|
L_027F06B0: ; // 0x27f06b0
|
|
/* 027F06B0 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F06B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 027F06B4 */ cpu->f[12] = cpu->f[13] + cpu->f[31];
|
|
/* 027F06B8 */ cpu->f[0] = cpu->f[12] + cpu->f[30];
|
|
/* 027F06BC */ _t39 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F06BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 027F06C0 */ cpu->f[0] = cpu->f[0] + cpu->f[12];
|
|
/* 027F06C4 */ _t40 = cpu->r[31] + 0x00000014u;
|
|
/* 027F06C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 027F06C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 027F06CC */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F06CC */ _t42 = _t41 & 0x00000001u;
|
|
/* 027F06CC */ if (_t42) goto L_027F06E0; else goto L_027F06D0;
|
|
L_027F06D0: ; // 0x27f06d0
|
|
/* 027F06D0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F06D4 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 027F06D4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 027F06D8 */ Gambit_fn_027EE858(cpu);
|
|
/* 027F06DC */ goto L_027F06EC;
|
|
L_027F06E0: ; // 0x27f06e0
|
|
/* 027F06E0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F06E4 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 027F06E4 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 027F06E8 */ Gambit_fn_027EE858(cpu);
|
|
L_027F06EC: ; // 0x27f06ec
|
|
/* 027F06EC */ _t45 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F06EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F06F0 */ _t46 = cpu->r[1] + 0x00000048u;
|
|
/* 027F06F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 027F06F4 */ _t47 = cpu->r[1] + 0x00000038u;
|
|
/* 027F06F4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 027F06F8 */ _t48 = cpu->r[1] + 0x00000040u;
|
|
/* 027F06F8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 027F06FC */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 027F06FC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 027F0700 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0700 */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F0700 */ if (_t51) goto L_027F0704; // else: addr-0 trap, fall-through
|
|
L_027F0704: ; // 0x27f0704
|
|
/* 027F0704 */ _t52 = cpu->r[1] + 0x00000054u;
|
|
/* 027F0704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F0708 */ cpu->lr = cpu->r[0];
|
|
/* 027F070C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F0710 */ return;
|
|
}
|
|
|
|
// fn_027F05CC @ 0x27f05cc
|
|
void Gambit_fn_027F05CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52;
|
|
|
|
L_027F05CC: ; // 0x27f05cc
|
|
/* 027F05CC */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 027F05CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F05CC */ cpu->r[1] = _t0;
|
|
/* 027F05D0 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 027F05D0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 027F05D4 */ /* nop */
|
|
/* 027F05D8 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 027F05D8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F05DC */ /* nop */
|
|
/* 027F05E0 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 027F05E0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 027F05E4 */ _t4 = cpu->r[1] + 0x00000048u;
|
|
/* 027F05E4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 027F05E8 */ _t5 = cpu->r[1] + 0x00000054u;
|
|
/* 027F05E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F05EC */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F05EC */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 027F05F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F05F4 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 027F05F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F05F8 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F05FC */ Gambit_fn_027EE7DC(cpu);
|
|
/* 027F0600 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F0604 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 027F0604 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F0608 */ _t9 = cpu->r[10] + 0x00000280u;
|
|
/* 027F0608 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t9);
|
|
/* 027F060C */ cpu->r[0] = 0x43300000u;
|
|
/* 027F0610 */ _t10 = cpu->r[4] + 0x000000ACu;
|
|
/* 027F0610 */ cpu->r[12] = rbrew_read16(cpu->mem, _t10);
|
|
/* 027F0614 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0614 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027F0618 */ _t12 = cpu->r[4] + 0x000000AEu;
|
|
/* 027F0618 */ cpu->r[0] = rbrew_read16(cpu->mem, _t12);
|
|
/* 027F061C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F061C */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 027F0620 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0620 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t14);
|
|
/* 027F0624 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0624 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027F0628 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0628 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 027F062C */ cpu->f[11] = cpu->f[12] - cpu->f[0];
|
|
/* 027F0630 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 027F0634 */ cpu->f[31] = (double)(float)cpu->f[11];
|
|
/* 027F0638 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F063C */ cpu->f[30] = (double)(float)cpu->f[12];
|
|
/* 027F0640 */ Gambit_fn_027EE878(cpu);
|
|
/* 027F0644 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 027F0644 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F0648 */ _t18 = cpu->r[3] + 0x000000CCu;
|
|
/* 027F0648 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18);
|
|
/* 027F064C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 027F0650 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0650 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F0650 */ if (_t20) goto L_027F0654; else goto L_027F06B0;
|
|
L_027F0654: ; // 0x27f0654
|
|
/* 027F0654 */ _t21 = cpu->r[3] + 0x000000CDu;
|
|
/* 027F0654 */ cpu->r[10] = rbrew_read8(cpu->mem, _t21);
|
|
/* 027F0658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F065C */ cpu->r[11] = 0x00000000u;
|
|
/* 027F0660 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0660 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F0660 */ if (_t23) goto L_027F066C; else goto L_027F0664;
|
|
L_027F0664: ; // 0x27f0664
|
|
/* 027F0664 */ _t24 = cpu->r[3] + 0x000000D0u;
|
|
/* 027F0664 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F0668 */ _t25 = cpu->r[12] + 0x00000004u;
|
|
/* 027F0668 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
L_027F066C: ; // 0x27f066c
|
|
/* 027F066C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F0674 */ _t26 = cpu->r[12] + 0x00000288u;
|
|
/* 027F0674 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F0678 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0678 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F0678 */ if (_t28) goto L_027F06B0; else goto L_027F067C;
|
|
L_027F067C: ; // 0x27f067c
|
|
/* 027F067C */ _t29 = cpu->r[11] + 0x0000000Au;
|
|
/* 027F067C */ cpu->r[0] = rbrew_read16(cpu->mem, _t29);
|
|
/* 027F0680 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000010u, 0x00000011u);
|
|
/* 027F0680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F0684 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0684 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F0684 */ if (_t31) goto L_027F06B0; else goto L_027F0688;
|
|
L_027F0688: ; // 0x27f0688
|
|
/* 027F0688 */ _t32 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F0688 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F068C */ cpu->r[10] = 0x10110000u;
|
|
/* 027F0690 */ _t33 = cpu->r[10] + 0x00000280u;
|
|
/* 027F0690 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 027F0694 */ _t34 = cpu->r[9] + 0x00000004u;
|
|
/* 027F0694 */ cpu->r[0] = rbrew_read16(cpu->mem, _t34);
|
|
/* 027F0698 */ cpu->r[12] = 0x43300000u;
|
|
/* 027F069C */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 027F069C */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 027F06A0 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F06A0 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 027F06A4 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 027F06A4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 027F06A8 */ cpu->f[13] = cpu->f[0] - cpu->f[13];
|
|
/* 027F06AC */ cpu->f[31] = (double)(float)cpu->f[13];
|
|
L_027F06B0: ; // 0x27f06b0
|
|
/* 027F06B0 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F06B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 027F06B4 */ cpu->f[12] = cpu->f[13] + cpu->f[31];
|
|
/* 027F06B8 */ cpu->f[0] = cpu->f[12] + cpu->f[30];
|
|
/* 027F06BC */ _t39 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F06BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 027F06C0 */ cpu->f[0] = cpu->f[0] + cpu->f[12];
|
|
/* 027F06C4 */ _t40 = cpu->r[31] + 0x00000014u;
|
|
/* 027F06C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 027F06C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 027F06CC */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F06CC */ _t42 = _t41 & 0x00000001u;
|
|
/* 027F06CC */ if (_t42) goto L_027F06E0; else goto L_027F06D0;
|
|
L_027F06D0: ; // 0x27f06d0
|
|
/* 027F06D0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F06D4 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 027F06D4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 027F06D8 */ Gambit_fn_027EE858(cpu);
|
|
/* 027F06DC */ goto L_027F06EC;
|
|
L_027F06E0: ; // 0x27f06e0
|
|
/* 027F06E0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F06E4 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 027F06E4 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 027F06E8 */ Gambit_fn_027EE858(cpu);
|
|
L_027F06EC: ; // 0x27f06ec
|
|
/* 027F06EC */ _t45 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F06EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F06F0 */ _t46 = cpu->r[1] + 0x00000048u;
|
|
/* 027F06F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 027F06F4 */ _t47 = cpu->r[1] + 0x00000038u;
|
|
/* 027F06F4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 027F06F8 */ _t48 = cpu->r[1] + 0x00000040u;
|
|
/* 027F06F8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 027F06FC */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 027F06FC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 027F0700 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0700 */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F0700 */ if (_t51) goto L_027F0704; // else: addr-0 trap, fall-through
|
|
L_027F0704: ; // 0x27f0704
|
|
/* 027F0704 */ _t52 = cpu->r[1] + 0x00000054u;
|
|
/* 027F0704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F0708 */ cpu->lr = cpu->r[0];
|
|
/* 027F070C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F0710 */ return;
|
|
}
|
|
|
|
// fn_027F0714 @ 0x27f0714
|
|
void Gambit_fn_027F0714(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_027F0714: ; // 0x27f0714
|
|
/* 027F0714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F0718 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0718 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F0718 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F0718 */ goto L_027F071C;
|
|
L_027F071C: ; // 0x27f071c
|
|
/* 027F071C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F071C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F0720 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0720 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F0720 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F0720 */ goto L_027F0724;
|
|
L_027F0724: ; // 0x27f0724
|
|
/* 027F0724 */ 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_027F0728 @ 0x27f0728
|
|
void Gambit_fn_027F0728(CPUState* cpu) {
|
|
L_027F0728: ; // 0x27f0728
|
|
/* 027F0728 */ return;
|
|
}
|
|
|
|
// fn_027F072C @ 0x27f072c
|
|
void Gambit_fn_027F072C(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_027F072C: ; // 0x27f072c
|
|
/* 027F072C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027F072C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 027F0730 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 027F0734 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0734 */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F0734 */ if (_t2) goto L_027F0738; else goto L_027F0740;
|
|
L_027F0738: ; // 0x27f0738
|
|
/* 027F0738 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F073C */ return;
|
|
L_027F0740: ; // 0x27f0740
|
|
/* 027F0740 */ cpu->f[10] = cpu->f[1] - cpu->f[9];
|
|
/* 027F0744 */ cpu->f[0] = fabs(cpu->f[10]);
|
|
/* 027F0748 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[4]);
|
|
/* 027F074C */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F074C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F074C */ if (_t4) goto L_027F075C; else goto L_027F0750;
|
|
L_027F0750: ; // 0x27f0750
|
|
/* 027F0750 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 027F0750 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 027F0754 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F0758 */ return;
|
|
L_027F075C: ; // 0x27f075c
|
|
/* 027F075C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0760 */ _t6 = cpu->r[12] + 0x0000028Cu;
|
|
/* 027F0760 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027F0764 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 027F0768 */ cpu->f[13] = cpu->f[10] * cpu->f[2];
|
|
/* 027F076C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F076C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F076C */ if (_t8) goto L_027F0770; else goto L_027F07B4;
|
|
L_027F0770: ; // 0x27f0770
|
|
/* 027F0770 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[4]);
|
|
/* 027F0774 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0774 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F0774 */ if (_t10) goto L_027F0778; else goto L_027F0790;
|
|
L_027F0778: ; // 0x27f0778
|
|
/* 027F0778 */ cpu->f[9] = cpu->f[9] + cpu->f[4];
|
|
/* 027F077C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 027F0780 */ /* nop */
|
|
/* 027F0784 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 027F0784 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[9]);
|
|
/* 027F0788 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F078C */ return;
|
|
L_027F0790: ; // 0x27f0790
|
|
/* 027F0790 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[3]);
|
|
/* 027F0794 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F0794 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F0794 */ if (_t13) goto L_027F0798; else goto L_027F079C;
|
|
L_027F0798: ; // 0x27f0798
|
|
/* 027F0798 */ cpu->f[13] = cpu->f[3];
|
|
L_027F079C: ; // 0x27f079c
|
|
/* 027F079C */ cpu->f[9] = cpu->f[9] + cpu->f[13];
|
|
/* 027F07A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 027F07A4 */ /* nop */
|
|
/* 027F07A8 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 027F07A8 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[9]);
|
|
/* 027F07AC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F07B0 */ return;
|
|
L_027F07B4: ; // 0x27f07b4
|
|
/* 027F07B4 */ cpu->f[11] = -cpu->f[3];
|
|
/* 027F07B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[11]);
|
|
/* 027F07BC */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F07BC */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F07BC */ if (_t16) goto L_027F07C0; else goto L_027F07C8;
|
|
L_027F07C0: ; // 0x27f07c0
|
|
/* 027F07C0 */ cpu->f[13] = -cpu->f[3];
|
|
/* 027F07C4 */ goto L_027F07D8;
|
|
L_027F07C8: ; // 0x27f07c8
|
|
/* 027F07C8 */ cpu->f[12] = -cpu->f[4];
|
|
/* 027F07CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[12]);
|
|
/* 027F07D0 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F07D0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F07D0 */ if (_t18) goto L_027F07D4; else goto L_027F07D8;
|
|
L_027F07D4: ; // 0x27f07d4
|
|
/* 027F07D4 */ cpu->f[13] = -cpu->f[4];
|
|
L_027F07D8: ; // 0x27f07d8
|
|
/* 027F07D8 */ cpu->f[9] = cpu->f[9] + cpu->f[13];
|
|
/* 027F07DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 027F07E0 */ /* nop */
|
|
/* 027F07E4 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 027F07E4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[9]);
|
|
/* 027F07E8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F07EC */ return;
|
|
}
|
|
|
|
// fn_027F07F0 @ 0x27f07f0
|
|
void Gambit_fn_027F07F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93;
|
|
|
|
L_027F07F0: ; // 0x27f07f0
|
|
/* 027F07F0 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 027F07F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F07F0 */ cpu->r[1] = _t0;
|
|
/* 027F07F4 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F07F4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 027F07F8 */ /* nop */
|
|
/* 027F07FC */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 027F07FC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 027F0800 */ cpu->r[0] = cpu->lr;
|
|
/* 027F0804 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0804 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[28]);
|
|
/* 027F0808 */ cpu->f[28] = cpu->f[1];
|
|
/* 027F080C */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0810 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 027F0810 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]);
|
|
/* 027F0814 */ /* nop */
|
|
/* 027F0818 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F081C */ _t5 = cpu->r[11] + 0x000002A4u;
|
|
/* 027F081C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027F0820 */ /* nop */
|
|
/* 027F0824 */ _t6 = cpu->r[9] + 0x000002A8u;
|
|
/* 027F0824 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027F0828 */ cpu->f[9] = cpu->f[28] * cpu->f[10];
|
|
/* 027F082C */ _t7 = cpu->r[1] + 0x00000040u;
|
|
/* 027F082C */ rbrew_write_f64(cpu->mem, _t7, cpu->f[31]);
|
|
/* 027F0830 */ _t8 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0830 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 027F0834 */ /* nop */
|
|
/* 027F0838 */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 027F0838 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 027F083C */ cpu->f[1] = cpu->f[9] * cpu->f[12];
|
|
/* 027F0840 */ _t10 = cpu->r[1] + 0x00000048u;
|
|
/* 027F0840 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 027F0844 */ cpu->f[30] = cpu->f[2];
|
|
/* 027F0848 */ _t11 = cpu->r[1] + 0x00000054u;
|
|
/* 027F0848 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027F084C */ Gambit_fn_02C898C4(cpu);
|
|
/* 027F0850 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0854 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0858 */ _t12 = cpu->r[11] + 0x000002ACu;
|
|
/* 027F0858 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027F085C */ cpu->r[9] = 0x10110000u;
|
|
/* 027F0860 */ _t13 = cpu->r[12] + 0x00000298u;
|
|
/* 027F0860 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 027F0864 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0868 */ _t14 = cpu->r[9] + 0x000002B0u;
|
|
/* 027F0868 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027F086C */ cpu->r[10] = 0x10110000u;
|
|
/* 027F0870 */ _t15 = cpu->r[12] + 0x000002B4u;
|
|
/* 027F0870 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027F0874 */ cpu->r[10] = cpu->r[10] + 0x000053A0u;
|
|
/* 027F0878 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[28], cpu->f[31]);
|
|
/* 027F087C */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 027F0880 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 027F0884 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0884 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 027F0888 */ cpu->r[12] = cpu->r[10] + cpu->r[0];
|
|
/* 027F088C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F088C */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F088C */ if (_t18) goto L_027F0890; else goto L_027F0998;
|
|
L_027F0890: ; // 0x27f0890
|
|
/* 027F0890 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F0894 */ cpu->r[0] = 0x43300000u;
|
|
/* 027F0898 */ _t19 = cpu->r[10] + 0x000002B8u;
|
|
/* 027F0898 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t19);
|
|
/* 027F089C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027F089C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 027F08A0 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 027F08A0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t21);
|
|
/* 027F08A4 */ cpu->f[10] = cpu->f[13] - cpu->f[0];
|
|
/* 027F08A8 */ _t22 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F08A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 027F08AC */ cpu->r[9] = 0x10110000u;
|
|
/* 027F08B0 */ cpu->f[9] = (double)(float)cpu->f[10];
|
|
/* 027F08B4 */ _t23 = cpu->r[9] + 0x000002C0u;
|
|
/* 027F08B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027F08B8 */ cpu->f[11] = cpu->f[12] * cpu->f[9];
|
|
/* 027F08BC */ _t24 = cpu->r[12] + 0x00000008u;
|
|
/* 027F08BC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 027F08C0 */ cpu->f[13] = fma(cpu->f[11], cpu->f[13], cpu->f[10]);
|
|
/* 027F08C4 */ cpu->f[1] = cpu->f[29] - cpu->f[13];
|
|
/* 027F08C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[7]);
|
|
/* 027F08CC */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F08CC */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F08CC */ if (_t26) goto L_027F08D0; else goto L_027F0960;
|
|
L_027F08D0: ; // 0x27f08d0
|
|
/* 027F08D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[7]);
|
|
/* 027F08D4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F08D4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F08D4 */ if (_t28) goto L_027F08D8; else goto L_027F091C;
|
|
L_027F08D8: ; // 0x27f08d8
|
|
/* 027F08D8 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 027F08D8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 027F08DC */ /* nop */
|
|
/* 027F08E0 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 027F08E0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 027F08E4 */ cpu->f[12] = -cpu->f[30];
|
|
/* 027F08E8 */ _t31 = cpu->r[1] + 0x00000038u;
|
|
/* 027F08E8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 027F08EC */ _t32 = cpu->r[1] + 0x00000020u;
|
|
/* 027F08EC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 027F08F0 */ /* nop */
|
|
/* 027F08F4 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 027F08F4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 027F08F8 */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 027F08F8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 027F08FC */ cpu->f[1] = cpu->f[1] * cpu->f[31];
|
|
/* 027F0900 */ _t35 = cpu->r[1] + 0x00000048u;
|
|
/* 027F0900 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 027F0904 */ _t36 = cpu->r[1] + 0x00000040u;
|
|
/* 027F0904 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 027F0908 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0908 */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F0908 */ if (_t38) goto L_027F090C; // else: addr-0 trap, fall-through
|
|
L_027F090C: ; // 0x27f090c
|
|
/* 027F090C */ _t39 = cpu->r[1] + 0x00000054u;
|
|
/* 027F090C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F0910 */ cpu->lr = cpu->r[0];
|
|
/* 027F0914 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F0918 */ return;
|
|
L_027F091C: ; // 0x27f091c
|
|
/* 027F091C */ Gambit_fn_02827650(cpu);
|
|
/* 027F0920 */ cpu->f[1] = cpu->f[1] * cpu->f[30];
|
|
/* 027F0924 */ Gambit_fn_02827584(cpu);
|
|
/* 027F0928 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0928 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 027F092C */ cpu->f[1] = cpu->f[1] * cpu->f[31];
|
|
/* 027F0930 */ _t41 = cpu->r[1] + 0x00000048u;
|
|
/* 027F0930 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027F0934 */ _t42 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0934 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 027F0938 */ _t43 = cpu->r[1] + 0x00000040u;
|
|
/* 027F0938 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 027F093C */ _t44 = cpu->r[1] + 0x00000020u;
|
|
/* 027F093C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t44);
|
|
/* 027F0940 */ _t45 = cpu->r[1] + 0x00000038u;
|
|
/* 027F0940 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 027F0944 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0944 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t46);
|
|
/* 027F0948 */ _t47 = cpu->r[1] + 0x00000030u;
|
|
/* 027F0948 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t47);
|
|
/* 027F094C */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F094C */ _t49 = _t48 & 0x00000001u;
|
|
/* 027F094C */ if (_t49) goto L_027F0950; // else: addr-0 trap, fall-through
|
|
L_027F0950: ; // 0x27f0950
|
|
/* 027F0950 */ _t50 = cpu->r[1] + 0x00000054u;
|
|
/* 027F0950 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027F0954 */ cpu->lr = cpu->r[0];
|
|
/* 027F0958 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F095C */ return;
|
|
L_027F0960: ; // 0x27f0960
|
|
/* 027F0960 */ _t51 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0960 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 027F0964 */ _t52 = cpu->r[1] + 0x00000048u;
|
|
/* 027F0964 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 027F0968 */ _t53 = cpu->r[1] + 0x00000020u;
|
|
/* 027F0968 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 027F096C */ _t54 = cpu->r[1] + 0x00000040u;
|
|
/* 027F096C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t54);
|
|
/* 027F0970 */ _t55 = cpu->r[1] + 0x00000038u;
|
|
/* 027F0970 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 027F0974 */ _t56 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0974 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 027F0978 */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 027F0978 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 027F097C */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 027F097C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 027F0980 */ cpu->f[1] = cpu->f[7];
|
|
/* 027F0984 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0984 */ _t60 = _t59 & 0x00000001u;
|
|
/* 027F0984 */ if (_t60) goto L_027F0988; // else: addr-0 trap, fall-through
|
|
L_027F0988: ; // 0x27f0988
|
|
/* 027F0988 */ _t61 = cpu->r[1] + 0x00000054u;
|
|
/* 027F0988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F098C */ cpu->lr = cpu->r[0];
|
|
/* 027F0990 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F0994 */ return;
|
|
L_027F0998: ; // 0x27f0998
|
|
/* 027F0998 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F099C */ cpu->r[0] = 0x43300000u;
|
|
/* 027F09A0 */ _t62 = cpu->r[11] + 0x000002B8u;
|
|
/* 027F09A0 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 027F09A4 */ _t63 = cpu->r[1] + 0x00000008u;
|
|
/* 027F09A4 */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 027F09A8 */ _t64 = cpu->r[1] + 0x00000008u;
|
|
/* 027F09A8 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t64);
|
|
/* 027F09AC */ cpu->f[11] = cpu->f[10] - cpu->f[11];
|
|
/* 027F09B0 */ _t65 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F09B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 027F09B4 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F09B8 */ cpu->f[0] = (double)(float)cpu->f[11];
|
|
/* 027F09BC */ _t66 = cpu->r[10] + 0x000002C0u;
|
|
/* 027F09BC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 027F09C0 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 027F09C4 */ _t67 = cpu->r[12] + 0x00000008u;
|
|
/* 027F09C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 027F09C8 */ cpu->f[9] = fma(cpu->f[12], cpu->f[9], cpu->f[0]);
|
|
/* 027F09CC */ cpu->f[1] = cpu->f[9] + cpu->f[29];
|
|
/* 027F09D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[7]);
|
|
/* 027F09D4 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F09D4 */ _t69 = _t68 & 0x00000001u;
|
|
/* 027F09D4 */ if (_t69) goto L_027F09D8; else goto L_027F0A3C;
|
|
L_027F09D8: ; // 0x27f09d8
|
|
/* 027F09D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[7]);
|
|
/* 027F09DC */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F09DC */ _t71 = _t70 & 0x00000001u;
|
|
/* 027F09DC */ if (_t71) goto L_027F09E0; else goto L_027F0A28;
|
|
L_027F09E0: ; // 0x27f09e0
|
|
/* 027F09E0 */ cpu->f[11] = -cpu->f[30];
|
|
/* 027F09E4 */ _t72 = cpu->r[1] + 0x00000018u;
|
|
/* 027F09E4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 027F09E8 */ /* nop */
|
|
/* 027F09EC */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 027F09EC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t73);
|
|
/* 027F09F0 */ /* nop */
|
|
/* 027F09F4 */ _t74 = cpu->r[1] + 0x00000038u;
|
|
/* 027F09F4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 027F09F8 */ cpu->f[12] = cpu->f[29] - cpu->f[1];
|
|
/* 027F09FC */ _t75 = cpu->r[1] + 0x00000028u;
|
|
/* 027F09FC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 027F0A00 */ _t76 = cpu->r[1] + 0x00000030u;
|
|
/* 027F0A00 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t76);
|
|
/* 027F0A04 */ cpu->f[1] = fma(cpu->f[12], cpu->f[31], cpu->f[31]);
|
|
/* 027F0A08 */ _t77 = cpu->r[1] + 0x00000048u;
|
|
/* 027F0A08 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 027F0A0C */ _t78 = cpu->r[1] + 0x00000020u;
|
|
/* 027F0A0C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 027F0A10 */ _t79 = cpu->r[1] + 0x00000040u;
|
|
/* 027F0A10 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t79);
|
|
/* 027F0A14 */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0A14 */ _t81 = _t80 & 0x00000001u;
|
|
/* 027F0A14 */ if (_t81) goto L_027F0A18; // else: addr-0 trap, fall-through
|
|
L_027F0A18: ; // 0x27f0a18
|
|
/* 027F0A18 */ _t82 = cpu->r[1] + 0x00000054u;
|
|
/* 027F0A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F0A1C */ cpu->lr = cpu->r[0];
|
|
/* 027F0A20 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F0A24 */ return;
|
|
L_027F0A28: ; // 0x27f0a28
|
|
/* 027F0A28 */ Gambit_fn_02827650(cpu);
|
|
/* 027F0A2C */ cpu->f[1] = cpu->f[1] * cpu->f[30];
|
|
/* 027F0A30 */ Gambit_fn_02827584(cpu);
|
|
/* 027F0A34 */ cpu->f[12] = cpu->f[29] - cpu->f[1];
|
|
/* 027F0A38 */ cpu->f[29] = fma(cpu->f[12], cpu->f[31], cpu->f[31]);
|
|
L_027F0A3C: ; // 0x27f0a3c
|
|
/* 027F0A3C */ _t83 = cpu->r[1] + 0x00000048u;
|
|
/* 027F0A3C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 027F0A40 */ cpu->f[1] = cpu->f[29];
|
|
/* 027F0A44 */ _t84 = cpu->r[1] + 0x00000038u;
|
|
/* 027F0A44 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 027F0A48 */ _t85 = cpu->r[1] + 0x00000040u;
|
|
/* 027F0A48 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t85);
|
|
/* 027F0A4C */ _t86 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0A4C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 027F0A50 */ _t87 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0A50 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 027F0A54 */ _t88 = cpu->r[1] + 0x00000030u;
|
|
/* 027F0A54 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 027F0A58 */ _t89 = cpu->r[1] + 0x00000020u;
|
|
/* 027F0A58 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 027F0A5C */ _t90 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0A5C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t90);
|
|
/* 027F0A60 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0A60 */ _t92 = _t91 & 0x00000001u;
|
|
/* 027F0A60 */ if (_t92) goto L_027F0A64; // else: addr-0 trap, fall-through
|
|
L_027F0A64: ; // 0x27f0a64
|
|
/* 027F0A64 */ _t93 = cpu->r[1] + 0x00000054u;
|
|
/* 027F0A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 027F0A68 */ cpu->lr = cpu->r[0];
|
|
/* 027F0A6C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F0A70 */ return;
|
|
}
|
|
|
|
// fn_027F0A74 @ 0x27f0a74
|
|
void Gambit_fn_027F0A74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _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_027F0A74: ; // 0x27f0a74
|
|
/* 027F0A74 */ cpu->r[0] = cpu->lr;
|
|
/* 027F0A78 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F0A78 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F0A7C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0A80 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F0A80 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F0A80 */ cpu->r[1] = _t1;
|
|
/* 027F0A84 */ _t2 = cpu->r[12] + 0x000002ACu;
|
|
/* 027F0A84 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027F0A88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 027F0A8C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0A8C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F0A8C */ if (_t4) goto L_027F0A90; else goto L_027F0B04;
|
|
L_027F0A90: ; // 0x27f0a90
|
|
/* 027F0A90 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0A94 */ _t5 = cpu->r[12] + 0x000002C8u;
|
|
/* 027F0A94 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027F0A98 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0A9C */ _t6 = cpu->r[12] + 0x000002C4u;
|
|
/* 027F0A9C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027F0AA0 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0AA4 */ cpu->f[11] = fma(cpu->f[11], cpu->f[13], cpu->f[9]);
|
|
/* 027F0AA8 */ _t7 = cpu->r[11] + 0x000002CCu;
|
|
/* 027F0AA8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027F0AAC */ cpu->f[1] = cpu->f[11] * cpu->f[8];
|
|
/* 027F0AB0 */ Gambit_fn_02C898C4(cpu);
|
|
/* 027F0AB4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 027F0AB8 */ cpu->r[12] = 0x43300000u;
|
|
/* 027F0ABC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0ABC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027F0AC0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 027F0AC4 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0AC8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0AC8 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027F0ACC */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0AD0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0AD0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 027F0AD4 */ cpu->r[12] = cpu->r[12] + 0x000053A0u;
|
|
/* 027F0AD8 */ _t11 = cpu->r[11] + 0x000002B8u;
|
|
/* 027F0AD8 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t11);
|
|
/* 027F0ADC */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 027F0AE0 */ cpu->f[0] = cpu->f[13] - cpu->f[10];
|
|
/* 027F0AE4 */ _t12 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F0AE4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027F0AE8 */ cpu->f[8] = (double)(float)cpu->f[0];
|
|
/* 027F0AEC */ _t13 = cpu->r[11] + 0x00000008u;
|
|
/* 027F0AEC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 027F0AF0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0AF4 */ cpu->f[9] = cpu->f[10] * cpu->f[8];
|
|
/* 027F0AF8 */ _t14 = cpu->r[12] + 0x000002C0u;
|
|
/* 027F0AF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027F0AFC */ cpu->f[1] = fma(cpu->f[9], cpu->f[0], cpu->f[12]);
|
|
/* 027F0B00 */ goto L_027F0B88;
|
|
L_027F0B04: ; // 0x27f0b04
|
|
/* 027F0B04 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0B08 */ _t15 = cpu->r[11] + 0x00000298u;
|
|
/* 027F0B08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027F0B0C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 027F0B10 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F0B10 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F0B10 */ if (_t17) goto L_027F0B14; else goto L_027F0B18;
|
|
L_027F0B14: ; // 0x27f0b14
|
|
/* 027F0B14 */ cpu->f[1] = cpu->f[12];
|
|
L_027F0B18: ; // 0x27f0b18
|
|
/* 027F0B18 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0B1C */ _t18 = cpu->r[12] + 0x000002C8u;
|
|
/* 027F0B1C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 027F0B20 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0B24 */ _t19 = cpu->r[12] + 0x000002C4u;
|
|
/* 027F0B24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 027F0B28 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0B2C */ cpu->f[11] = fma(cpu->f[11], cpu->f[1], cpu->f[9]);
|
|
/* 027F0B30 */ _t20 = cpu->r[11] + 0x000002CCu;
|
|
/* 027F0B30 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 027F0B34 */ cpu->f[1] = cpu->f[11] * cpu->f[8];
|
|
/* 027F0B38 */ Gambit_fn_02C898C4(cpu);
|
|
/* 027F0B3C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 027F0B40 */ cpu->r[12] = 0x43300000u;
|
|
/* 027F0B44 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0B44 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 027F0B48 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 027F0B4C */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0B50 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0B50 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 027F0B54 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0B58 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0B58 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 027F0B5C */ cpu->r[12] = cpu->r[12] + 0x000053A0u;
|
|
/* 027F0B60 */ _t24 = cpu->r[11] + 0x000002B8u;
|
|
/* 027F0B60 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 027F0B64 */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 027F0B68 */ cpu->f[0] = cpu->f[13] - cpu->f[10];
|
|
/* 027F0B6C */ _t25 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F0B6C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 027F0B70 */ cpu->f[8] = (double)(float)cpu->f[0];
|
|
/* 027F0B74 */ _t26 = cpu->r[11] + 0x00000008u;
|
|
/* 027F0B74 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F0B78 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0B7C */ cpu->f[9] = cpu->f[10] * cpu->f[8];
|
|
/* 027F0B80 */ _t27 = cpu->r[12] + 0x000002C0u;
|
|
/* 027F0B80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 027F0B84 */ cpu->f[1] = fma(cpu->f[9], cpu->f[0], cpu->f[12]);
|
|
L_027F0B88: ; // 0x27f0b88
|
|
/* 027F0B88 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0B88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027F0B8C */ cpu->lr = cpu->r[0];
|
|
/* 027F0B90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F0B94 */ return;
|
|
}
|
|
|
|
// fn_027F0A80 @ 0x27f0a80
|
|
void Gambit_fn_027F0A80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_027F0A80: ; // 0x27f0a80
|
|
/* 027F0A80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F0A80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0A80 */ cpu->r[1] = _t0;
|
|
/* 027F0A84 */ _t1 = cpu->r[12] + 0x000002ACu;
|
|
/* 027F0A84 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027F0A88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 027F0A8C */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0A8C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F0A8C */ if (_t3) goto L_027F0A90; else goto L_027F0B04;
|
|
L_027F0A90: ; // 0x27f0a90
|
|
/* 027F0A90 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0A94 */ _t4 = cpu->r[12] + 0x000002C8u;
|
|
/* 027F0A94 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027F0A98 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0A9C */ _t5 = cpu->r[12] + 0x000002C4u;
|
|
/* 027F0A9C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027F0AA0 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0AA4 */ cpu->f[11] = fma(cpu->f[11], cpu->f[13], cpu->f[9]);
|
|
/* 027F0AA8 */ _t6 = cpu->r[11] + 0x000002CCu;
|
|
/* 027F0AA8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027F0AAC */ cpu->f[1] = cpu->f[11] * cpu->f[8];
|
|
/* 027F0AB0 */ Gambit_fn_02C898C4(cpu);
|
|
/* 027F0AB4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 027F0AB8 */ cpu->r[12] = 0x43300000u;
|
|
/* 027F0ABC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0ABC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F0AC0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 027F0AC4 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0AC8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0AC8 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 027F0ACC */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0AD0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0AD0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t9);
|
|
/* 027F0AD4 */ cpu->r[12] = cpu->r[12] + 0x000053A0u;
|
|
/* 027F0AD8 */ _t10 = cpu->r[11] + 0x000002B8u;
|
|
/* 027F0AD8 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 027F0ADC */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 027F0AE0 */ cpu->f[0] = cpu->f[13] - cpu->f[10];
|
|
/* 027F0AE4 */ _t11 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F0AE4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027F0AE8 */ cpu->f[8] = (double)(float)cpu->f[0];
|
|
/* 027F0AEC */ _t12 = cpu->r[11] + 0x00000008u;
|
|
/* 027F0AEC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027F0AF0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0AF4 */ cpu->f[9] = cpu->f[10] * cpu->f[8];
|
|
/* 027F0AF8 */ _t13 = cpu->r[12] + 0x000002C0u;
|
|
/* 027F0AF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 027F0AFC */ cpu->f[1] = fma(cpu->f[9], cpu->f[0], cpu->f[12]);
|
|
/* 027F0B00 */ goto L_027F0B88;
|
|
L_027F0B04: ; // 0x27f0b04
|
|
/* 027F0B04 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0B08 */ _t14 = cpu->r[11] + 0x00000298u;
|
|
/* 027F0B08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027F0B0C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 027F0B10 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F0B10 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F0B10 */ if (_t16) goto L_027F0B14; else goto L_027F0B18;
|
|
L_027F0B14: ; // 0x27f0b14
|
|
/* 027F0B14 */ cpu->f[1] = cpu->f[12];
|
|
L_027F0B18: ; // 0x27f0b18
|
|
/* 027F0B18 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0B1C */ _t17 = cpu->r[12] + 0x000002C8u;
|
|
/* 027F0B1C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 027F0B20 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0B24 */ _t18 = cpu->r[12] + 0x000002C4u;
|
|
/* 027F0B24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 027F0B28 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0B2C */ cpu->f[11] = fma(cpu->f[11], cpu->f[1], cpu->f[9]);
|
|
/* 027F0B30 */ _t19 = cpu->r[11] + 0x000002CCu;
|
|
/* 027F0B30 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 027F0B34 */ cpu->f[1] = cpu->f[11] * cpu->f[8];
|
|
/* 027F0B38 */ Gambit_fn_02C898C4(cpu);
|
|
/* 027F0B3C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 027F0B40 */ cpu->r[12] = 0x43300000u;
|
|
/* 027F0B44 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0B44 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 027F0B48 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 027F0B4C */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0B50 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0B50 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 027F0B54 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0B58 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0B58 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t22);
|
|
/* 027F0B5C */ cpu->r[12] = cpu->r[12] + 0x000053A0u;
|
|
/* 027F0B60 */ _t23 = cpu->r[11] + 0x000002B8u;
|
|
/* 027F0B60 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 027F0B64 */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 027F0B68 */ cpu->f[0] = cpu->f[13] - cpu->f[10];
|
|
/* 027F0B6C */ _t24 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F0B6C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 027F0B70 */ cpu->f[8] = (double)(float)cpu->f[0];
|
|
/* 027F0B74 */ _t25 = cpu->r[11] + 0x00000008u;
|
|
/* 027F0B74 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 027F0B78 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0B7C */ cpu->f[9] = cpu->f[10] * cpu->f[8];
|
|
/* 027F0B80 */ _t26 = cpu->r[12] + 0x000002C0u;
|
|
/* 027F0B80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F0B84 */ cpu->f[1] = fma(cpu->f[9], cpu->f[0], cpu->f[12]);
|
|
L_027F0B88: ; // 0x27f0b88
|
|
/* 027F0B88 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0B88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F0B8C */ cpu->lr = cpu->r[0];
|
|
/* 027F0B90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F0B94 */ return;
|
|
}
|
|
|
|
// fn_027F0B98 @ 0x27f0b98
|
|
void Gambit_fn_027F0B98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027F0B98: ; // 0x27f0b98
|
|
/* 027F0B98 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027F0B98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0B98 */ cpu->r[1] = _t0;
|
|
/* 027F0B9C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0B9C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 027F0BA0 */ /* nop */
|
|
/* 027F0BA4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F0BA8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0BA8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[30]);
|
|
/* 027F0BAC */ cpu->f[30] = cpu->f[1];
|
|
/* 027F0BB0 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0BB0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 027F0BB4 */ /* nop */
|
|
/* 027F0BB8 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 027F0BB8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 027F0BBC */ cpu->f[31] = cpu->f[2] - cpu->f[30];
|
|
/* 027F0BC0 */ cpu->f[1] = cpu->f[3];
|
|
/* 027F0BC4 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F0BC4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F0BC8 */ Gambit_fn_027F0A74(cpu);
|
|
/* 027F0BCC */ cpu->f[1] = fma(cpu->f[31], cpu->f[1], cpu->f[30]);
|
|
/* 027F0BD0 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0BD0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027F0BD4 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 027F0BD4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027F0BD8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0BD8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t8);
|
|
/* 027F0BDC */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0BDC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t9);
|
|
/* 027F0BE0 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0BE0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F0BE0 */ if (_t11) goto L_027F0BE4; // else: addr-0 trap, fall-through
|
|
L_027F0BE4: ; // 0x27f0be4
|
|
/* 027F0BE4 */ _t12 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F0BE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F0BE8 */ cpu->lr = cpu->r[0];
|
|
/* 027F0BEC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F0BF0 */ return;
|
|
}
|
|
|
|
// fn_027F0BF4 @ 0x27f0bf4
|
|
void Gambit_fn_027F0BF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027F0BF4: ; // 0x27f0bf4
|
|
/* 027F0BF4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F0BF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0BF4 */ cpu->r[1] = _t0;
|
|
/* 027F0BF8 */ _t1 = cpu->r[4] + 0x0000000Cu;
|
|
/* 027F0BF8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027F0BFC */ _t2 = cpu->r[5] + 0x00000004u;
|
|
/* 027F0BFC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027F0C00 */ _t3 = cpu->r[5] + 0x00000000u;
|
|
/* 027F0C00 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027F0C04 */ cpu->f[11] = cpu->f[12] * cpu->f[8];
|
|
/* 027F0C08 */ _t4 = cpu->r[4] + 0x00000010u;
|
|
/* 027F0C08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027F0C0C */ _t5 = cpu->r[4] + 0x00000014u;
|
|
/* 027F0C0C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027F0C10 */ cpu->f[6] = cpu->f[0] * cpu->f[8];
|
|
/* 027F0C14 */ _t6 = cpu->r[4] + 0x00000000u;
|
|
/* 027F0C14 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027F0C18 */ cpu->f[8] = cpu->f[7] * cpu->f[8];
|
|
/* 027F0C1C */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 027F0C1C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027F0C20 */ _t8 = cpu->r[4] + 0x00000018u;
|
|
/* 027F0C20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 027F0C24 */ cpu->f[13] = fma(cpu->f[9], cpu->f[10], cpu->f[11]);
|
|
/* 027F0C28 */ _t9 = cpu->r[5] + 0x00000008u;
|
|
/* 027F0C28 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027F0C2C */ cpu->f[6] = fma(cpu->f[7], cpu->f[10], cpu->f[6]);
|
|
/* 027F0C30 */ _t10 = cpu->r[4] + 0x00000008u;
|
|
/* 027F0C30 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027F0C34 */ cpu->f[7] = fma(cpu->f[0], cpu->f[12], cpu->f[13]);
|
|
/* 027F0C38 */ _t11 = cpu->r[4] + 0x0000001Cu;
|
|
/* 027F0C38 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027F0C3C */ cpu->f[10] = fma(cpu->f[11], cpu->f[10], cpu->f[8]);
|
|
/* 027F0C40 */ _t12 = cpu->r[4] + 0x00000020u;
|
|
/* 027F0C40 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027F0C44 */ cpu->f[0] = fma(cpu->f[9], cpu->f[12], cpu->f[6]);
|
|
/* 027F0C48 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 027F0C48 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[7]);
|
|
/* 027F0C4C */ cpu->f[13] = fma(cpu->f[11], cpu->f[12], cpu->f[10]);
|
|
/* 027F0C50 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 027F0C50 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 027F0C54 */ _t15 = cpu->r[3] + 0x00000008u;
|
|
/* 027F0C54 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 027F0C58 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F0C5C */ return;
|
|
}
|
|
|
|
// fn_027F0C60 @ 0x27f0c60
|
|
void Gambit_fn_027F0C60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027F0C60: ; // 0x27f0c60
|
|
/* 027F0C60 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F0C60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0C60 */ cpu->r[1] = _t0;
|
|
/* 027F0C64 */ _t1 = cpu->r[4] + 0x00000004u;
|
|
/* 027F0C64 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027F0C68 */ _t2 = cpu->r[5] + 0x00000004u;
|
|
/* 027F0C68 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027F0C6C */ _t3 = cpu->r[5] + 0x00000000u;
|
|
/* 027F0C6C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027F0C70 */ cpu->f[11] = cpu->f[12] * cpu->f[8];
|
|
/* 027F0C74 */ _t4 = cpu->r[4] + 0x00000010u;
|
|
/* 027F0C74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027F0C78 */ _t5 = cpu->r[4] + 0x0000001Cu;
|
|
/* 027F0C78 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027F0C7C */ cpu->f[6] = cpu->f[0] * cpu->f[8];
|
|
/* 027F0C80 */ _t6 = cpu->r[4] + 0x00000000u;
|
|
/* 027F0C80 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 027F0C84 */ cpu->f[8] = cpu->f[7] * cpu->f[8];
|
|
/* 027F0C88 */ _t7 = cpu->r[4] + 0x0000000Cu;
|
|
/* 027F0C88 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 027F0C8C */ _t8 = cpu->r[4] + 0x00000008u;
|
|
/* 027F0C8C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 027F0C90 */ cpu->f[13] = fma(cpu->f[9], cpu->f[10], cpu->f[11]);
|
|
/* 027F0C94 */ _t9 = cpu->r[5] + 0x00000008u;
|
|
/* 027F0C94 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027F0C98 */ cpu->f[6] = fma(cpu->f[7], cpu->f[10], cpu->f[6]);
|
|
/* 027F0C9C */ _t10 = cpu->r[4] + 0x00000018u;
|
|
/* 027F0C9C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027F0CA0 */ cpu->f[7] = fma(cpu->f[0], cpu->f[12], cpu->f[13]);
|
|
/* 027F0CA4 */ _t11 = cpu->r[4] + 0x00000014u;
|
|
/* 027F0CA4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027F0CA8 */ cpu->f[10] = fma(cpu->f[11], cpu->f[10], cpu->f[8]);
|
|
/* 027F0CAC */ _t12 = cpu->r[4] + 0x00000020u;
|
|
/* 027F0CAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027F0CB0 */ cpu->f[0] = fma(cpu->f[9], cpu->f[12], cpu->f[6]);
|
|
/* 027F0CB4 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 027F0CB4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[7]);
|
|
/* 027F0CB8 */ cpu->f[13] = fma(cpu->f[11], cpu->f[12], cpu->f[10]);
|
|
/* 027F0CBC */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 027F0CBC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 027F0CC0 */ _t15 = cpu->r[3] + 0x00000008u;
|
|
/* 027F0CC0 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 027F0CC4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F0CC8 */ return;
|
|
}
|
|
|
|
// fn_027F0CCC @ 0x27f0ccc
|
|
void Gambit_fn_027F0CCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_027F0CCC: ; // 0x27f0ccc
|
|
/* 027F0CCC */ cpu->r[8] = 0x10110000u;
|
|
/* 027F0CD0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F0CD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0CD0 */ cpu->r[1] = _t0;
|
|
/* 027F0CD4 */ cpu->r[7] = 0x10110000u;
|
|
/* 027F0CD8 */ _t1 = cpu->r[8] + 0x000002E8u;
|
|
/* 027F0CD8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027F0CDC */ _t2 = cpu->r[7] + 0x000002ECu;
|
|
/* 027F0CDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027F0CE0 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0CE0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 027F0CE4 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0CE4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F0CE8 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 027F0CE8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 027F0CEC */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 027F0CEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F0CF0 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F0CF0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 027F0CF4 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F0CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F0CF8 */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 027F0CF8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 027F0CFC */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 027F0CFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F0D00 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0D00 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 027F0D04 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0D04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F0D08 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0D08 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 027F0D0C */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0D0C */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F0D10 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0D10 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 027F0D14 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0D14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F0D18 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0D18 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 027F0D1C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0D1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F0D20 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F0D24 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0D24 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 027F0D28 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0D28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F0D2C */ _t21 = cpu->r[11] + 0x000037DCu;
|
|
/* 027F0D2C */ rbrew_write32(cpu->mem, _t21, cpu->r[7]);
|
|
/* 027F0D2C */ cpu->r[11] = _t21;
|
|
/* 027F0D30 */ _t22 = cpu->r[11] + 0x00000004u;
|
|
/* 027F0D30 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]);
|
|
/* 027F0D34 */ _t23 = cpu->r[11] + 0x00000008u;
|
|
/* 027F0D34 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 027F0D38 */ _t24 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F0D38 */ rbrew_write32(cpu->mem, _t24, cpu->r[3]);
|
|
/* 027F0D3C */ _t25 = cpu->r[11] + 0x00000010u;
|
|
/* 027F0D3C */ rbrew_write32(cpu->mem, _t25, cpu->r[4]);
|
|
/* 027F0D40 */ _t26 = cpu->r[11] + 0x00000014u;
|
|
/* 027F0D40 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 027F0D44 */ _t27 = cpu->r[11] + 0x00000018u;
|
|
/* 027F0D44 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 027F0D48 */ _t28 = cpu->r[11] + 0x0000001Cu;
|
|
/* 027F0D48 */ rbrew_write32(cpu->mem, _t28, cpu->r[5]);
|
|
/* 027F0D4C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F0D50 */ _t29 = cpu->r[11] + 0x00000020u;
|
|
/* 027F0D50 */ rbrew_write32(cpu->mem, _t29, cpu->r[6]);
|
|
/* 027F0D54 */ return;
|
|
}
|
|
|
|
// fn_027F0CD0 @ 0x27f0cd0
|
|
void Gambit_fn_027F0CD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_027F0CD0: ; // 0x27f0cd0
|
|
/* 027F0CD0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F0CD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0CD0 */ cpu->r[1] = _t0;
|
|
/* 027F0CD4 */ cpu->r[7] = 0x10110000u;
|
|
/* 027F0CD8 */ _t1 = cpu->r[8] + 0x000002E8u;
|
|
/* 027F0CD8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027F0CDC */ _t2 = cpu->r[7] + 0x000002ECu;
|
|
/* 027F0CDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027F0CE0 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0CE0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 027F0CE4 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 027F0CE4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F0CE8 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 027F0CE8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 027F0CEC */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 027F0CEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F0CF0 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F0CF0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 027F0CF4 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F0CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F0CF8 */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 027F0CF8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 027F0CFC */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 027F0CFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F0D00 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0D00 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 027F0D04 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0D04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F0D08 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0D08 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 027F0D0C */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0D0C */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F0D10 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0D10 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 027F0D14 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0D14 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F0D18 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0D18 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 027F0D1C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0D1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F0D20 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F0D24 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0D24 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 027F0D28 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0D28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F0D2C */ _t21 = cpu->r[11] + 0x000037DCu;
|
|
/* 027F0D2C */ rbrew_write32(cpu->mem, _t21, cpu->r[7]);
|
|
/* 027F0D2C */ cpu->r[11] = _t21;
|
|
/* 027F0D30 */ _t22 = cpu->r[11] + 0x00000004u;
|
|
/* 027F0D30 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]);
|
|
/* 027F0D34 */ _t23 = cpu->r[11] + 0x00000008u;
|
|
/* 027F0D34 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 027F0D38 */ _t24 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F0D38 */ rbrew_write32(cpu->mem, _t24, cpu->r[3]);
|
|
/* 027F0D3C */ _t25 = cpu->r[11] + 0x00000010u;
|
|
/* 027F0D3C */ rbrew_write32(cpu->mem, _t25, cpu->r[4]);
|
|
/* 027F0D40 */ _t26 = cpu->r[11] + 0x00000014u;
|
|
/* 027F0D40 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 027F0D44 */ _t27 = cpu->r[11] + 0x00000018u;
|
|
/* 027F0D44 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 027F0D48 */ _t28 = cpu->r[11] + 0x0000001Cu;
|
|
/* 027F0D48 */ rbrew_write32(cpu->mem, _t28, cpu->r[5]);
|
|
/* 027F0D4C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F0D50 */ _t29 = cpu->r[11] + 0x00000020u;
|
|
/* 027F0D50 */ rbrew_write32(cpu->mem, _t29, cpu->r[6]);
|
|
/* 027F0D54 */ return;
|
|
}
|
|
|
|
// fn_027F0D58 @ 0x27f0d58
|
|
void Gambit_fn_027F0D58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F0D58: ; // 0x27f0d58
|
|
/* 027F0D58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F0D5C */ cpu->r[0] = 0x00000001u;
|
|
/* 027F0D60 */ _t0 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F0D60 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F0D60 */ if (_t1) goto L_027F0D64; else goto L_027F0D70;
|
|
L_027F0D64: ; // 0x27f0d64
|
|
/* 027F0D64 */ cpu->ctr = cpu->r[4];
|
|
L_027F0D68: ; // 0x27f0d68
|
|
/* 027F0D68 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Au);
|
|
/* 027F0D6C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F0D6C */ _t2 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F0D6C */ _t3 = _t2 >> (0x00000002u & 31u);
|
|
/* 027F0D6C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F0D6C */ if (_t4) goto L_027F0D68; else goto L_027F0D70;
|
|
L_027F0D70: ; // 0x27f0d70
|
|
/* 027F0D70 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[3] / (int32_t)cpu->r[0]);
|
|
/* 027F0D74 */ cpu->r[0] = 0x66660000u;
|
|
/* 027F0D78 */ cpu->r[0] = cpu->r[0] | 0x00006667u;
|
|
/* 027F0D7C */ cpu->r[11] = (uint32_t)(((int64_t)(int32_t)cpu->r[0] * (int64_t)(int32_t)cpu->r[10]) >> 32);
|
|
/* 027F0D80 */ /* nop */
|
|
/* 027F0D84 */ /* nop */
|
|
/* 027F0D88 */ cpu->r[11] = cpu->r[11] - cpu->r[12];
|
|
/* 027F0D8C */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[11] * (int32_t)0x0000000Au);
|
|
/* 027F0D90 */ cpu->r[3] = cpu->r[10] - cpu->r[11];
|
|
/* 027F0D94 */ return;
|
|
}
|
|
|
|
// fn_027F0D98 @ 0x27f0d98
|
|
void Gambit_fn_027F0D98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027F0D98: ; // 0x27f0d98
|
|
/* 027F0D98 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0D9C */ _t0 = cpu->r[12] + 0x000002F8u;
|
|
/* 027F0D9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 027F0DA0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0DA4 */ _t1 = cpu->r[12] + 0x000002FCu;
|
|
/* 027F0DA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027F0DA8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F0DAC */ _t2 = cpu->r[12] + 0x00003800u;
|
|
/* 027F0DAC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[0]);
|
|
/* 027F0DAC */ cpu->r[12] = _t2;
|
|
/* 027F0DB0 */ _t3 = cpu->r[12] + 0x00000008u;
|
|
/* 027F0DB0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 027F0DB4 */ _t4 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F0DB4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[13]);
|
|
/* 027F0DB8 */ _t5 = cpu->r[12] + 0x00000018u;
|
|
/* 027F0DB8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027F0DBC */ _t6 = cpu->r[12] + 0x00000004u;
|
|
/* 027F0DBC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 027F0DC0 */ _t7 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F0DC0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 027F0DC4 */ _t8 = cpu->r[12] + 0x00000020u;
|
|
/* 027F0DC4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 027F0DC8 */ _t9 = cpu->r[12] + 0x00000014u;
|
|
/* 027F0DC8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 027F0DCC */ _t10 = cpu->r[12] + 0x00000024u;
|
|
/* 027F0DCC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 027F0DD0 */ _t11 = cpu->r[12] + 0x00000028u;
|
|
/* 027F0DD0 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 027F0DD4 */ _t12 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027F0DD4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[13]);
|
|
/* 027F0DD8 */ _t13 = cpu->r[12] + 0x00000010u;
|
|
/* 027F0DD8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 027F0DDC */ return;
|
|
}
|
|
|
|
// fn_027F0DE0 @ 0x27f0de0
|
|
void Gambit_fn_027F0DE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _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, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _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;
|
|
double _ft30, _ft31, _ft47, _ft48, _ft97, _ft98, _ft117, _ft118, _ft140, _ft141, _ft152, _ft153;
|
|
|
|
L_027F0DE0: ; // 0x27f0de0
|
|
/* 027F0DE0 */ _t0 = cpu->r[1] + 0xFFFFFF58u;
|
|
/* 027F0DE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F0DE0 */ cpu->r[1] = _t0;
|
|
/* 027F0DE4 */ _t1 = cpu->r[1] + 0x00000038u;
|
|
/* 027F0DE4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[25]);
|
|
/* 027F0DE8 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 027F0DE8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[26]);
|
|
/* 027F0DEC */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 027F0DEC */ rbrew_write_f64(cpu->mem, _t3, cpu->f[27]);
|
|
/* 027F0DF0 */ /* nop */
|
|
/* 027F0DF4 */ _t4 = cpu->r[1] + 0x00000068u;
|
|
/* 027F0DF4 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[28]);
|
|
/* 027F0DF8 */ /* nop */
|
|
/* 027F0DFC */ _t5 = cpu->r[1] + 0x00000078u;
|
|
/* 027F0DFC */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 027F0E00 */ /* nop */
|
|
/* 027F0E04 */ _t6 = cpu->r[1] + 0x00000088u;
|
|
/* 027F0E04 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[30]);
|
|
/* 027F0E08 */ /* nop */
|
|
/* 027F0E0C */ _t7 = cpu->r[1] + 0x00000098u;
|
|
/* 027F0E0C */ rbrew_write_f64(cpu->mem, _t7, cpu->f[31]);
|
|
/* 027F0E10 */ /* nop */
|
|
/* 027F0E14 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 027F0E14 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[25]);
|
|
/* 027F0E18 */ _t9 = cpu->r[1] + 0x00000050u;
|
|
/* 027F0E18 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[26]);
|
|
/* 027F0E1C */ cpu->r[0] = cpu->lr;
|
|
/* 027F0E20 */ _t10 = cpu->r[1] + 0x00000060u;
|
|
/* 027F0E20 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[27]);
|
|
/* 027F0E24 */ /* nop */
|
|
/* 027F0E28 */ _t11 = cpu->r[1] + 0x00000070u;
|
|
/* 027F0E28 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[28]);
|
|
/* 027F0E2C */ /* nop */
|
|
/* 027F0E30 */ _t12 = cpu->r[1] + 0x00000080u;
|
|
/* 027F0E30 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[29]);
|
|
/* 027F0E34 */ _t13 = cpu->r[1] + 0x00000090u;
|
|
/* 027F0E34 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[30]);
|
|
/* 027F0E38 */ _t14 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F0E38 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[31]);
|
|
/* 027F0E3C */ _t15 = cpu->r[1] + 0x000000ACu;
|
|
/* 027F0E3C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027F0E40 */ /* nop */
|
|
/* 027F0E44 */ /* nop */
|
|
/* 027F0E48 */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 027F0E48 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027F0E4C */ /* nop */
|
|
/* 027F0E50 */ _t17 = cpu->r[5] + 0x00000014u;
|
|
/* 027F0E50 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 027F0E54 */ _t18 = cpu->r[5] + 0x00000010u;
|
|
/* 027F0E54 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 027F0E58 */ _t19 = cpu->r[3] + 0x00000008u;
|
|
/* 027F0E58 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 027F0E5C */ /* nop */
|
|
/* 027F0E60 */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 027F0E60 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 027F0E64 */ cpu->f[13] = fma(cpu->f[6], cpu->f[11], cpu->f[13]);
|
|
/* 027F0E68 */ _t21 = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F0E68 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 027F0E6C */ cpu->f[10] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[12]));
|
|
/* 027F0E70 */ cpu->f[7] = -fma(cpu->f[13], cpu->f[7], -(cpu->f[9]));
|
|
/* 027F0E74 */ cpu->f[8] = cpu->f[10] * cpu->f[10];
|
|
/* 027F0E78 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0E7C */ cpu->f[13] = -fma(cpu->f[13], cpu->f[6], -(cpu->f[11]));
|
|
/* 027F0E80 */ _t22 = cpu->r[11] + 0x0000031Cu;
|
|
/* 027F0E80 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 027F0E84 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0E88 */ cpu->f[9] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 027F0E8C */ _t23 = cpu->r[12] + 0x00000314u;
|
|
/* 027F0E8C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027F0E90 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0E90 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 027F0E94 */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[9]);
|
|
/* 027F0E98 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 027F0E98 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[7]);
|
|
/* 027F0E9C */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F0E9C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[10]);
|
|
/* 027F0EA0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F0EA4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 027F0EA8 */ _t27 = cpu->r[12] + 0x00000318u;
|
|
/* 027F0EA8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 027F0EAC */ _t28 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F0EAC */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F0EAC */ if (_t29) goto L_027F0EB0; else goto L_027F0EE0;
|
|
L_027F0EB0: ; // 0x27f0eb0
|
|
/* 027F0EB0 */ _ft30 = sqrt(cpu->f[9]);
|
|
/* 027F0EB0 */ _ft31 = (double)(int32_t)0x00000001u;
|
|
/* 027F0EB0 */ cpu->f[10] = _ft31 / _ft30;
|
|
/* 027F0EB4 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 027F0EB8 */ cpu->f[12] = cpu->f[10] * cpu->f[29];
|
|
/* 027F0EBC */ cpu->f[11] = -fma(cpu->f[11], cpu->f[9], -(cpu->f[30]));
|
|
/* 027F0EC0 */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 027F0EC4 */ /* nop */
|
|
/* 027F0EC8 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0EC8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 027F0ECC */ /* nop */
|
|
/* 027F0ED0 */ cpu->f[7] = cpu->f[7] * cpu->f[10];
|
|
/* 027F0ED4 */ /* nop */
|
|
/* 027F0ED8 */ cpu->f[9] = cpu->f[9] * cpu->f[10];
|
|
/* 027F0EDC */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0EDC */ rbrew_write_f32(cpu->mem, _t33, cpu->f[7]);
|
|
L_027F0EE0: ; // 0x27f0ee0
|
|
/* 027F0EE0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 027F0EE4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0EE4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F0EE4 */ if (_t35) goto L_027F0F78; else goto L_027F0EE8;
|
|
L_027F0EE8: ; // 0x27f0ee8
|
|
/* 027F0EE8 */ /* nop */
|
|
/* 027F0EEC */ /* nop */
|
|
/* 027F0EF0 */ _t36 = cpu->r[5] + 0x00000014u;
|
|
/* 027F0EF0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 027F0EF4 */ /* nop */
|
|
/* 027F0EF8 */ _t37 = cpu->r[4] + 0x00000008u;
|
|
/* 027F0EF8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 027F0EFC */ /* nop */
|
|
/* 027F0F00 */ _t38 = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F0F00 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 027F0F04 */ cpu->f[13] = fma(cpu->f[6], cpu->f[7], cpu->f[13]);
|
|
/* 027F0F08 */ _t39 = cpu->r[4] + 0x00000004u;
|
|
/* 027F0F08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 027F0F0C */ _t40 = cpu->r[5] + 0x00000010u;
|
|
/* 027F0F0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 027F0F10 */ _t41 = cpu->r[4] + 0x00000000u;
|
|
/* 027F0F10 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027F0F14 */ cpu->f[11] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[11]));
|
|
/* 027F0F18 */ cpu->f[8] = -fma(cpu->f[13], cpu->f[8], -(cpu->f[9]));
|
|
/* 027F0F1C */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 027F0F20 */ cpu->f[26] = -fma(cpu->f[13], cpu->f[6], -(cpu->f[7]));
|
|
/* 027F0F24 */ cpu->f[13] = fma(cpu->f[8], cpu->f[8], cpu->f[12]);
|
|
/* 027F0F28 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F0F28 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[26]);
|
|
/* 027F0F2C */ cpu->f[13] = fma(cpu->f[26], cpu->f[26], cpu->f[13]);
|
|
/* 027F0F30 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 027F0F30 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[8]);
|
|
/* 027F0F34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 027F0F38 */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 027F0F38 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[11]);
|
|
/* 027F0F3C */ _t45 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F0F3C */ _t46 = _t45 & 0x00000001u;
|
|
/* 027F0F3C */ if (_t46) goto L_027F0F40; else goto L_027F0F70;
|
|
L_027F0F40: ; // 0x27f0f40
|
|
/* 027F0F40 */ _ft47 = sqrt(cpu->f[13]);
|
|
/* 027F0F40 */ _ft48 = (double)(int32_t)0x00000001u;
|
|
/* 027F0F40 */ cpu->f[8] = _ft48 / _ft47;
|
|
/* 027F0F44 */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 027F0F48 */ cpu->f[10] = cpu->f[8] * cpu->f[29];
|
|
/* 027F0F4C */ cpu->f[9] = -fma(cpu->f[9], cpu->f[13], -(cpu->f[30]));
|
|
/* 027F0F50 */ cpu->f[8] = cpu->f[9] * cpu->f[10];
|
|
/* 027F0F54 */ /* nop */
|
|
/* 027F0F58 */ _t49 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F0F58 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 027F0F5C */ /* nop */
|
|
/* 027F0F60 */ cpu->f[26] = cpu->f[26] * cpu->f[8];
|
|
/* 027F0F64 */ /* nop */
|
|
/* 027F0F68 */ cpu->f[13] = cpu->f[13] * cpu->f[8];
|
|
/* 027F0F6C */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F0F6C */ rbrew_write_f32(cpu->mem, _t50, cpu->f[26]);
|
|
L_027F0F70: ; // 0x27f0f70
|
|
/* 027F0F70 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 027F0F74 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F0F74 */ _t52 = _t51 & 0x00000001u;
|
|
/* 027F0F74 */ if (_t52) goto L_027F0F78; else goto L_027F0FC8;
|
|
L_027F0F78: ; // 0x27f0f78
|
|
/* 027F0F78 */ _t53 = cpu->r[1] + 0x00000070u;
|
|
/* 027F0F78 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 027F0F7C */ _t54 = cpu->r[1] + 0x00000060u;
|
|
/* 027F0F7C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 027F0F80 */ _t55 = cpu->r[1] + 0x00000068u;
|
|
/* 027F0F80 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t55);
|
|
/* 027F0F84 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 027F0F84 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 027F0F88 */ _t57 = cpu->r[1] + 0x00000058u;
|
|
/* 027F0F88 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 027F0F8C */ _t58 = cpu->r[1] + 0x00000078u;
|
|
/* 027F0F8C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 027F0F90 */ _t59 = cpu->r[1] + 0x00000090u;
|
|
/* 027F0F90 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 027F0F94 */ _t60 = cpu->r[1] + 0x00000040u;
|
|
/* 027F0F94 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 027F0F98 */ _t61 = cpu->r[1] + 0x00000088u;
|
|
/* 027F0F98 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t61);
|
|
/* 027F0F9C */ _t62 = cpu->r[1] + 0x00000038u;
|
|
/* 027F0F9C */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 027F0FA0 */ _t63 = cpu->r[1] + 0x00000050u;
|
|
/* 027F0FA0 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 027F0FA4 */ cpu->f[1] = cpu->f[31];
|
|
/* 027F0FA8 */ _t64 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F0FA8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 027F0FAC */ _t65 = cpu->r[1] + 0x00000048u;
|
|
/* 027F0FAC */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t65);
|
|
/* 027F0FB0 */ _t66 = cpu->r[1] + 0x00000098u;
|
|
/* 027F0FB0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 027F0FB4 */ _t67 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F0FB4 */ _t68 = _t67 & 0x00000001u;
|
|
/* 027F0FB4 */ if (_t68) goto L_027F0FB8; // else: addr-0 trap, fall-through
|
|
L_027F0FB8: ; // 0x27f0fb8
|
|
/* 027F0FB8 */ _t69 = cpu->r[1] + 0x000000ACu;
|
|
/* 027F0FB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F0FBC */ cpu->lr = cpu->r[0];
|
|
/* 027F0FC0 */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 027F0FC4 */ return;
|
|
L_027F0FC8: ; // 0x27f0fc8
|
|
/* 027F0FC8 */ /* nop */
|
|
/* 027F0FCC */ /* nop */
|
|
/* 027F0FD0 */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 027F0FD0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 027F0FD4 */ /* nop */
|
|
/* 027F0FD8 */ /* nop */
|
|
/* 027F0FDC */ cpu->r[11] = 0x10110000u;
|
|
/* 027F0FE0 */ cpu->f[27] = fma(cpu->f[12], cpu->f[26], cpu->f[10]);
|
|
/* 027F0FE4 */ _t71 = cpu->r[11] + 0x00000310u;
|
|
/* 027F0FE4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 027F0FE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[28]);
|
|
/* 027F0FEC */ _t72 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F0FEC */ _t73 = _t72 & 0x00000001u;
|
|
/* 027F0FEC */ if (_t73) goto L_027F0FF0; else goto L_027F1028;
|
|
L_027F0FF0: ; // 0x27f0ff0
|
|
/* 027F0FF0 */ cpu->r[3] = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F0FF4 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 027F0FF8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F0FFC */ cpu->f[27] = cpu->f[28];
|
|
/* 027F1000 */ Gambit_fn_02C692EC(cpu);
|
|
/* 027F1004 */ /* nop */
|
|
/* 027F1008 */ /* nop */
|
|
/* 027F100C */ /* nop */
|
|
/* 027F1010 */ cpu->f[13] = cpu->f[0];
|
|
/* 027F1014 */ _t74 = cpu->r[1] + 0x00000030u;
|
|
/* 027F1014 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 027F1018 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[31]);
|
|
/* 027F101C */ cpu->f[26] = fma(cpu->f[0], cpu->f[26], cpu->f[13]);
|
|
/* 027F1020 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1020 */ _t76 = _t75 & 0x00000001u;
|
|
/* 027F1020 */ if (_t76) goto L_027F1024; else goto L_027F1070;
|
|
L_027F1024: ; // 0x27f1024
|
|
/* 027F1024 */ goto L_027F1224;
|
|
L_027F1028: ; // 0x27f1028
|
|
/* 027F1028 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F102C */ _t77 = cpu->r[11] + 0x0000033Cu;
|
|
/* 027F102C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 027F1030 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[10]);
|
|
/* 027F1034 */ _t78 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1034 */ _t79 = _t78 & 0x00000001u;
|
|
/* 027F1034 */ if (_t79) goto L_027F1038; else goto L_027F1040;
|
|
L_027F1038: ; // 0x27f1038
|
|
/* 027F1038 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F103C */ _t80 = cpu->r[12] + 0x0000033Cu;
|
|
/* 027F103C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t80);
|
|
L_027F1040: ; // 0x27f1040
|
|
/* 027F1040 */ cpu->r[3] = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F1044 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F1048 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 027F104C */ Gambit_fn_02C692EC(cpu);
|
|
/* 027F1050 */ /* nop */
|
|
/* 027F1054 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[31]);
|
|
/* 027F1058 */ /* nop */
|
|
/* 027F105C */ /* nop */
|
|
/* 027F1060 */ cpu->f[13] = cpu->f[0];
|
|
/* 027F1064 */ _t81 = cpu->r[1] + 0x00000030u;
|
|
/* 027F1064 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 027F1068 */ cpu->f[26] = fma(cpu->f[0], cpu->f[26], cpu->f[13]);
|
|
/* 027F106C */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F106C */ _t83 = _t82 & 0x00000001u;
|
|
/* 027F106C */ if (_t83) goto L_027F1224; else goto L_027F1070;
|
|
L_027F1070: ; // 0x27f1070
|
|
/* 027F1070 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1074 */ _t84 = cpu->r[12] + 0x0000032Cu;
|
|
/* 027F1074 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 027F1078 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[13]);
|
|
/* 027F107C */ _t85 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F107C */ _t86 = _t85 & 0x00000001u;
|
|
/* 027F107C */ if (_t86) goto L_027F1080; else goto L_027F1150;
|
|
L_027F1080: ; // 0x27f1080
|
|
/* 027F1080 */ cpu->f[11] = -fma(cpu->f[27], cpu->f[27], -(cpu->f[28]));
|
|
/* 027F1084 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 027F1088 */ _t87 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1088 */ _t88 = _t87 & 0x00000001u;
|
|
/* 027F1088 */ if (_t88) goto L_027F10E4; else goto L_027F108C;
|
|
L_027F108C: ; // 0x27f108c
|
|
/* 027F108C */ cpu->f[7] = cpu->f[31] * cpu->f[11];
|
|
/* 027F1090 */ cpu->f[1] = cpu->f[7] / cpu->f[27];
|
|
/* 027F1094 */ Gambit_fn_02827710(cpu);
|
|
/* 027F1098 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F109C */ cpu->r[0] = 0x43300000u;
|
|
/* 027F10A0 */ cpu->r[12] = cpu->r[3] + 0x80000000u;
|
|
/* 027F10A4 */ _t89 = cpu->r[11] + 0x00000320u;
|
|
/* 027F10A4 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 027F10A8 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F10AC */ _t90 = cpu->r[1] + 0x00000020u;
|
|
/* 027F10AC */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 027F10B0 */ _t91 = cpu->r[1] + 0x00000024u;
|
|
/* 027F10B0 */ rbrew_write32(cpu->mem, _t91, cpu->r[12]);
|
|
/* 027F10B4 */ _t92 = cpu->r[1] + 0x00000020u;
|
|
/* 027F10B4 */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t92);
|
|
/* 027F10B8 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F10BC */ cpu->f[11] = cpu->f[9] - cpu->f[8];
|
|
/* 027F10C0 */ _t93 = cpu->r[12] + 0x00000334u;
|
|
/* 027F10C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 027F10C4 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F10C8 */ cpu->f[10] = (double)(float)cpu->f[11];
|
|
/* 027F10CC */ _t94 = cpu->r[12] + 0x00000338u;
|
|
/* 027F10CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 027F10D0 */ cpu->f[7] = fma(cpu->f[10], cpu->f[11], -(cpu->f[28]));
|
|
/* 027F10D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[31]);
|
|
/* 027F10D8 */ cpu->f[31] = cpu->f[12] * cpu->f[7];
|
|
/* 027F10DC */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F10DC */ _t96 = _t95 & 0x00000001u;
|
|
/* 027F10DC */ if (_t96) goto L_027F10E0; else goto L_027F13A0;
|
|
L_027F10E0: ; // 0x27f10e0
|
|
/* 027F10E0 */ goto L_027F139C;
|
|
L_027F10E4: ; // 0x27f10e4
|
|
/* 027F10E4 */ _ft97 = sqrt(cpu->f[11]);
|
|
/* 027F10E4 */ _ft98 = (double)(int32_t)0x00000001u;
|
|
/* 027F10E4 */ cpu->f[0] = _ft98 / _ft97;
|
|
/* 027F10E8 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 027F10EC */ cpu->f[10] = cpu->f[0] * cpu->f[29];
|
|
/* 027F10F0 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[11], -(cpu->f[30]));
|
|
/* 027F10F4 */ cpu->f[0] = cpu->f[9] * cpu->f[10];
|
|
/* 027F10F8 */ cpu->f[7] = cpu->f[0] * cpu->f[11];
|
|
/* 027F10FC */ cpu->f[1] = cpu->f[7] / cpu->f[27];
|
|
/* 027F1100 */ Gambit_fn_02827710(cpu);
|
|
/* 027F1104 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F1108 */ cpu->r[0] = 0x43300000u;
|
|
/* 027F110C */ cpu->r[12] = cpu->r[3] + 0x80000000u;
|
|
/* 027F1110 */ _t99 = cpu->r[11] + 0x00000320u;
|
|
/* 027F1110 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t99);
|
|
/* 027F1114 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F1118 */ _t100 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1118 */ rbrew_write32(cpu->mem, _t100, cpu->r[0]);
|
|
/* 027F111C */ _t101 = cpu->r[1] + 0x00000024u;
|
|
/* 027F111C */ rbrew_write32(cpu->mem, _t101, cpu->r[12]);
|
|
/* 027F1120 */ _t102 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1120 */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t102);
|
|
/* 027F1124 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1128 */ cpu->f[11] = cpu->f[9] - cpu->f[8];
|
|
/* 027F112C */ _t103 = cpu->r[12] + 0x00000334u;
|
|
/* 027F112C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 027F1130 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1134 */ cpu->f[10] = (double)(float)cpu->f[11];
|
|
/* 027F1138 */ _t104 = cpu->r[12] + 0x00000338u;
|
|
/* 027F1138 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 027F113C */ cpu->f[7] = fma(cpu->f[10], cpu->f[11], -(cpu->f[28]));
|
|
/* 027F1140 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[31]);
|
|
/* 027F1144 */ cpu->f[31] = cpu->f[12] * cpu->f[7];
|
|
/* 027F1148 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1148 */ _t106 = _t105 & 0x00000001u;
|
|
/* 027F1148 */ if (_t106) goto L_027F114C; else goto L_027F13A0;
|
|
L_027F114C: ; // 0x27f114c
|
|
/* 027F114C */ goto L_027F139C;
|
|
L_027F1150: ; // 0x27f1150
|
|
/* 027F1150 */ cpu->f[10] = -fma(cpu->f[27], cpu->f[27], -(cpu->f[28]));
|
|
/* 027F1154 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 027F1158 */ _t107 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1158 */ _t108 = _t107 & 0x00000001u;
|
|
/* 027F1158 */ if (_t108) goto L_027F11B4; else goto L_027F115C;
|
|
L_027F115C: ; // 0x27f115c
|
|
/* 027F115C */ cpu->f[1] = cpu->f[27] * cpu->f[31];
|
|
/* 027F1160 */ Gambit_fn_02827710(cpu);
|
|
/* 027F1164 */ cpu->r[3] = 0x00000000u - cpu->r[3];
|
|
/* 027F1168 */ cpu->r[0] = 0x43300000u;
|
|
/* 027F116C */ cpu->r[11] = 0x10110000u;
|
|
/* 027F1170 */ cpu->r[12] = cpu->r[3] + 0xC0000000u;
|
|
/* 027F1174 */ _t109 = cpu->r[11] + 0x00000320u;
|
|
/* 027F1174 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t109);
|
|
/* 027F1178 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F117C */ _t110 = cpu->r[1] + 0x00000020u;
|
|
/* 027F117C */ rbrew_write32(cpu->mem, _t110, cpu->r[0]);
|
|
/* 027F1180 */ _t111 = cpu->r[1] + 0x00000024u;
|
|
/* 027F1180 */ rbrew_write32(cpu->mem, _t111, cpu->r[12]);
|
|
/* 027F1184 */ _t112 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1184 */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t112);
|
|
/* 027F1188 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F118C */ cpu->f[11] = cpu->f[9] - cpu->f[8];
|
|
/* 027F1190 */ _t113 = cpu->r[12] + 0x00000334u;
|
|
/* 027F1190 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 027F1194 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1198 */ cpu->f[10] = (double)(float)cpu->f[11];
|
|
/* 027F119C */ _t114 = cpu->r[12] + 0x00000338u;
|
|
/* 027F119C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 027F11A0 */ cpu->f[7] = fma(cpu->f[10], cpu->f[11], -(cpu->f[28]));
|
|
/* 027F11A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[31]);
|
|
/* 027F11A8 */ cpu->f[31] = cpu->f[12] * cpu->f[7];
|
|
/* 027F11AC */ _t115 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F11AC */ _t116 = _t115 & 0x00000001u;
|
|
/* 027F11AC */ if (_t116) goto L_027F11B0; else goto L_027F13A0;
|
|
L_027F11B0: ; // 0x27f11b0
|
|
/* 027F11B0 */ goto L_027F139C;
|
|
L_027F11B4: ; // 0x27f11b4
|
|
/* 027F11B4 */ cpu->f[12] = -fma(cpu->f[27], cpu->f[27], -(cpu->f[28]));
|
|
/* 027F11B8 */ _ft117 = sqrt(cpu->f[12]);
|
|
/* 027F11B8 */ _ft118 = (double)(int32_t)0x00000001u;
|
|
/* 027F11B8 */ cpu->f[9] = _ft118 / _ft117;
|
|
/* 027F11BC */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 027F11C0 */ cpu->f[13] = cpu->f[9] * cpu->f[29];
|
|
/* 027F11C4 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[12], -(cpu->f[30]));
|
|
/* 027F11C8 */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 027F11CC */ cpu->f[1] = cpu->f[27] * cpu->f[9];
|
|
/* 027F11D0 */ Gambit_fn_02827710(cpu);
|
|
/* 027F11D4 */ cpu->r[3] = 0x00000000u - cpu->r[3];
|
|
/* 027F11D8 */ cpu->r[0] = 0x43300000u;
|
|
/* 027F11DC */ cpu->r[11] = 0x10110000u;
|
|
/* 027F11E0 */ cpu->r[12] = cpu->r[3] + 0xC0000000u;
|
|
/* 027F11E4 */ _t119 = cpu->r[11] + 0x00000320u;
|
|
/* 027F11E4 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t119);
|
|
/* 027F11E8 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F11EC */ _t120 = cpu->r[1] + 0x00000020u;
|
|
/* 027F11EC */ rbrew_write32(cpu->mem, _t120, cpu->r[0]);
|
|
/* 027F11F0 */ _t121 = cpu->r[1] + 0x00000024u;
|
|
/* 027F11F0 */ rbrew_write32(cpu->mem, _t121, cpu->r[12]);
|
|
/* 027F11F4 */ _t122 = cpu->r[1] + 0x00000020u;
|
|
/* 027F11F4 */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t122);
|
|
/* 027F11F8 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F11FC */ cpu->f[11] = cpu->f[9] - cpu->f[8];
|
|
/* 027F1200 */ _t123 = cpu->r[12] + 0x00000334u;
|
|
/* 027F1200 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 027F1204 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1208 */ cpu->f[10] = (double)(float)cpu->f[11];
|
|
/* 027F120C */ _t124 = cpu->r[12] + 0x00000338u;
|
|
/* 027F120C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 027F1210 */ cpu->f[7] = fma(cpu->f[10], cpu->f[11], -(cpu->f[28]));
|
|
/* 027F1214 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[31]);
|
|
/* 027F1218 */ cpu->f[31] = cpu->f[12] * cpu->f[7];
|
|
/* 027F121C */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F121C */ _t126 = _t125 & 0x00000001u;
|
|
/* 027F121C */ if (_t126) goto L_027F1220; else goto L_027F13A0;
|
|
L_027F1220: ; // 0x27f1220
|
|
/* 027F1220 */ goto L_027F139C;
|
|
L_027F1224: ; // 0x27f1224
|
|
/* 027F1224 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F1228 */ _t127 = cpu->r[11] + 0x00000330u;
|
|
/* 027F1228 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 027F122C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[7]);
|
|
/* 027F1230 */ _t128 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1230 */ _t129 = _t128 & 0x00000001u;
|
|
/* 027F1230 */ if (_t129) goto L_027F1234; else goto L_027F130C;
|
|
L_027F1234: ; // 0x27f1234
|
|
/* 027F1234 */ cpu->f[12] = -fma(cpu->f[27], cpu->f[27], -(cpu->f[28]));
|
|
/* 027F1238 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 027F123C */ _t130 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F123C */ _t131 = _t130 & 0x00000001u;
|
|
/* 027F123C */ if (_t131) goto L_027F129C; else goto L_027F1240;
|
|
L_027F1240: ; // 0x27f1240
|
|
/* 027F1240 */ cpu->f[8] = cpu->f[31] * cpu->f[12];
|
|
/* 027F1244 */ cpu->f[8] = cpu->f[8] / cpu->f[27];
|
|
/* 027F1248 */ cpu->f[1] = -cpu->f[8];
|
|
/* 027F124C */ Gambit_fn_02827710(cpu);
|
|
/* 027F1250 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F1254 */ cpu->r[0] = 0x43300000u;
|
|
/* 027F1258 */ cpu->r[3] = 0x00000000u - cpu->r[3];
|
|
/* 027F125C */ _t132 = cpu->r[11] + 0x00000320u;
|
|
/* 027F125C */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t132);
|
|
/* 027F1260 */ cpu->r[12] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 027F1264 */ _t133 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1264 */ rbrew_write32(cpu->mem, _t133, cpu->r[0]);
|
|
/* 027F1268 */ _t134 = cpu->r[1] + 0x00000024u;
|
|
/* 027F1268 */ rbrew_write32(cpu->mem, _t134, cpu->r[12]);
|
|
/* 027F126C */ _t135 = cpu->r[1] + 0x00000020u;
|
|
/* 027F126C */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t135);
|
|
/* 027F1270 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1274 */ cpu->f[11] = cpu->f[9] - cpu->f[8];
|
|
/* 027F1278 */ _t136 = cpu->r[12] + 0x00000334u;
|
|
/* 027F1278 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 027F127C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1280 */ cpu->f[10] = (double)(float)cpu->f[11];
|
|
/* 027F1284 */ _t137 = cpu->r[12] + 0x00000338u;
|
|
/* 027F1284 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 027F1288 */ cpu->f[7] = fma(cpu->f[10], cpu->f[11], -(cpu->f[28]));
|
|
/* 027F128C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[31]);
|
|
/* 027F1290 */ cpu->f[31] = cpu->f[12] * cpu->f[7];
|
|
/* 027F1294 */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1294 */ _t139 = _t138 & 0x00000001u;
|
|
/* 027F1294 */ if (_t139) goto L_027F1298; else goto L_027F13A0;
|
|
L_027F1298: ; // 0x27f1298
|
|
/* 027F1298 */ goto L_027F139C;
|
|
L_027F129C: ; // 0x27f129c
|
|
/* 027F129C */ _ft140 = sqrt(cpu->f[12]);
|
|
/* 027F129C */ _ft141 = (double)(int32_t)0x00000001u;
|
|
/* 027F129C */ cpu->f[13] = _ft141 / _ft140;
|
|
/* 027F12A0 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 027F12A4 */ cpu->f[7] = cpu->f[13] * cpu->f[29];
|
|
/* 027F12A8 */ cpu->f[0] = -fma(cpu->f[0], cpu->f[12], -(cpu->f[30]));
|
|
/* 027F12AC */ cpu->f[13] = cpu->f[0] * cpu->f[7];
|
|
/* 027F12B0 */ cpu->f[8] = cpu->f[13] * cpu->f[12];
|
|
/* 027F12B4 */ cpu->f[8] = cpu->f[8] / cpu->f[27];
|
|
/* 027F12B8 */ cpu->f[1] = -cpu->f[8];
|
|
/* 027F12BC */ Gambit_fn_02827710(cpu);
|
|
/* 027F12C0 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F12C4 */ cpu->r[0] = 0x43300000u;
|
|
/* 027F12C8 */ cpu->r[3] = 0x00000000u - cpu->r[3];
|
|
/* 027F12CC */ _t142 = cpu->r[11] + 0x00000320u;
|
|
/* 027F12CC */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t142);
|
|
/* 027F12D0 */ cpu->r[12] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 027F12D4 */ _t143 = cpu->r[1] + 0x00000020u;
|
|
/* 027F12D4 */ rbrew_write32(cpu->mem, _t143, cpu->r[0]);
|
|
/* 027F12D8 */ _t144 = cpu->r[1] + 0x00000024u;
|
|
/* 027F12D8 */ rbrew_write32(cpu->mem, _t144, cpu->r[12]);
|
|
/* 027F12DC */ _t145 = cpu->r[1] + 0x00000020u;
|
|
/* 027F12DC */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t145);
|
|
/* 027F12E0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F12E4 */ cpu->f[11] = cpu->f[9] - cpu->f[8];
|
|
/* 027F12E8 */ _t146 = cpu->r[12] + 0x00000334u;
|
|
/* 027F12E8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 027F12EC */ cpu->r[12] = 0x10110000u;
|
|
/* 027F12F0 */ cpu->f[10] = (double)(float)cpu->f[11];
|
|
/* 027F12F4 */ _t147 = cpu->r[12] + 0x00000338u;
|
|
/* 027F12F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 027F12F8 */ cpu->f[7] = fma(cpu->f[10], cpu->f[11], -(cpu->f[28]));
|
|
/* 027F12FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[31]);
|
|
/* 027F1300 */ cpu->f[31] = cpu->f[12] * cpu->f[7];
|
|
/* 027F1304 */ _t148 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1304 */ _t149 = _t148 & 0x00000001u;
|
|
/* 027F1304 */ if (_t149) goto L_027F1308; else goto L_027F13A0;
|
|
L_027F1308: ; // 0x27f1308
|
|
/* 027F1308 */ goto L_027F139C;
|
|
L_027F130C: ; // 0x27f130c
|
|
/* 027F130C */ cpu->f[11] = -fma(cpu->f[27], cpu->f[27], -(cpu->f[28]));
|
|
/* 027F1310 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 027F1314 */ _t150 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1314 */ _t151 = _t150 & 0x00000001u;
|
|
/* 027F1314 */ if (_t151) goto L_027F132C; else goto L_027F1318;
|
|
L_027F1318: ; // 0x27f1318
|
|
/* 027F1318 */ cpu->f[7] = cpu->f[27] * cpu->f[31];
|
|
/* 027F131C */ cpu->f[1] = -cpu->f[7];
|
|
/* 027F1320 */ Gambit_fn_02827710(cpu);
|
|
/* 027F1324 */ cpu->r[3] = cpu->r[3] + 0x40000000u;
|
|
/* 027F1328 */ goto L_027F1354;
|
|
L_027F132C: ; // 0x27f132c
|
|
/* 027F132C */ cpu->f[13] = -fma(cpu->f[27], cpu->f[27], -(cpu->f[28]));
|
|
/* 027F1330 */ _ft152 = sqrt(cpu->f[13]);
|
|
/* 027F1330 */ _ft153 = (double)(int32_t)0x00000001u;
|
|
/* 027F1330 */ cpu->f[0] = _ft153 / _ft152;
|
|
/* 027F1334 */ cpu->f[8] = cpu->f[0] * cpu->f[0];
|
|
/* 027F1338 */ cpu->f[9] = cpu->f[0] * cpu->f[29];
|
|
/* 027F133C */ cpu->f[8] = -fma(cpu->f[8], cpu->f[13], -(cpu->f[30]));
|
|
/* 027F1340 */ cpu->f[0] = cpu->f[8] * cpu->f[9];
|
|
/* 027F1344 */ cpu->f[7] = cpu->f[27] * cpu->f[0];
|
|
/* 027F1348 */ cpu->f[1] = -cpu->f[7];
|
|
/* 027F134C */ Gambit_fn_02827710(cpu);
|
|
/* 027F1350 */ cpu->r[3] = cpu->r[3] + 0x40000000u;
|
|
L_027F1354: ; // 0x27f1354
|
|
/* 027F1354 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F1358 */ cpu->r[0] = 0x43300000u;
|
|
/* 027F135C */ cpu->r[12] = cpu->r[3] + 0x80000000u;
|
|
/* 027F1360 */ _t154 = cpu->r[11] + 0x00000320u;
|
|
/* 027F1360 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t154);
|
|
/* 027F1364 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F1368 */ _t155 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1368 */ rbrew_write32(cpu->mem, _t155, cpu->r[0]);
|
|
/* 027F136C */ _t156 = cpu->r[1] + 0x00000024u;
|
|
/* 027F136C */ rbrew_write32(cpu->mem, _t156, cpu->r[12]);
|
|
/* 027F1370 */ _t157 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1370 */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t157);
|
|
/* 027F1374 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1378 */ cpu->f[11] = cpu->f[9] - cpu->f[8];
|
|
/* 027F137C */ _t158 = cpu->r[12] + 0x00000334u;
|
|
/* 027F137C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t158);
|
|
/* 027F1380 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1384 */ cpu->f[10] = (double)(float)cpu->f[11];
|
|
/* 027F1388 */ _t159 = cpu->r[12] + 0x00000338u;
|
|
/* 027F1388 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 027F138C */ cpu->f[7] = fma(cpu->f[10], cpu->f[11], -(cpu->f[28]));
|
|
/* 027F1390 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[31]);
|
|
/* 027F1394 */ cpu->f[31] = cpu->f[12] * cpu->f[7];
|
|
/* 027F1398 */ _t160 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1398 */ _t161 = _t160 & 0x00000001u;
|
|
/* 027F1398 */ if (_t161) goto L_027F139C; else goto L_027F13A0;
|
|
L_027F139C: ; // 0x27f139c
|
|
/* 027F139C */ cpu->f[31] = -cpu->f[31];
|
|
L_027F13A0: ; // 0x27f13a0
|
|
/* 027F13A0 */ _t162 = cpu->r[1] + 0x00000070u;
|
|
/* 027F13A0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 027F13A4 */ _t163 = cpu->r[1] + 0x00000060u;
|
|
/* 027F13A4 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 027F13A8 */ _t164 = cpu->r[1] + 0x00000068u;
|
|
/* 027F13A8 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t164);
|
|
/* 027F13AC */ _t165 = cpu->r[1] + 0x00000080u;
|
|
/* 027F13AC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 027F13B0 */ _t166 = cpu->r[1] + 0x00000058u;
|
|
/* 027F13B0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t166);
|
|
/* 027F13B4 */ _t167 = cpu->r[1] + 0x00000078u;
|
|
/* 027F13B4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t167);
|
|
/* 027F13B8 */ _t168 = cpu->r[1] + 0x00000090u;
|
|
/* 027F13B8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 027F13BC */ _t169 = cpu->r[1] + 0x00000040u;
|
|
/* 027F13BC */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 027F13C0 */ _t170 = cpu->r[1] + 0x00000088u;
|
|
/* 027F13C0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t170);
|
|
/* 027F13C4 */ _t171 = cpu->r[1] + 0x00000038u;
|
|
/* 027F13C4 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t171);
|
|
/* 027F13C8 */ _t172 = cpu->r[1] + 0x00000050u;
|
|
/* 027F13C8 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 027F13CC */ cpu->f[1] = cpu->f[31];
|
|
/* 027F13D0 */ _t173 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F13D0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 027F13D4 */ _t174 = cpu->r[1] + 0x00000048u;
|
|
/* 027F13D4 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t174);
|
|
/* 027F13D8 */ _t175 = cpu->r[1] + 0x00000098u;
|
|
/* 027F13D8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t175);
|
|
/* 027F13DC */ _t176 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F13DC */ _t177 = _t176 & 0x00000001u;
|
|
/* 027F13DC */ if (_t177) goto L_027F13E0; // else: addr-0 trap, fall-through
|
|
L_027F13E0: ; // 0x27f13e0
|
|
/* 027F13E0 */ _t178 = cpu->r[1] + 0x000000ACu;
|
|
/* 027F13E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t178);
|
|
/* 027F13E4 */ cpu->lr = cpu->r[0];
|
|
/* 027F13E8 */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 027F13EC */ return;
|
|
}
|
|
|
|
// fn_027F13F0 @ 0x27f13f0
|
|
void Gambit_fn_027F13F0(CPUState* 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_027F13F0: ; // 0x27f13f0
|
|
/* 027F13F0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F13F4 */ cpu->r[8] = 0x101F0000u;
|
|
/* 027F13F8 */ _t0 = cpu->r[12] + 0x00000314u;
|
|
/* 027F13F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 027F13FC */ cpu->r[8] = cpu->r[8] + 0x00003870u;
|
|
/* 027F1400 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F1404 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F1408 */ _t1 = cpu->r[8] + 0x00000004u;
|
|
/* 027F1408 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 027F140C */ _t2 = cpu->r[10] + 0x00000310u;
|
|
/* 027F140C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027F1410 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F1414 */ _t3 = cpu->r[8] + 0x00000000u;
|
|
/* 027F1414 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 027F1418 */ cpu->r[11] = cpu->r[11] + 0x0000384Cu;
|
|
/* 027F141C */ cpu->r[9] = 0x101F0000u;
|
|
/* 027F1420 */ _t4 = cpu->r[8] + 0x00000008u;
|
|
/* 027F1420 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[13]);
|
|
/* 027F1424 */ cpu->r[12] = cpu->r[12] + 0x00003858u;
|
|
/* 027F1428 */ _t5 = cpu->r[9] + 0x00003838u;
|
|
/* 027F1428 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 027F1428 */ cpu->r[9] = _t5;
|
|
/* 027F142C */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F1430 */ _t6 = cpu->r[11] + 0x00000004u;
|
|
/* 027F1430 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 027F1434 */ cpu->r[10] = cpu->r[10] + 0x00003840u;
|
|
/* 027F1438 */ _t7 = cpu->r[11] + 0x00000008u;
|
|
/* 027F1438 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 027F143C */ _t8 = cpu->r[9] + 0x00000004u;
|
|
/* 027F143C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 027F1440 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 027F1440 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 027F1444 */ _t10 = cpu->r[10] + 0x00000008u;
|
|
/* 027F1444 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 027F1448 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F144C */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 027F144C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 027F1450 */ _t12 = cpu->r[10] + 0x00000000u;
|
|
/* 027F1450 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 027F1454 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 027F1454 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 027F1458 */ _t14 = cpu->r[11] + 0x00003830u;
|
|
/* 027F1458 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 027F1458 */ cpu->r[11] = _t14;
|
|
/* 027F145C */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F1460 */ _t15 = cpu->r[7] + 0x00003864u;
|
|
/* 027F1460 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 027F1460 */ cpu->r[7] = _t15;
|
|
/* 027F1464 */ _t16 = cpu->r[7] + 0x00000004u;
|
|
/* 027F1464 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 027F1468 */ _t17 = cpu->r[7] + 0x00000008u;
|
|
/* 027F1468 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 027F146C */ _t18 = cpu->r[12] + 0x00000000u;
|
|
/* 027F146C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 027F1470 */ _t19 = cpu->r[12] + 0x00000008u;
|
|
/* 027F1470 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 027F1474 */ _t20 = cpu->r[11] + 0x00000004u;
|
|
/* 027F1474 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 027F1478 */ return;
|
|
}
|
|
|
|
// fn_027F147C @ 0x27f147c
|
|
void Gambit_fn_027F147C(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_027F147C: ; // 0x27f147c
|
|
/* 027F147C */ cpu->r[0] = cpu->lr;
|
|
/* 027F1480 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 027F1480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1480 */ cpu->r[1] = _t0;
|
|
/* 027F1484 */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 027F1484 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F1488 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F148C */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F148C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F1490 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F1494 */ cpu->r[4] = 0x00000000u;
|
|
/* 027F1498 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F149C */ cpu->r[5] = 0x00000050u;
|
|
/* 027F14A0 */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 027F14A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F14A4 */ rbrew_dispatch(cpu, 0x02d0a6f0u);
|
|
/* 027F14A8 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F14AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F14B0 */ cpu->r[4] = 0x00000004u;
|
|
/* 027F14B4 */ cpu->r[7] = cpu->r[6];
|
|
/* 027F14B8 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F14BC */ Gambit_fn_02C6DB64(cpu);
|
|
/* 027F14C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F14C4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F14C4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F14C4 */ if (_t5) goto L_027F14FC; else goto L_027F14C8;
|
|
L_027F14C8: ; // 0x27f14c8
|
|
/* 027F14C8 */ cpu->r[9] = 0x00000005u;
|
|
/* 027F14CC */ cpu->r[7] = cpu->r[1] + 0x00000004u;
|
|
/* 027F14D0 */ cpu->ctr = cpu->r[9];
|
|
/* 027F14D4 */ cpu->r[8] = cpu->r[31] + 0xFFFFFFFCu;
|
|
L_027F14D8: ; // 0x27f14d8
|
|
/* 027F14D8 */ _t6 = cpu->r[7] + 0x00000004u;
|
|
/* 027F14D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F14DC */ _t7 = cpu->r[8] + 0x00000004u;
|
|
/* 027F14DC */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 027F14E0 */ _t8 = cpu->r[7] + 0x00000008u;
|
|
/* 027F14E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F14E4 */ _t9 = cpu->r[8] + 0x00000008u;
|
|
/* 027F14E4 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F14E8 */ _t10 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F14E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F14EC */ _t11 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027F14EC */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 027F14F0 */ _t12 = cpu->r[7] + 0x00000010u;
|
|
/* 027F14F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F14F0 */ cpu->r[7] = _t12;
|
|
/* 027F14F4 */ _t13 = cpu->r[8] + 0x00000010u;
|
|
/* 027F14F4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027F14F4 */ cpu->r[8] = _t13;
|
|
/* 027F14F8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F14F8 */ _t14 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F14F8 */ _t15 = _t14 >> (0x00000002u & 31u);
|
|
/* 027F14F8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F14F8 */ if (_t16) goto L_027F14D8; else goto L_027F14FC;
|
|
L_027F14FC: ; // 0x27f14fc
|
|
/* 027F14FC */ _t17 = cpu->r[1] + 0x00000064u;
|
|
/* 027F14FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F1500 */ _t18 = cpu->r[1] + 0x00000058u;
|
|
/* 027F1500 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F1504 */ cpu->lr = cpu->r[0];
|
|
/* 027F1508 */ _t19 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F1508 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F150C */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 027F1510 */ return;
|
|
}
|
|
|
|
// fn_027F1480 @ 0x27f1480
|
|
void Gambit_fn_027F1480(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_027F1480: ; // 0x27f1480
|
|
/* 027F1480 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 027F1480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1480 */ cpu->r[1] = _t0;
|
|
/* 027F1484 */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 027F1484 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F1488 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F148C */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F148C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F1490 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F1494 */ cpu->r[4] = 0x00000000u;
|
|
/* 027F1498 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F149C */ cpu->r[5] = 0x00000050u;
|
|
/* 027F14A0 */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 027F14A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F14A4 */ rbrew_dispatch(cpu, 0x02d0a6f0u);
|
|
/* 027F14A8 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F14AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F14B0 */ cpu->r[4] = 0x00000004u;
|
|
/* 027F14B4 */ cpu->r[7] = cpu->r[6];
|
|
/* 027F14B8 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F14BC */ Gambit_fn_02C6DB64(cpu);
|
|
/* 027F14C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F14C4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F14C4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F14C4 */ if (_t5) goto L_027F14FC; else goto L_027F14C8;
|
|
L_027F14C8: ; // 0x27f14c8
|
|
/* 027F14C8 */ cpu->r[9] = 0x00000005u;
|
|
/* 027F14CC */ cpu->r[7] = cpu->r[1] + 0x00000004u;
|
|
/* 027F14D0 */ cpu->ctr = cpu->r[9];
|
|
/* 027F14D4 */ cpu->r[8] = cpu->r[31] + 0xFFFFFFFCu;
|
|
L_027F14D8: ; // 0x27f14d8
|
|
/* 027F14D8 */ _t6 = cpu->r[7] + 0x00000004u;
|
|
/* 027F14D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F14DC */ _t7 = cpu->r[8] + 0x00000004u;
|
|
/* 027F14DC */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 027F14E0 */ _t8 = cpu->r[7] + 0x00000008u;
|
|
/* 027F14E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F14E4 */ _t9 = cpu->r[8] + 0x00000008u;
|
|
/* 027F14E4 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F14E8 */ _t10 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F14E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F14EC */ _t11 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027F14EC */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 027F14F0 */ _t12 = cpu->r[7] + 0x00000010u;
|
|
/* 027F14F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F14F0 */ cpu->r[7] = _t12;
|
|
/* 027F14F4 */ _t13 = cpu->r[8] + 0x00000010u;
|
|
/* 027F14F4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027F14F4 */ cpu->r[8] = _t13;
|
|
/* 027F14F8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F14F8 */ _t14 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F14F8 */ _t15 = _t14 >> (0x00000002u & 31u);
|
|
/* 027F14F8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F14F8 */ if (_t16) goto L_027F14D8; else goto L_027F14FC;
|
|
L_027F14FC: ; // 0x27f14fc
|
|
/* 027F14FC */ _t17 = cpu->r[1] + 0x00000064u;
|
|
/* 027F14FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F1500 */ _t18 = cpu->r[1] + 0x00000058u;
|
|
/* 027F1500 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F1504 */ cpu->lr = cpu->r[0];
|
|
/* 027F1508 */ _t19 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F1508 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F150C */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 027F1510 */ return;
|
|
}
|
|
|
|
// fn_027F1518 @ 0x27f1518
|
|
void Gambit_fn_027F1518(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027F1518: ; // 0x27f1518
|
|
/* 027F1518 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F1518 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1518 */ cpu->r[1] = _t0;
|
|
/* 027F151C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F151C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F1520 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F1524 */ cpu->r[4] = 0x00000000u;
|
|
/* 027F1528 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1528 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F152C */ Gambit_fn_027F147C(cpu);
|
|
/* 027F1530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1534 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1534 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F1534 */ if (_t4) goto L_027F1538; else goto L_027F1560;
|
|
L_027F1538: ; // 0x27f1538
|
|
/* 027F1538 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F153C */ Gambit_fn_02C78D3C(cpu);
|
|
/* 027F1540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1544 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1544 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F1544 */ if (_t6) goto L_027F1560; else goto L_027F1548;
|
|
L_027F1548: ; // 0x27f1548
|
|
/* 027F1548 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1548 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F154C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F154C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F1550 */ cpu->lr = cpu->r[0];
|
|
/* 027F1554 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F1558 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F155C */ return;
|
|
L_027F1560: ; // 0x27f1560
|
|
/* 027F1560 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F1564 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1564 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F1568 */ cpu->lr = cpu->r[0];
|
|
/* 027F156C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F1570 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F1574 */ return;
|
|
}
|
|
|
|
// fn_027F1578 @ 0x27f1578
|
|
void Gambit_fn_027F1578(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_027F1578: ; // 0x27f1578
|
|
/* 027F1578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F157C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F157C */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F157C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F157C */ goto L_027F1580;
|
|
L_027F1580: ; // 0x27f1580
|
|
/* 027F1580 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F1580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F1584 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1584 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F1584 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F1584 */ goto L_027F1588;
|
|
L_027F1588: ; // 0x27f1588
|
|
/* 027F1588 */ 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_027F158C @ 0x27f158c
|
|
void Gambit_fn_027F158C(CPUState* cpu) {
|
|
L_027F158C: ; // 0x27f158c
|
|
/* 027F158C */ return;
|
|
}
|
|
|
|
// fn_027F1590 @ 0x27f1590
|
|
void Gambit_fn_027F1590(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_027F1590: ; // 0x27f1590
|
|
/* 027F1590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1594 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1594 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F1594 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F1594 */ goto L_027F1598;
|
|
L_027F1598: ; // 0x27f1598
|
|
/* 027F1598 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F1598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F159C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F159C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F159C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F159C */ goto L_027F15A0;
|
|
L_027F15A0: ; // 0x27f15a0
|
|
/* 027F15A0 */ 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_027F15A4 @ 0x27f15a4
|
|
void Gambit_fn_027F15A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F15A4: ; // 0x27f15a4
|
|
/* 027F15A4 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027F15A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F15A8 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 027F15A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F15AC */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 027F15B0 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F15B4 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 027F15B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027F15B8 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F15B8 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027F15BC */ return;
|
|
}
|
|
|
|
// fn_027F15C0 @ 0x27f15c0
|
|
void Gambit_fn_027F15C0(CPUState* cpu) {
|
|
L_027F15C0: ; // 0x27f15c0
|
|
/* 027F15C0 */ return;
|
|
}
|
|
|
|
// fn_027F15C4 @ 0x27f15c4
|
|
void Gambit_fn_027F15C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F15C4: ; // 0x27f15c4
|
|
/* 027F15C4 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 027F15C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F15C8 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F15CC */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 027F15CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F15D0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 027F15D4 */ _t2 = cpu->r[9] + 0x0000739Au;
|
|
/* 027F15D4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t2);
|
|
/* 027F15D8 */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
/* 027F15DC */ _t3 = cpu->r[12] + 0xFFFFFFFEu;
|
|
/* 027F15DC */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[0]);
|
|
/* 027F15E0 */ return;
|
|
}
|
|
|
|
// fn_027F15E4 @ 0x27f15e4
|
|
void Gambit_fn_027F15E4(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_027F15E4: ; // 0x27f15e4
|
|
/* 027F15E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F15E8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F15E8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F15E8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F15E8 */ goto L_027F15EC;
|
|
L_027F15EC: ; // 0x27f15ec
|
|
/* 027F15EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F15EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F15F0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F15F0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F15F0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F15F0 */ goto L_027F15F4;
|
|
L_027F15F4: ; // 0x27f15f4
|
|
/* 027F15F4 */ 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_027F15F8 @ 0x27f15f8
|
|
void Gambit_fn_027F15F8(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_027F15F8: ; // 0x27f15f8
|
|
/* 027F15F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F15FC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F15FC */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F15FC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F15FC */ goto L_027F1600;
|
|
L_027F1600: ; // 0x27f1600
|
|
/* 027F1600 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F1600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F1604 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1604 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F1604 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F1604 */ goto L_027F1608;
|
|
L_027F1608: ; // 0x27f1608
|
|
/* 027F1608 */ 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_027F160C @ 0x27f160c
|
|
void Gambit_fn_027F160C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027F160C: ; // 0x27f160c
|
|
/* 027F160C */ cpu->r[0] = cpu->lr;
|
|
/* 027F1610 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F1610 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F1614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1618 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F1618 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F1618 */ cpu->r[1] = _t1;
|
|
/* 027F161C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F161C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F161C */ if (_t3) goto L_027F1620; else goto L_027F1630;
|
|
L_027F1620: ; // 0x27f1620
|
|
/* 027F1620 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F1624 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F162C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F162C */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F162C */ if (_t5) goto L_027F1648; else goto L_027F1630;
|
|
L_027F1630: ; // 0x27f1630
|
|
/* 027F1630 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F1634 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 027F1638 */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 027F1638 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F163C */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 027F163C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 027F1640 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1640 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027F1644 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1644 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_027F1648: ; // 0x27f1648
|
|
/* 027F1648 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F164C */ cpu->lr = cpu->r[0];
|
|
/* 027F1650 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F1654 */ return;
|
|
}
|
|
|
|
// fn_027F1618 @ 0x27f1618
|
|
void Gambit_fn_027F1618(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027F1618: ; // 0x27f1618
|
|
/* 027F1618 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F1618 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1618 */ cpu->r[1] = _t0;
|
|
/* 027F161C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F161C */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F161C */ if (_t2) goto L_027F1620; else goto L_027F1630;
|
|
L_027F1620: ; // 0x27f1620
|
|
/* 027F1620 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F1624 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F162C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F162C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F162C */ if (_t4) goto L_027F1648; else goto L_027F1630;
|
|
L_027F1630: ; // 0x27f1630
|
|
/* 027F1630 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F1634 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 027F1638 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 027F1638 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F163C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 027F163C */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 027F1640 */ _t7 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1640 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F1644 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1644 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_027F1648: ; // 0x27f1648
|
|
/* 027F1648 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F164C */ cpu->lr = cpu->r[0];
|
|
/* 027F1650 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F1654 */ return;
|
|
}
|
|
|
|
// fn_027F1658 @ 0x27f1658
|
|
void Gambit_fn_027F1658(CPUState* cpu) {
|
|
uint32_t _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_027F1658: ; // 0x27f1658
|
|
/* 027F1658 */ cpu->r[0] = cpu->lr;
|
|
/* 027F165C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F165C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F165C */ cpu->r[1] = _t0;
|
|
/* 027F1660 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1660 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 027F1664 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1664 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F1668 */ cpu->r[30] = cpu->r[5];
|
|
/* 027F166C */ cpu->r[28] = cpu->r[3];
|
|
/* 027F1670 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1670 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F1674 */ cpu->r[5] = 0x00000004u;
|
|
/* 027F1678 */ cpu->r[3] = 0x00000014u;
|
|
/* 027F167C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F167C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F1680 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1680 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F1684 */ cpu->r[29] = cpu->r[4];
|
|
/* 027F1688 */ cpu->r[4] = cpu->r[7];
|
|
/* 027F168C */ cpu->r[31] = cpu->r[6];
|
|
/* 027F1690 */ Gambit_fn_02801AC8(cpu);
|
|
/* 027F1694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1698 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1698 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F1698 */ if (_t7) goto L_027F16A0; else goto L_027F169C;
|
|
L_027F169C: ; // 0x27f169c
|
|
/* 027F169C */ Gambit_fn_027C6158(cpu);
|
|
L_027F16A0: ; // 0x27f16a0
|
|
/* 027F16A0 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 027F16A0 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 027F16A4 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F16A4 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 027F16A8 */ _t10 = cpu->r[28] + 0x00000000u;
|
|
/* 027F16A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F16AC */ _t11 = cpu->r[9] + 0x00000010u;
|
|
/* 027F16AC */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 027F16B0 */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 027F16B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F16B4 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 027F16B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F16B8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F16BC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F16C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F16C4 */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 027F16C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F16C8 */ cpu->r[4] = 0x00000003u;
|
|
/* 027F16CC */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 027F16CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F16D0 */ Gambit_fn_027C63C4(cpu);
|
|
/* 027F16D4 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F16D8 */ _t16 = cpu->r[28] + 0x00000000u;
|
|
/* 027F16D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F16DC */ _t17 = cpu->r[11] + 0x00000418u;
|
|
/* 027F16DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 027F16E0 */ _t18 = cpu->r[10] + 0x00000008u;
|
|
/* 027F16E0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 027F16E4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F16E4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F16E8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F16E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F16EC */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F16EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F16F0 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 027F16F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F16F4 */ cpu->lr = cpu->r[0];
|
|
/* 027F16F8 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 027F16F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F16FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F1700 */ return;
|
|
}
|
|
|
|
// fn_027F165C @ 0x27f165c
|
|
void Gambit_fn_027F165C(CPUState* cpu) {
|
|
uint32_t _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_027F165C: ; // 0x27f165c
|
|
/* 027F165C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F165C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F165C */ cpu->r[1] = _t0;
|
|
/* 027F1660 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1660 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 027F1664 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1664 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F1668 */ cpu->r[30] = cpu->r[5];
|
|
/* 027F166C */ cpu->r[28] = cpu->r[3];
|
|
/* 027F1670 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1670 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F1674 */ cpu->r[5] = 0x00000004u;
|
|
/* 027F1678 */ cpu->r[3] = 0x00000014u;
|
|
/* 027F167C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F167C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F1680 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1680 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F1684 */ cpu->r[29] = cpu->r[4];
|
|
/* 027F1688 */ cpu->r[4] = cpu->r[7];
|
|
/* 027F168C */ cpu->r[31] = cpu->r[6];
|
|
/* 027F1690 */ Gambit_fn_02801AC8(cpu);
|
|
/* 027F1694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1698 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1698 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F1698 */ if (_t7) goto L_027F16A0; else goto L_027F169C;
|
|
L_027F169C: ; // 0x27f169c
|
|
/* 027F169C */ Gambit_fn_027C6158(cpu);
|
|
L_027F16A0: ; // 0x27f16a0
|
|
/* 027F16A0 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 027F16A0 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 027F16A4 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F16A4 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 027F16A8 */ _t10 = cpu->r[28] + 0x00000000u;
|
|
/* 027F16A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F16AC */ _t11 = cpu->r[9] + 0x00000010u;
|
|
/* 027F16AC */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 027F16B0 */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 027F16B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F16B4 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 027F16B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F16B8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F16BC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F16C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F16C4 */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 027F16C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F16C8 */ cpu->r[4] = 0x00000003u;
|
|
/* 027F16CC */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 027F16CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F16D0 */ Gambit_fn_027C63C4(cpu);
|
|
/* 027F16D4 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F16D8 */ _t16 = cpu->r[28] + 0x00000000u;
|
|
/* 027F16D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F16DC */ _t17 = cpu->r[11] + 0x00000418u;
|
|
/* 027F16DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 027F16E0 */ _t18 = cpu->r[10] + 0x00000008u;
|
|
/* 027F16E0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 027F16E4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F16E4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F16E8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F16E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F16EC */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F16EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F16F0 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 027F16F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F16F4 */ cpu->lr = cpu->r[0];
|
|
/* 027F16F8 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 027F16F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F16FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F1700 */ return;
|
|
}
|
|
|
|
// fn_027F1704 @ 0x27f1704
|
|
void Gambit_fn_027F1704(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F1704: ; // 0x27f1704
|
|
/* 027F1704 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 027F1708 */ cpu->r[12] = 0x00000000u;
|
|
/* 027F170C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 027F170C */ rbrew_write32(cpu->mem, _t0, cpu->r[11]);
|
|
/* 027F1710 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 027F1710 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 027F1714 */ _t2 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1714 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 027F1718 */ return;
|
|
}
|
|
|
|
// fn_027F171C @ 0x27f171c
|
|
void Gambit_fn_027F171C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75;
|
|
|
|
L_027F171C: ; // 0x27f171c
|
|
/* 027F171C */ cpu->r[0] = cpu->lr;
|
|
/* 027F1720 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 027F1720 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1720 */ cpu->r[1] = _t0;
|
|
/* 027F1724 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1724 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027F1728 */ /* nop */
|
|
/* 027F172C */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 027F172C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F1730 */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F1730 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F1734 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1734 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F1738 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1738 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 027F173C */ cpu->r[30] = cpu->r[3];
|
|
/* 027F1740 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 027F1740 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 027F1744 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 027F1744 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F1748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F174C */ cpu->r[29] = 0x00000001u;
|
|
/* 027F1750 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1750 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F1750 */ if (_t9) goto L_027F1754; else goto L_027F1768;
|
|
L_027F1754: ; // 0x27f1754
|
|
/* 027F1754 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F1758 */ _t10 = cpu->r[30] + 0x00000008u;
|
|
/* 027F1758 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 027F175C */ _t11 = cpu->r[30] + 0x00000004u;
|
|
/* 027F175C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027F1760 */ cpu->r[29] = cpu->r[0];
|
|
/* 027F1764 */ _t12 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F1764 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_027F1768: ; // 0x27f1768
|
|
/* 027F1768 */ _t13 = cpu->r[30] + 0x00000008u;
|
|
/* 027F1768 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F176C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027F1770 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1770 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F1770 */ if (_t15) goto L_027F1774; else goto L_027F17A8;
|
|
L_027F1774: ; // 0x27f1774
|
|
/* 027F1774 */ cpu->r[10] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 027F1778 */ _t16 = cpu->r[30] + 0x00000008u;
|
|
/* 027F1778 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 027F177C */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F177C */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F1780 */ _t18 = cpu->r[1] + 0x00000030u;
|
|
/* 027F1780 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 027F1784 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1784 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F1788 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1788 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 027F178C */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 027F178C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F1790 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F1794 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1794 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F1794 */ if (_t23) goto L_027F1798; // else: addr-0 trap, fall-through
|
|
L_027F1798: ; // 0x27f1798
|
|
/* 027F1798 */ _t24 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F1798 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F179C */ cpu->lr = cpu->r[0];
|
|
/* 027F17A0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F17A4 */ return;
|
|
L_027F17A8: ; // 0x27f17a8
|
|
/* 027F17A8 */ _t25 = cpu->r[30] + 0x00000004u;
|
|
/* 027F17A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F17AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F17B0 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F17B0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F17B0 */ if (_t27) goto L_027F17B4; else goto L_027F17E8;
|
|
L_027F17B4: ; // 0x27f17b4
|
|
/* 027F17B4 */ cpu->r[5] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 027F17B8 */ _t28 = cpu->r[30] + 0x00000004u;
|
|
/* 027F17B8 */ rbrew_write32(cpu->mem, _t28, cpu->r[5]);
|
|
/* 027F17BC */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F17BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F17C0 */ _t30 = cpu->r[1] + 0x00000030u;
|
|
/* 027F17C0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 027F17C4 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 027F17C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F17C8 */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 027F17C8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 027F17CC */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 027F17CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F17D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F17D4 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F17D4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F17D4 */ if (_t35) goto L_027F17D8; // else: addr-0 trap, fall-through
|
|
L_027F17D8: ; // 0x27f17d8
|
|
/* 027F17D8 */ _t36 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F17D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F17DC */ cpu->lr = cpu->r[0];
|
|
/* 027F17E0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F17E4 */ return;
|
|
L_027F17E8: ; // 0x27f17e8
|
|
/* 027F17E8 */ _t37 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F17E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F17EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F17F0 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F17F0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027F17F0 */ if (_t39) goto L_027F17F4; else goto L_027F1838;
|
|
L_027F17F4: ; // 0x27f17f4
|
|
/* 027F17F4 */ cpu->r[0] = 0x00000006u;
|
|
/* 027F17F8 */ cpu->r[6] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 027F17FC */ _t40 = cpu->r[30] + 0x00000004u;
|
|
/* 027F17FC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 027F1800 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F1804 */ _t41 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F1804 */ rbrew_write32(cpu->mem, _t41, cpu->r[6]);
|
|
/* 027F1808 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1808 */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F1808 */ if (_t43) goto L_027F180C; else goto L_027F18D4;
|
|
L_027F180C: ; // 0x27f180c
|
|
/* 027F180C */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F180C */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F1810 */ _t45 = cpu->r[1] + 0x00000030u;
|
|
/* 027F1810 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 027F1814 */ _t46 = cpu->r[1] + 0x00000024u;
|
|
/* 027F1814 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F1818 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1818 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t47);
|
|
/* 027F181C */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 027F181C */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 027F1820 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F1824 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1824 */ _t50 = _t49 & 0x00000001u;
|
|
/* 027F1824 */ if (_t50) goto L_027F1828; // else: addr-0 trap, fall-through
|
|
L_027F1828: ; // 0x27f1828
|
|
/* 027F1828 */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F1828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F182C */ cpu->lr = cpu->r[0];
|
|
/* 027F1830 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F1834 */ return;
|
|
L_027F1838: ; // 0x27f1838
|
|
/* 027F1838 */ cpu->r[31] = 0x101D0000u;
|
|
/* 027F183C */ _t52 = cpu->r[31] + 0xFFFF9918u;
|
|
/* 027F183C */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F1840 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1844 */ Gambit_fn_02830138(cpu);
|
|
/* 027F1848 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 027F184C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1850 */ cpu->r[10] = cpu->r[9] | 0x3F800000u;
|
|
/* 027F1854 */ _t53 = cpu->r[12] + 0x00000424u;
|
|
/* 027F1854 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 027F1858 */ cpu->r[8] = 0x10110000u;
|
|
/* 027F185C */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F185C */ rbrew_write32(cpu->mem, _t54, cpu->r[10]);
|
|
/* 027F1860 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1860 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 027F1864 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1868 */ _t56 = cpu->r[8] + 0x00000428u;
|
|
/* 027F1868 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 027F186C */ cpu->f[12] = cpu->f[11] - cpu->f[31];
|
|
/* 027F1870 */ _t57 = cpu->r[12] + 0x00000430u;
|
|
/* 027F1870 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 027F1874 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F1878 */ cpu->f[13] = fma(cpu->f[12], cpu->f[13], cpu->f[0]);
|
|
/* 027F187C */ _t58 = cpu->r[11] + 0x0000042Cu;
|
|
/* 027F187C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 027F1880 */ cpu->f[0] = cpu->f[11] * cpu->f[13];
|
|
/* 027F1884 */ cpu->f[12] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 027F1888 */ cpu->r[0] = cpu->r[1] + 0x00000010u;
|
|
/* 027F188C */ /* nop */
|
|
/* 027F1890 */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1890 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59);
|
|
/* 027F1894 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1898 */ _t60 = cpu->r[30] + 0x00000004u;
|
|
/* 027F1898 */ rbrew_write32(cpu->mem, _t60, cpu->r[11]);
|
|
/* 027F189C */ Gambit_fn_02830138(cpu);
|
|
/* 027F18A0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 027F18A4 */ cpu->r[0] = cpu->r[12] | 0x3F800000u;
|
|
/* 027F18A8 */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 027F18A8 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 027F18AC */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 027F18AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 027F18B0 */ cpu->r[8] = 0x10110000u;
|
|
/* 027F18B4 */ cpu->f[0] = cpu->f[11] - cpu->f[31];
|
|
/* 027F18B8 */ _t63 = cpu->r[8] + 0x00000434u;
|
|
/* 027F18B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 027F18BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 027F18C0 */ /* nop */
|
|
/* 027F18C4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[9], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F18C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F18CC */ _t64 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F18CC */ rbrew_write32(cpu->mem, _t64, cpu->r[6]);
|
|
/* 027F18D0 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F18D0 */ _t66 = _t65 & 0x00000001u;
|
|
/* 027F18D0 */ if (_t66) goto L_027F180C; else goto L_027F18D4;
|
|
L_027F18D4: ; // 0x27f18d4
|
|
/* 027F18D4 */ cpu->r[0] = 0x00000007u;
|
|
/* 027F18D8 */ _t67 = cpu->r[30] + 0x00000008u;
|
|
/* 027F18D8 */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 027F18DC */ _t68 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F18DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F18E0 */ _t69 = cpu->r[1] + 0x00000030u;
|
|
/* 027F18E0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 027F18E4 */ _t70 = cpu->r[1] + 0x00000020u;
|
|
/* 027F18E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 027F18E8 */ _t71 = cpu->r[1] + 0x00000028u;
|
|
/* 027F18E8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 027F18EC */ _t72 = cpu->r[1] + 0x00000024u;
|
|
/* 027F18EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027F18F0 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F18F4 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F18F4 */ _t74 = _t73 & 0x00000001u;
|
|
/* 027F18F4 */ if (_t74) goto L_027F18F8; // else: addr-0 trap, fall-through
|
|
L_027F18F8: ; // 0x27f18f8
|
|
/* 027F18F8 */ _t75 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F18F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 027F18FC */ cpu->lr = cpu->r[0];
|
|
/* 027F1900 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F1904 */ return;
|
|
}
|
|
|
|
// fn_027F1720 @ 0x27f1720
|
|
void Gambit_fn_027F1720(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75;
|
|
|
|
L_027F1720: ; // 0x27f1720
|
|
/* 027F1720 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 027F1720 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1720 */ cpu->r[1] = _t0;
|
|
/* 027F1724 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1724 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027F1728 */ /* nop */
|
|
/* 027F172C */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 027F172C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F1730 */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F1730 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F1734 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1734 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F1738 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1738 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 027F173C */ cpu->r[30] = cpu->r[3];
|
|
/* 027F1740 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 027F1740 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 027F1744 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 027F1744 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F1748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F174C */ cpu->r[29] = 0x00000001u;
|
|
/* 027F1750 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1750 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F1750 */ if (_t9) goto L_027F1754; else goto L_027F1768;
|
|
L_027F1754: ; // 0x27f1754
|
|
/* 027F1754 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F1758 */ _t10 = cpu->r[30] + 0x00000008u;
|
|
/* 027F1758 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 027F175C */ _t11 = cpu->r[30] + 0x00000004u;
|
|
/* 027F175C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027F1760 */ cpu->r[29] = cpu->r[0];
|
|
/* 027F1764 */ _t12 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F1764 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_027F1768: ; // 0x27f1768
|
|
/* 027F1768 */ _t13 = cpu->r[30] + 0x00000008u;
|
|
/* 027F1768 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F176C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027F1770 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1770 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F1770 */ if (_t15) goto L_027F1774; else goto L_027F17A8;
|
|
L_027F1774: ; // 0x27f1774
|
|
/* 027F1774 */ cpu->r[10] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 027F1778 */ _t16 = cpu->r[30] + 0x00000008u;
|
|
/* 027F1778 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 027F177C */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F177C */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F1780 */ _t18 = cpu->r[1] + 0x00000030u;
|
|
/* 027F1780 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 027F1784 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1784 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F1788 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1788 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 027F178C */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 027F178C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F1790 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F1794 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1794 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F1794 */ if (_t23) goto L_027F1798; // else: addr-0 trap, fall-through
|
|
L_027F1798: ; // 0x27f1798
|
|
/* 027F1798 */ _t24 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F1798 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F179C */ cpu->lr = cpu->r[0];
|
|
/* 027F17A0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F17A4 */ return;
|
|
L_027F17A8: ; // 0x27f17a8
|
|
/* 027F17A8 */ _t25 = cpu->r[30] + 0x00000004u;
|
|
/* 027F17A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F17AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F17B0 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F17B0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F17B0 */ if (_t27) goto L_027F17B4; else goto L_027F17E8;
|
|
L_027F17B4: ; // 0x27f17b4
|
|
/* 027F17B4 */ cpu->r[5] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 027F17B8 */ _t28 = cpu->r[30] + 0x00000004u;
|
|
/* 027F17B8 */ rbrew_write32(cpu->mem, _t28, cpu->r[5]);
|
|
/* 027F17BC */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F17BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F17C0 */ _t30 = cpu->r[1] + 0x00000030u;
|
|
/* 027F17C0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 027F17C4 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 027F17C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F17C8 */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 027F17C8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 027F17CC */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 027F17CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F17D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F17D4 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F17D4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F17D4 */ if (_t35) goto L_027F17D8; // else: addr-0 trap, fall-through
|
|
L_027F17D8: ; // 0x27f17d8
|
|
/* 027F17D8 */ _t36 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F17D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F17DC */ cpu->lr = cpu->r[0];
|
|
/* 027F17E0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F17E4 */ return;
|
|
L_027F17E8: ; // 0x27f17e8
|
|
/* 027F17E8 */ _t37 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F17E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F17EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F17F0 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F17F0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027F17F0 */ if (_t39) goto L_027F17F4; else goto L_027F1838;
|
|
L_027F17F4: ; // 0x27f17f4
|
|
/* 027F17F4 */ cpu->r[0] = 0x00000006u;
|
|
/* 027F17F8 */ cpu->r[6] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 027F17FC */ _t40 = cpu->r[30] + 0x00000004u;
|
|
/* 027F17FC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 027F1800 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F1804 */ _t41 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F1804 */ rbrew_write32(cpu->mem, _t41, cpu->r[6]);
|
|
/* 027F1808 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1808 */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F1808 */ if (_t43) goto L_027F180C; else goto L_027F18D4;
|
|
L_027F180C: ; // 0x27f180c
|
|
/* 027F180C */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F180C */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F1810 */ _t45 = cpu->r[1] + 0x00000030u;
|
|
/* 027F1810 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 027F1814 */ _t46 = cpu->r[1] + 0x00000024u;
|
|
/* 027F1814 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F1818 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1818 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t47);
|
|
/* 027F181C */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 027F181C */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 027F1820 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F1824 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1824 */ _t50 = _t49 & 0x00000001u;
|
|
/* 027F1824 */ if (_t50) goto L_027F1828; // else: addr-0 trap, fall-through
|
|
L_027F1828: ; // 0x27f1828
|
|
/* 027F1828 */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F1828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F182C */ cpu->lr = cpu->r[0];
|
|
/* 027F1830 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F1834 */ return;
|
|
L_027F1838: ; // 0x27f1838
|
|
/* 027F1838 */ cpu->r[31] = 0x101D0000u;
|
|
/* 027F183C */ _t52 = cpu->r[31] + 0xFFFF9918u;
|
|
/* 027F183C */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F1840 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1844 */ Gambit_fn_02830138(cpu);
|
|
/* 027F1848 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 027F184C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1850 */ cpu->r[10] = cpu->r[9] | 0x3F800000u;
|
|
/* 027F1854 */ _t53 = cpu->r[12] + 0x00000424u;
|
|
/* 027F1854 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 027F1858 */ cpu->r[8] = 0x10110000u;
|
|
/* 027F185C */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F185C */ rbrew_write32(cpu->mem, _t54, cpu->r[10]);
|
|
/* 027F1860 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1860 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 027F1864 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1868 */ _t56 = cpu->r[8] + 0x00000428u;
|
|
/* 027F1868 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 027F186C */ cpu->f[12] = cpu->f[11] - cpu->f[31];
|
|
/* 027F1870 */ _t57 = cpu->r[12] + 0x00000430u;
|
|
/* 027F1870 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 027F1874 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F1878 */ cpu->f[13] = fma(cpu->f[12], cpu->f[13], cpu->f[0]);
|
|
/* 027F187C */ _t58 = cpu->r[11] + 0x0000042Cu;
|
|
/* 027F187C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 027F1880 */ cpu->f[0] = cpu->f[11] * cpu->f[13];
|
|
/* 027F1884 */ cpu->f[12] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 027F1888 */ cpu->r[0] = cpu->r[1] + 0x00000010u;
|
|
/* 027F188C */ /* nop */
|
|
/* 027F1890 */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1890 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59);
|
|
/* 027F1894 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1898 */ _t60 = cpu->r[30] + 0x00000004u;
|
|
/* 027F1898 */ rbrew_write32(cpu->mem, _t60, cpu->r[11]);
|
|
/* 027F189C */ Gambit_fn_02830138(cpu);
|
|
/* 027F18A0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 027F18A4 */ cpu->r[0] = cpu->r[12] | 0x3F800000u;
|
|
/* 027F18A8 */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 027F18A8 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 027F18AC */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 027F18AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 027F18B0 */ cpu->r[8] = 0x10110000u;
|
|
/* 027F18B4 */ cpu->f[0] = cpu->f[11] - cpu->f[31];
|
|
/* 027F18B8 */ _t63 = cpu->r[8] + 0x00000434u;
|
|
/* 027F18B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 027F18BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 027F18C0 */ /* nop */
|
|
/* 027F18C4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[9], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F18C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F18CC */ _t64 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F18CC */ rbrew_write32(cpu->mem, _t64, cpu->r[6]);
|
|
/* 027F18D0 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F18D0 */ _t66 = _t65 & 0x00000001u;
|
|
/* 027F18D0 */ if (_t66) goto L_027F180C; else goto L_027F18D4;
|
|
L_027F18D4: ; // 0x27f18d4
|
|
/* 027F18D4 */ cpu->r[0] = 0x00000007u;
|
|
/* 027F18D8 */ _t67 = cpu->r[30] + 0x00000008u;
|
|
/* 027F18D8 */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 027F18DC */ _t68 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F18DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F18E0 */ _t69 = cpu->r[1] + 0x00000030u;
|
|
/* 027F18E0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 027F18E4 */ _t70 = cpu->r[1] + 0x00000020u;
|
|
/* 027F18E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 027F18E8 */ _t71 = cpu->r[1] + 0x00000028u;
|
|
/* 027F18E8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 027F18EC */ _t72 = cpu->r[1] + 0x00000024u;
|
|
/* 027F18EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027F18F0 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F18F4 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F18F4 */ _t74 = _t73 & 0x00000001u;
|
|
/* 027F18F4 */ if (_t74) goto L_027F18F8; // else: addr-0 trap, fall-through
|
|
L_027F18F8: ; // 0x27f18f8
|
|
/* 027F18F8 */ _t75 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F18F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 027F18FC */ cpu->lr = cpu->r[0];
|
|
/* 027F1900 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F1904 */ return;
|
|
}
|
|
|
|
// fn_027F1908 @ 0x27f1908
|
|
void Gambit_fn_027F1908(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F1908: ; // 0x27f1908
|
|
/* 027F1908 */ cpu->r[0] = cpu->lr;
|
|
/* 027F190C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F190C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F190C */ cpu->r[1] = _t0;
|
|
/* 027F1910 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1910 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027F1914 */ /* nop */
|
|
/* 027F1918 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1918 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F191C */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 027F191C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F1920 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F1924 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 027F1924 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027F1928 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F192C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F192C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 027F1930 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 027F1930 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F1934 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1934 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F1934 */ if (_t8) goto L_027F1938; else goto L_027F194C;
|
|
L_027F1938: ; // 0x27f1938
|
|
/* 027F1938 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F193C */ Gambit_fn_027C6118(cpu);
|
|
/* 027F1940 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F1944 */ Gambit_fn_027F1704(cpu);
|
|
/* 027F1948 */ goto L_027F1A9C;
|
|
L_027F194C: ; // 0x27f194c
|
|
/* 027F194C */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 027F194C */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t9);
|
|
/* 027F1950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 027F1954 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1954 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F1954 */ if (_t11) goto L_027F1A8C; else goto L_027F1958;
|
|
L_027F1958: ; // 0x27f1958
|
|
/* 027F1958 */ _t12 = cpu->r[31] + 0x00000002u;
|
|
/* 027F1958 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t12);
|
|
/* 027F195C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 027F1960 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1960 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F1960 */ if (_t14) goto L_027F1A8C; else goto L_027F1964;
|
|
L_027F1964: ; // 0x27f1964
|
|
/* 027F1964 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F1968 */ Gambit_fn_027F171C(cpu);
|
|
/* 027F196C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1970 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 027F1970 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F1974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1978 */ _t16 = cpu->r[12] + 0x00000424u;
|
|
/* 027F1978 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027F197C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F197C */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F197C */ if (_t18) goto L_027F1A14; else goto L_027F1980;
|
|
L_027F1980: ; // 0x27f1980
|
|
/* 027F1980 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 027F1980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F1984 */ _t20 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F1984 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F1988 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1988 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 027F198C */ _t22 = cpu->r[10] + 0x000000A4u;
|
|
/* 027F198C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F1990 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F1994 */ Gambit_fn_0298415C(cpu);
|
|
/* 027F1998 */ _t23 = cpu->r[31] + 0x00000004u;
|
|
/* 027F1998 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027F199C */ cpu->f[0] = cpu->f[0] + cpu->f[31];
|
|
/* 027F19A0 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 027F19A4 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 027F19A8 */ /* nop */
|
|
/* 027F19AC */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 027F19AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F19B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[3]);
|
|
/* 027F19B4 */ _t25 = cpu->r[30] + 0x00000000u;
|
|
/* 027F19B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F19B8 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F19B8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F19B8 */ if (_t27) goto L_027F19BC; else goto L_027F19C0;
|
|
L_027F19BC: ; // 0x27f19bc
|
|
/* 027F19BC */ cpu->r[0] = cpu->r[3];
|
|
L_027F19C0: ; // 0x27f19c0
|
|
/* 027F19C0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F19C4 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 027F19C8 */ _t28 = cpu->r[12] + 0x00000438u;
|
|
/* 027F19C8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 027F19CC */ cpu->r[0] = 0x43300000u;
|
|
/* 027F19D0 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F19D0 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 027F19D4 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 027F19D4 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 027F19D8 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 027F19D8 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 027F19DC */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027F19E0 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 027F19E4 */ _t32 = cpu->r[31] + 0x00000004u;
|
|
/* 027F19E4 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 027F19E8 */ _t33 = cpu->r[30] + 0x00000000u;
|
|
/* 027F19E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F19EC */ Gambit_fn_027C61D0(cpu);
|
|
/* 027F19F0 */ _t34 = cpu->r[1] + 0x00000028u;
|
|
/* 027F19F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 027F19F4 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F19F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F19F8 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 027F19F8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 027F19FC */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 027F19FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F1A00 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1A00 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027F1A00 */ if (_t39) goto L_027F1A04; // else: addr-0 trap, fall-through
|
|
L_027F1A04: ; // 0x27f1a04
|
|
/* 027F1A04 */ _t40 = cpu->r[1] + 0x00000034u;
|
|
/* 027F1A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F1A08 */ cpu->lr = cpu->r[0];
|
|
/* 027F1A0C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F1A10 */ return;
|
|
L_027F1A14: ; // 0x27f1a14
|
|
/* 027F1A14 */ _t41 = cpu->r[31] + 0x00000004u;
|
|
/* 027F1A14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027F1A18 */ cpu->f[0] = cpu->f[0] - cpu->f[31];
|
|
/* 027F1A1C */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 027F1A20 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 027F1A24 */ /* nop */
|
|
/* 027F1A28 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1A28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F1A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F1A30 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1A30 */ _t44 = _t43 & 0x00000001u;
|
|
/* 027F1A30 */ if (_t44) goto L_027F1A34; else goto L_027F1A38;
|
|
L_027F1A34: ; // 0x27f1a34
|
|
/* 027F1A34 */ cpu->r[0] = 0x00000000u;
|
|
L_027F1A38: ; // 0x27f1a38
|
|
/* 027F1A38 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1A3C */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 027F1A40 */ _t45 = cpu->r[12] + 0x00000438u;
|
|
/* 027F1A40 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t45);
|
|
/* 027F1A44 */ cpu->r[0] = 0x43300000u;
|
|
/* 027F1A48 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1A48 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 027F1A4C */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1A4C */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 027F1A50 */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1A50 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 027F1A54 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027F1A58 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 027F1A5C */ _t49 = cpu->r[31] + 0x00000004u;
|
|
/* 027F1A5C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 027F1A60 */ _t50 = cpu->r[30] + 0x00000000u;
|
|
/* 027F1A60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027F1A64 */ Gambit_fn_027C61D0(cpu);
|
|
/* 027F1A68 */ _t51 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1A68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 027F1A6C */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1A6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F1A70 */ _t53 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1A70 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 027F1A74 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 027F1A74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F1A78 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1A78 */ _t56 = _t55 & 0x00000001u;
|
|
/* 027F1A78 */ if (_t56) goto L_027F1A7C; // else: addr-0 trap, fall-through
|
|
L_027F1A7C: ; // 0x27f1a7c
|
|
/* 027F1A7C */ _t57 = cpu->r[1] + 0x00000034u;
|
|
/* 027F1A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F1A80 */ cpu->lr = cpu->r[0];
|
|
/* 027F1A84 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F1A88 */ return;
|
|
L_027F1A8C: ; // 0x27f1a8c
|
|
/* 027F1A8C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1A90 */ Gambit_fn_027C6118(cpu);
|
|
/* 027F1A94 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F1A98 */ Gambit_fn_027F1704(cpu);
|
|
L_027F1A9C: ; // 0x27f1a9c
|
|
/* 027F1A9C */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1A9C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 027F1AA0 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1AA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 027F1AA4 */ _t60 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1AA4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t60);
|
|
/* 027F1AA8 */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 027F1AA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F1AAC */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1AAC */ _t63 = _t62 & 0x00000001u;
|
|
/* 027F1AAC */ if (_t63) goto L_027F1AB0; // else: addr-0 trap, fall-through
|
|
L_027F1AB0: ; // 0x27f1ab0
|
|
/* 027F1AB0 */ _t64 = cpu->r[1] + 0x00000034u;
|
|
/* 027F1AB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F1AB4 */ cpu->lr = cpu->r[0];
|
|
/* 027F1AB8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F1ABC */ return;
|
|
}
|
|
|
|
// fn_027F190C @ 0x27f190c
|
|
void Gambit_fn_027F190C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F190C: ; // 0x27f190c
|
|
/* 027F190C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F190C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F190C */ cpu->r[1] = _t0;
|
|
/* 027F1910 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1910 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027F1914 */ /* nop */
|
|
/* 027F1918 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1918 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F191C */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 027F191C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F1920 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F1924 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 027F1924 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027F1928 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F192C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F192C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 027F1930 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 027F1930 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F1934 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1934 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F1934 */ if (_t8) goto L_027F1938; else goto L_027F194C;
|
|
L_027F1938: ; // 0x27f1938
|
|
/* 027F1938 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F193C */ Gambit_fn_027C6118(cpu);
|
|
/* 027F1940 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F1944 */ Gambit_fn_027F1704(cpu);
|
|
/* 027F1948 */ goto L_027F1A9C;
|
|
L_027F194C: ; // 0x27f194c
|
|
/* 027F194C */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 027F194C */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t9);
|
|
/* 027F1950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 027F1954 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1954 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F1954 */ if (_t11) goto L_027F1A8C; else goto L_027F1958;
|
|
L_027F1958: ; // 0x27f1958
|
|
/* 027F1958 */ _t12 = cpu->r[31] + 0x00000002u;
|
|
/* 027F1958 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t12);
|
|
/* 027F195C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 027F1960 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1960 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F1960 */ if (_t14) goto L_027F1A8C; else goto L_027F1964;
|
|
L_027F1964: ; // 0x27f1964
|
|
/* 027F1964 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F1968 */ Gambit_fn_027F171C(cpu);
|
|
/* 027F196C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1970 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 027F1970 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F1974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1978 */ _t16 = cpu->r[12] + 0x00000424u;
|
|
/* 027F1978 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027F197C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F197C */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F197C */ if (_t18) goto L_027F1A14; else goto L_027F1980;
|
|
L_027F1980: ; // 0x27f1980
|
|
/* 027F1980 */ _t19 = cpu->r[31] + 0x00000000u;
|
|
/* 027F1980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F1984 */ _t20 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F1984 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F1988 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1988 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 027F198C */ _t22 = cpu->r[10] + 0x000000A4u;
|
|
/* 027F198C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F1990 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F1994 */ Gambit_fn_0298415C(cpu);
|
|
/* 027F1998 */ _t23 = cpu->r[31] + 0x00000004u;
|
|
/* 027F1998 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027F199C */ cpu->f[0] = cpu->f[0] + cpu->f[31];
|
|
/* 027F19A0 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 027F19A4 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 027F19A8 */ /* nop */
|
|
/* 027F19AC */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 027F19AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F19B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[3]);
|
|
/* 027F19B4 */ _t25 = cpu->r[30] + 0x00000000u;
|
|
/* 027F19B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F19B8 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F19B8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F19B8 */ if (_t27) goto L_027F19BC; else goto L_027F19C0;
|
|
L_027F19BC: ; // 0x27f19bc
|
|
/* 027F19BC */ cpu->r[0] = cpu->r[3];
|
|
L_027F19C0: ; // 0x27f19c0
|
|
/* 027F19C0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F19C4 */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 027F19C8 */ _t28 = cpu->r[12] + 0x00000438u;
|
|
/* 027F19C8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 027F19CC */ cpu->r[0] = 0x43300000u;
|
|
/* 027F19D0 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F19D0 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 027F19D4 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 027F19D4 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 027F19D8 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 027F19D8 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 027F19DC */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027F19E0 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 027F19E4 */ _t32 = cpu->r[31] + 0x00000004u;
|
|
/* 027F19E4 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 027F19E8 */ _t33 = cpu->r[30] + 0x00000000u;
|
|
/* 027F19E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F19EC */ Gambit_fn_027C61D0(cpu);
|
|
/* 027F19F0 */ _t34 = cpu->r[1] + 0x00000028u;
|
|
/* 027F19F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 027F19F4 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F19F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F19F8 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 027F19F8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 027F19FC */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 027F19FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F1A00 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1A00 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027F1A00 */ if (_t39) goto L_027F1A04; // else: addr-0 trap, fall-through
|
|
L_027F1A04: ; // 0x27f1a04
|
|
/* 027F1A04 */ _t40 = cpu->r[1] + 0x00000034u;
|
|
/* 027F1A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F1A08 */ cpu->lr = cpu->r[0];
|
|
/* 027F1A0C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F1A10 */ return;
|
|
L_027F1A14: ; // 0x27f1a14
|
|
/* 027F1A14 */ _t41 = cpu->r[31] + 0x00000004u;
|
|
/* 027F1A14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027F1A18 */ cpu->f[0] = cpu->f[0] - cpu->f[31];
|
|
/* 027F1A1C */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 027F1A20 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 027F1A24 */ /* nop */
|
|
/* 027F1A28 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1A28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F1A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F1A30 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1A30 */ _t44 = _t43 & 0x00000001u;
|
|
/* 027F1A30 */ if (_t44) goto L_027F1A34; else goto L_027F1A38;
|
|
L_027F1A34: ; // 0x27f1a34
|
|
/* 027F1A34 */ cpu->r[0] = 0x00000000u;
|
|
L_027F1A38: ; // 0x27f1a38
|
|
/* 027F1A38 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1A3C */ cpu->r[9] = cpu->r[0] ^ 0x80000000u;
|
|
/* 027F1A40 */ _t45 = cpu->r[12] + 0x00000438u;
|
|
/* 027F1A40 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t45);
|
|
/* 027F1A44 */ cpu->r[0] = 0x43300000u;
|
|
/* 027F1A48 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1A48 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 027F1A4C */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1A4C */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 027F1A50 */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1A50 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 027F1A54 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 027F1A58 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 027F1A5C */ _t49 = cpu->r[31] + 0x00000004u;
|
|
/* 027F1A5C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 027F1A60 */ _t50 = cpu->r[30] + 0x00000000u;
|
|
/* 027F1A60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027F1A64 */ Gambit_fn_027C61D0(cpu);
|
|
/* 027F1A68 */ _t51 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1A68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 027F1A6C */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1A6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F1A70 */ _t53 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1A70 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 027F1A74 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 027F1A74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F1A78 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1A78 */ _t56 = _t55 & 0x00000001u;
|
|
/* 027F1A78 */ if (_t56) goto L_027F1A7C; // else: addr-0 trap, fall-through
|
|
L_027F1A7C: ; // 0x27f1a7c
|
|
/* 027F1A7C */ _t57 = cpu->r[1] + 0x00000034u;
|
|
/* 027F1A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F1A80 */ cpu->lr = cpu->r[0];
|
|
/* 027F1A84 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F1A88 */ return;
|
|
L_027F1A8C: ; // 0x27f1a8c
|
|
/* 027F1A8C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1A90 */ Gambit_fn_027C6118(cpu);
|
|
/* 027F1A94 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F1A98 */ Gambit_fn_027F1704(cpu);
|
|
L_027F1A9C: ; // 0x27f1a9c
|
|
/* 027F1A9C */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 027F1A9C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 027F1AA0 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1AA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 027F1AA4 */ _t60 = cpu->r[1] + 0x00000020u;
|
|
/* 027F1AA4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t60);
|
|
/* 027F1AA8 */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 027F1AA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F1AAC */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1AAC */ _t63 = _t62 & 0x00000001u;
|
|
/* 027F1AAC */ if (_t63) goto L_027F1AB0; // else: addr-0 trap, fall-through
|
|
L_027F1AB0: ; // 0x27f1ab0
|
|
/* 027F1AB0 */ _t64 = cpu->r[1] + 0x00000034u;
|
|
/* 027F1AB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F1AB4 */ cpu->lr = cpu->r[0];
|
|
/* 027F1AB8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F1ABC */ return;
|
|
}
|
|
|
|
// fn_027F1AC0 @ 0x27f1ac0
|
|
void Gambit_fn_027F1AC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F1AC0: ; // 0x27f1ac0
|
|
/* 027F1AC0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F1AC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F1AC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1AC4 */ cpu->r[1] = _t0;
|
|
/* 027F1AC8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1AC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F1ACC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1ACC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F1AD0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F1AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F1AD4 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F1AD8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1AD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F1ADC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1ADC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F1AE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1AE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F1AE0 */ if (_t6) goto L_027F1AE4; else goto L_027F1AF4;
|
|
L_027F1AE4: ; // 0x27f1ae4
|
|
/* 027F1AE4 */ cpu->r[3] = 0x00000088u;
|
|
/* 027F1AE8 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1AEC */ cpu->r[31] = cpu->r[3];
|
|
/* 027F1AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F1AF0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1AF0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F1AF0 */ if (_t8) goto L_027F1C54; else goto L_027F1AF4;
|
|
L_027F1AF4: ; // 0x27f1af4
|
|
/* 027F1AF4 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1AF8 */ cpu->r[29] = 0x00000000u;
|
|
/* 027F1AFC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1AFC */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F1AFC */ if (_t10) goto L_027F1B00; else goto L_027F1B10;
|
|
L_027F1B00: ; // 0x27f1b00
|
|
/* 027F1B00 */ cpu->r[3] = 0x00000008u;
|
|
/* 027F1B04 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1B0C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1B0C */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F1B0C */ if (_t12) goto L_027F1B20; else goto L_027F1B10;
|
|
L_027F1B10: ; // 0x27f1b10
|
|
/* 027F1B10 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1B14 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1B14 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 027F1B18 */ cpu->r[12] = cpu->r[12] + 0x000004B4u;
|
|
/* 027F1B1C */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1B1C */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
L_027F1B20: ; // 0x27f1b20
|
|
/* 027F1B20 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F1B24 */ _t15 = cpu->r[31] + 0x00000008u;
|
|
/* 027F1B24 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 027F1B28 */ cpu->r[0] = cpu->r[0] + 0x000004C4u;
|
|
/* 027F1B2C */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F1B2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1B30 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 027F1B30 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 027F1B34 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1B34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F1B34 */ if (_t18) goto L_027F1B38; else goto L_027F1B48;
|
|
L_027F1B38: ; // 0x27f1b38
|
|
/* 027F1B38 */ cpu->r[3] = 0x00000020u;
|
|
/* 027F1B3C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1B40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1B44 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1B44 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F1B44 */ if (_t20) goto L_027F1B9C; else goto L_027F1B48;
|
|
L_027F1B48: ; // 0x27f1b48
|
|
/* 027F1B48 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F1B4C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1B50 */ _t21 = cpu->r[10] + 0x000004FCu;
|
|
/* 027F1B50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 027F1B54 */ _t22 = cpu->r[12] + 0x000004F4u;
|
|
/* 027F1B54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 027F1B58 */ _t23 = cpu->r[3] + 0x00000014u;
|
|
/* 027F1B58 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 027F1B5C */ cpu->r[11] = 0x10110000u;
|
|
/* 027F1B60 */ _t24 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1B60 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 027F1B64 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F1B68 */ _t25 = cpu->r[11] + 0x00000500u;
|
|
/* 027F1B68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 027F1B6C */ _t26 = cpu->r[9] + 0x000004F0u;
|
|
/* 027F1B6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F1B70 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F1B74 */ _t27 = cpu->r[3] + 0x00000018u;
|
|
/* 027F1B74 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 027F1B78 */ _t28 = cpu->r[10] + 0x000004ECu;
|
|
/* 027F1B78 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 027F1B7C */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1B7C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 027F1B80 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F1B84 */ _t30 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1B84 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 027F1B88 */ cpu->r[11] = 0x00000003u;
|
|
/* 027F1B8C */ _t31 = cpu->r[9] + 0x000004F8u;
|
|
/* 027F1B8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 027F1B90 */ _t32 = cpu->r[3] + 0x0000001Cu;
|
|
/* 027F1B90 */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 027F1B94 */ _t33 = cpu->r[3] + 0x00000010u;
|
|
/* 027F1B94 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 027F1B98 */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 027F1B98 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
L_027F1B9C: ; // 0x27f1b9c
|
|
/* 027F1B9C */ cpu->r[3] = cpu->r[31] + 0x00000030u;
|
|
/* 027F1B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BA0 */ _t35 = cpu->r[31] + 0x0000002Cu;
|
|
/* 027F1BA0 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 027F1BA4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BA4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F1BA4 */ if (_t37) goto L_027F1BA8; else goto L_027F1BB8;
|
|
L_027F1BA8: ; // 0x27f1ba8
|
|
/* 027F1BA8 */ cpu->r[3] = 0x00000008u;
|
|
/* 027F1BAC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BB4 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BB4 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027F1BB4 */ if (_t39) goto L_027F1BC0; else goto L_027F1BB8;
|
|
L_027F1BB8: ; // 0x27f1bb8
|
|
/* 027F1BB8 */ _t40 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1BB8 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
/* 027F1BBC */ _t41 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1BBC */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
L_027F1BC0: ; // 0x27f1bc0
|
|
/* 027F1BC0 */ cpu->r[3] = cpu->r[31] + 0x00000038u;
|
|
/* 027F1BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BC4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BC4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F1BC4 */ if (_t43) goto L_027F1BC8; else goto L_027F1BD8;
|
|
L_027F1BC8: ; // 0x27f1bc8
|
|
/* 027F1BC8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F1BCC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BD4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BD4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F1BD4 */ if (_t45) goto L_027F1BFC; else goto L_027F1BD8;
|
|
L_027F1BD8: ; // 0x27f1bd8
|
|
/* 027F1BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BDC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BDC */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F1BDC */ if (_t47) goto L_027F1BE0; else goto L_027F1BF0;
|
|
L_027F1BE0: ; // 0x27f1be0
|
|
/* 027F1BE0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F1BE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BEC */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BEC */ _t49 = _t48 & 0x00000001u;
|
|
/* 027F1BEC */ if (_t49) goto L_027F1BFC; else goto L_027F1BF0;
|
|
L_027F1BF0: ; // 0x27f1bf0
|
|
/* 027F1BF0 */ _t50 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1BF0 */ rbrew_write32(cpu->mem, _t50, cpu->r[29]);
|
|
/* 027F1BF4 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1BF4 */ rbrew_write32(cpu->mem, _t51, cpu->r[29]);
|
|
/* 027F1BF8 */ _t52 = cpu->r[3] + 0x00000008u;
|
|
/* 027F1BF8 */ rbrew_write32(cpu->mem, _t52, cpu->r[29]);
|
|
L_027F1BFC: ; // 0x27f1bfc
|
|
/* 027F1BFC */ cpu->r[0] = cpu->r[31] + 0x00000048u;
|
|
/* 027F1BFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F1C00 */ _t53 = cpu->r[31] + 0x00000044u;
|
|
/* 027F1C00 */ rbrew_write32(cpu->mem, _t53, cpu->r[29]);
|
|
/* 027F1C04 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1C04 */ _t55 = _t54 & 0x00000001u;
|
|
/* 027F1C04 */ if (_t55) goto L_027F1C08; else goto L_027F1C10;
|
|
L_027F1C08: ; // 0x27f1c08
|
|
/* 027F1C08 */ cpu->r[3] = 0x00000030u;
|
|
/* 027F1C0C */ Gambit_fn_02801A78(cpu);
|
|
L_027F1C10: ; // 0x27f1c10
|
|
/* 027F1C10 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 027F1C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1C14 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1C14 */ _t57 = _t56 & 0x00000001u;
|
|
/* 027F1C14 */ if (_t57) goto L_027F1C18; else goto L_027F1C28;
|
|
L_027F1C18: ; // 0x27f1c18
|
|
/* 027F1C18 */ cpu->r[3] = 0x00000008u;
|
|
/* 027F1C1C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1C24 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1C24 */ _t59 = _t58 & 0x00000001u;
|
|
/* 027F1C24 */ if (_t59) goto L_027F1C30; else goto L_027F1C28;
|
|
L_027F1C28: ; // 0x27f1c28
|
|
/* 027F1C28 */ _t60 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1C28 */ rbrew_write32(cpu->mem, _t60, cpu->r[29]);
|
|
/* 027F1C2C */ _t61 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1C2C */ rbrew_write32(cpu->mem, _t61, cpu->r[29]);
|
|
L_027F1C30: ; // 0x27f1c30
|
|
/* 027F1C30 */ _t62 = cpu->r[31] + 0x00000085u;
|
|
/* 027F1C30 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[29]);
|
|
/* 027F1C34 */ cpu->r[0] = 0x00000001u;
|
|
/* 027F1C38 */ _t63 = cpu->r[31] + 0x00000008u;
|
|
/* 027F1C38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F1C3C */ _t64 = cpu->r[31] + 0x00000084u;
|
|
/* 027F1C3C */ rbrew_write8(cpu->mem, _t64, (uint8_t)cpu->r[0]);
|
|
/* 027F1C40 */ _t65 = cpu->r[31] + 0x00000080u;
|
|
/* 027F1C40 */ rbrew_write32(cpu->mem, _t65, cpu->r[29]);
|
|
/* 027F1C44 */ _t66 = cpu->r[11] + 0x000000A4u;
|
|
/* 027F1C44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F1C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F1C4C */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1C4C */ _t68 = _t67 & 0x00000001u;
|
|
/* 027F1C4C */ if (_t68) goto L_027F1C50; else goto L_027F1C54;
|
|
L_027F1C50: ; // 0x27f1c50
|
|
/* 027F1C50 */ _t69 = cpu->r[31] + 0x00000084u;
|
|
/* 027F1C50 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[29]);
|
|
L_027F1C54: ; // 0x27f1c54
|
|
/* 027F1C54 */ _t70 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1C54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t70);
|
|
/* 027F1C58 */ _t71 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 027F1C5C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1C60 */ _t72 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1C60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027F1C64 */ cpu->lr = cpu->r[0];
|
|
/* 027F1C68 */ _t73 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1C68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73);
|
|
/* 027F1C6C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F1C70 */ return;
|
|
}
|
|
|
|
// fn_027F1AC4 @ 0x27f1ac4
|
|
void Gambit_fn_027F1AC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F1AC4: ; // 0x27f1ac4
|
|
/* 027F1AC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F1AC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1AC4 */ cpu->r[1] = _t0;
|
|
/* 027F1AC8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1AC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F1ACC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1ACC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F1AD0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F1AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F1AD4 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F1AD8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1AD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F1ADC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1ADC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F1AE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1AE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F1AE0 */ if (_t6) goto L_027F1AE4; else goto L_027F1AF4;
|
|
L_027F1AE4: ; // 0x27f1ae4
|
|
/* 027F1AE4 */ cpu->r[3] = 0x00000088u;
|
|
/* 027F1AE8 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1AEC */ cpu->r[31] = cpu->r[3];
|
|
/* 027F1AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F1AF0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1AF0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F1AF0 */ if (_t8) goto L_027F1C54; else goto L_027F1AF4;
|
|
L_027F1AF4: ; // 0x27f1af4
|
|
/* 027F1AF4 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1AF8 */ cpu->r[29] = 0x00000000u;
|
|
/* 027F1AFC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1AFC */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F1AFC */ if (_t10) goto L_027F1B00; else goto L_027F1B10;
|
|
L_027F1B00: ; // 0x27f1b00
|
|
/* 027F1B00 */ cpu->r[3] = 0x00000008u;
|
|
/* 027F1B04 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1B0C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1B0C */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F1B0C */ if (_t12) goto L_027F1B20; else goto L_027F1B10;
|
|
L_027F1B10: ; // 0x27f1b10
|
|
/* 027F1B10 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1B14 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1B14 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 027F1B18 */ cpu->r[12] = cpu->r[12] + 0x000004B4u;
|
|
/* 027F1B1C */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1B1C */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
L_027F1B20: ; // 0x27f1b20
|
|
/* 027F1B20 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F1B24 */ _t15 = cpu->r[31] + 0x00000008u;
|
|
/* 027F1B24 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 027F1B28 */ cpu->r[0] = cpu->r[0] + 0x000004C4u;
|
|
/* 027F1B2C */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F1B2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1B30 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 027F1B30 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 027F1B34 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1B34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F1B34 */ if (_t18) goto L_027F1B38; else goto L_027F1B48;
|
|
L_027F1B38: ; // 0x27f1b38
|
|
/* 027F1B38 */ cpu->r[3] = 0x00000020u;
|
|
/* 027F1B3C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1B40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1B44 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1B44 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F1B44 */ if (_t20) goto L_027F1B9C; else goto L_027F1B48;
|
|
L_027F1B48: ; // 0x27f1b48
|
|
/* 027F1B48 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F1B4C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F1B50 */ _t21 = cpu->r[10] + 0x000004FCu;
|
|
/* 027F1B50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 027F1B54 */ _t22 = cpu->r[12] + 0x000004F4u;
|
|
/* 027F1B54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 027F1B58 */ _t23 = cpu->r[3] + 0x00000014u;
|
|
/* 027F1B58 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 027F1B5C */ cpu->r[11] = 0x10110000u;
|
|
/* 027F1B60 */ _t24 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1B60 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 027F1B64 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F1B68 */ _t25 = cpu->r[11] + 0x00000500u;
|
|
/* 027F1B68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 027F1B6C */ _t26 = cpu->r[9] + 0x000004F0u;
|
|
/* 027F1B6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F1B70 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F1B74 */ _t27 = cpu->r[3] + 0x00000018u;
|
|
/* 027F1B74 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 027F1B78 */ _t28 = cpu->r[10] + 0x000004ECu;
|
|
/* 027F1B78 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 027F1B7C */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1B7C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 027F1B80 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F1B84 */ _t30 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1B84 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 027F1B88 */ cpu->r[11] = 0x00000003u;
|
|
/* 027F1B8C */ _t31 = cpu->r[9] + 0x000004F8u;
|
|
/* 027F1B8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 027F1B90 */ _t32 = cpu->r[3] + 0x0000001Cu;
|
|
/* 027F1B90 */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 027F1B94 */ _t33 = cpu->r[3] + 0x00000010u;
|
|
/* 027F1B94 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 027F1B98 */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 027F1B98 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
L_027F1B9C: ; // 0x27f1b9c
|
|
/* 027F1B9C */ cpu->r[3] = cpu->r[31] + 0x00000030u;
|
|
/* 027F1B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BA0 */ _t35 = cpu->r[31] + 0x0000002Cu;
|
|
/* 027F1BA0 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 027F1BA4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BA4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F1BA4 */ if (_t37) goto L_027F1BA8; else goto L_027F1BB8;
|
|
L_027F1BA8: ; // 0x27f1ba8
|
|
/* 027F1BA8 */ cpu->r[3] = 0x00000008u;
|
|
/* 027F1BAC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BB4 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BB4 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027F1BB4 */ if (_t39) goto L_027F1BC0; else goto L_027F1BB8;
|
|
L_027F1BB8: ; // 0x27f1bb8
|
|
/* 027F1BB8 */ _t40 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1BB8 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
/* 027F1BBC */ _t41 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1BBC */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
L_027F1BC0: ; // 0x27f1bc0
|
|
/* 027F1BC0 */ cpu->r[3] = cpu->r[31] + 0x00000038u;
|
|
/* 027F1BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BC4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BC4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F1BC4 */ if (_t43) goto L_027F1BC8; else goto L_027F1BD8;
|
|
L_027F1BC8: ; // 0x27f1bc8
|
|
/* 027F1BC8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F1BCC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BD4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BD4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F1BD4 */ if (_t45) goto L_027F1BFC; else goto L_027F1BD8;
|
|
L_027F1BD8: ; // 0x27f1bd8
|
|
/* 027F1BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BDC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BDC */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F1BDC */ if (_t47) goto L_027F1BE0; else goto L_027F1BF0;
|
|
L_027F1BE0: ; // 0x27f1be0
|
|
/* 027F1BE0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F1BE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1BEC */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1BEC */ _t49 = _t48 & 0x00000001u;
|
|
/* 027F1BEC */ if (_t49) goto L_027F1BFC; else goto L_027F1BF0;
|
|
L_027F1BF0: ; // 0x27f1bf0
|
|
/* 027F1BF0 */ _t50 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1BF0 */ rbrew_write32(cpu->mem, _t50, cpu->r[29]);
|
|
/* 027F1BF4 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1BF4 */ rbrew_write32(cpu->mem, _t51, cpu->r[29]);
|
|
/* 027F1BF8 */ _t52 = cpu->r[3] + 0x00000008u;
|
|
/* 027F1BF8 */ rbrew_write32(cpu->mem, _t52, cpu->r[29]);
|
|
L_027F1BFC: ; // 0x27f1bfc
|
|
/* 027F1BFC */ cpu->r[0] = cpu->r[31] + 0x00000048u;
|
|
/* 027F1BFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F1C00 */ _t53 = cpu->r[31] + 0x00000044u;
|
|
/* 027F1C00 */ rbrew_write32(cpu->mem, _t53, cpu->r[29]);
|
|
/* 027F1C04 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1C04 */ _t55 = _t54 & 0x00000001u;
|
|
/* 027F1C04 */ if (_t55) goto L_027F1C08; else goto L_027F1C10;
|
|
L_027F1C08: ; // 0x27f1c08
|
|
/* 027F1C08 */ cpu->r[3] = 0x00000030u;
|
|
/* 027F1C0C */ Gambit_fn_02801A78(cpu);
|
|
L_027F1C10: ; // 0x27f1c10
|
|
/* 027F1C10 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 027F1C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1C14 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1C14 */ _t57 = _t56 & 0x00000001u;
|
|
/* 027F1C14 */ if (_t57) goto L_027F1C18; else goto L_027F1C28;
|
|
L_027F1C18: ; // 0x27f1c18
|
|
/* 027F1C18 */ cpu->r[3] = 0x00000008u;
|
|
/* 027F1C1C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F1C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1C24 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1C24 */ _t59 = _t58 & 0x00000001u;
|
|
/* 027F1C24 */ if (_t59) goto L_027F1C30; else goto L_027F1C28;
|
|
L_027F1C28: ; // 0x27f1c28
|
|
/* 027F1C28 */ _t60 = cpu->r[3] + 0x00000004u;
|
|
/* 027F1C28 */ rbrew_write32(cpu->mem, _t60, cpu->r[29]);
|
|
/* 027F1C2C */ _t61 = cpu->r[3] + 0x00000000u;
|
|
/* 027F1C2C */ rbrew_write32(cpu->mem, _t61, cpu->r[29]);
|
|
L_027F1C30: ; // 0x27f1c30
|
|
/* 027F1C30 */ _t62 = cpu->r[31] + 0x00000085u;
|
|
/* 027F1C30 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[29]);
|
|
/* 027F1C34 */ cpu->r[0] = 0x00000001u;
|
|
/* 027F1C38 */ _t63 = cpu->r[31] + 0x00000008u;
|
|
/* 027F1C38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F1C3C */ _t64 = cpu->r[31] + 0x00000084u;
|
|
/* 027F1C3C */ rbrew_write8(cpu->mem, _t64, (uint8_t)cpu->r[0]);
|
|
/* 027F1C40 */ _t65 = cpu->r[31] + 0x00000080u;
|
|
/* 027F1C40 */ rbrew_write32(cpu->mem, _t65, cpu->r[29]);
|
|
/* 027F1C44 */ _t66 = cpu->r[11] + 0x000000A4u;
|
|
/* 027F1C44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F1C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F1C4C */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1C4C */ _t68 = _t67 & 0x00000001u;
|
|
/* 027F1C4C */ if (_t68) goto L_027F1C50; else goto L_027F1C54;
|
|
L_027F1C50: ; // 0x27f1c50
|
|
/* 027F1C50 */ _t69 = cpu->r[31] + 0x00000084u;
|
|
/* 027F1C50 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[29]);
|
|
L_027F1C54: ; // 0x27f1c54
|
|
/* 027F1C54 */ _t70 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1C54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t70);
|
|
/* 027F1C58 */ _t71 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F1C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 027F1C5C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1C60 */ _t72 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1C60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027F1C64 */ cpu->lr = cpu->r[0];
|
|
/* 027F1C68 */ _t73 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1C68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73);
|
|
/* 027F1C6C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F1C70 */ return;
|
|
}
|
|
|
|
// fn_027F1C74 @ 0x27f1c74
|
|
void Gambit_fn_027F1C74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_027F1C74: ; // 0x27f1c74
|
|
/* 027F1C74 */ cpu->r[3] = 0x00000000u;
|
|
L_027F1C78: ; // 0x27f1c78
|
|
/* 027F1C78 */ _t0 = cpu->r[5] + 0x00000000u;
|
|
/* 027F1C78 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
L_027F1C7C: ; // 0x27f1c7c
|
|
/* 027F1C7C */ _t1 = cpu->r[9] + 0x00000014u;
|
|
/* 027F1C7C */ cpu->r[10] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F1C80 */ cpu->r[8] = 0x00000000u;
|
|
/* 027F1C84 */ cpu->r[12] = cpu->r[9] + 0x00000014u;
|
|
/* 027F1C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F1C8C */ _t2 = cpu->r[9] + 0x00000008u;
|
|
/* 027F1C8C */ cpu->r[0] = rbrew_read16(cpu->mem, _t2);
|
|
/* 027F1C90 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1C90 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F1C90 */ if (_t4) goto L_027F1C98; else goto L_027F1C94;
|
|
L_027F1C94: ; // 0x27f1c94
|
|
/* 027F1C94 */ cpu->r[8] = cpu->r[12] + cpu->r[10];
|
|
L_027F1C98: ; // 0x27f1c98
|
|
/* 027F1C98 */ cpu->r[12] = rbrew_rlwinm(cpu->r[6], 0x00000006u, 0x00000000u, 0x00000019u);
|
|
/* 027F1C9C */ cpu->r[7] = cpu->r[8] + cpu->r[12];
|
|
/* 027F1CA0 */ _t5 = cpu->r[7] + 0x00000006u;
|
|
/* 027F1CA0 */ cpu->r[6] = rbrew_read16(cpu->mem, _t5);
|
|
/* 027F1CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 027F1CA8 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1CA8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F1CA8 */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F1CA8 */ goto L_027F1CAC;
|
|
L_027F1CAC: ; // 0x27f1cac
|
|
/* 027F1CAC */ _t8 = cpu->r[4] + 0x0000000Cu;
|
|
/* 027F1CAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F1CB0 */ _t9 = cpu->r[4] + 0x00000004u;
|
|
/* 027F1CB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F1CB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[11]);
|
|
/* 027F1CB8 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F1CBC */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1CBC */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F1CBC */ if (_t11) goto L_027F1CC0; else goto L_027F1C7C;
|
|
L_027F1CC0: ; // 0x27f1cc0
|
|
/* 027F1CC0 */ _t12 = cpu->r[4] + 0x00000008u;
|
|
/* 027F1CC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F1CC4 */ _t13 = cpu->r[4] + 0x0000000Cu;
|
|
/* 027F1CC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F1CC8 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F1CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F1CCC */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 027F1CCC */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 027F1CD0 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1CD0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F1CD0 */ if (_t16) goto L_027F1CD4; else goto L_027F1CE0;
|
|
L_027F1CD4: ; // 0x27f1cd4
|
|
/* 027F1CD4 */ _t17 = cpu->r[4] + 0x00000004u;
|
|
/* 027F1CD4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F1CD8 */ cpu->r[0] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 027F1CDC */ _t18 = cpu->r[4] + 0x00000008u;
|
|
/* 027F1CDC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_027F1CE0: ; // 0x27f1ce0
|
|
/* 027F1CE0 */ _t19 = cpu->r[4] + 0x00000004u;
|
|
/* 027F1CE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F1CE4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 027F1CE8 */ _t20 = cpu->r[4] + 0x00000008u;
|
|
/* 027F1CE8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F1CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 027F1CF0 */ _t21 = cpu->r[4] + 0x0000000Cu;
|
|
/* 027F1CF0 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 027F1CF4 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1CF4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F1CF4 */ if (_t23) goto L_027F1CFC; else goto L_027F1CF8;
|
|
L_027F1CF8: ; // 0x27f1cf8
|
|
/* 027F1CF8 */ cpu->r[8] = cpu->r[8] - cpu->r[0];
|
|
L_027F1CFC: ; // 0x27f1cfc
|
|
/* 027F1CFC */ _t24 = cpu->r[4] + 0x00000000u;
|
|
/* 027F1CFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F1D00 */ cpu->r[12] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F1D04 */ _t25 = cpu->r[12] + cpu->r[0];
|
|
/* 027F1D04 */ rbrew_write32(cpu->mem, _t25, cpu->r[6]);
|
|
/* 027F1D08 */ goto L_027F1C78;
|
|
}
|
|
|
|
// fn_027F1D0C @ 0x27f1d0c
|
|
void Gambit_fn_027F1D0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F1D0C: ; // 0x27f1d0c
|
|
/* 027F1D0C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F1D0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1D0C */ cpu->r[1] = _t0;
|
|
/* 027F1D10 */ /* nop */
|
|
/* 027F1D14 */ cpu->r[0] = cpu->lr;
|
|
/* 027F1D18 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 027F1D18 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F1D1C */ cpu->r[30] = cpu->r[3];
|
|
/* 027F1D20 */ _t2 = cpu->r[30] + 0x00000044u;
|
|
/* 027F1D20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F1D24 */ _t3 = cpu->r[30] + 0x00000008u;
|
|
/* 027F1D24 */ cpu->r[28] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F1D28 */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 027F1D28 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t4);
|
|
/* 027F1D2C */ cpu->r[3] = cpu->r[28];
|
|
/* 027F1D30 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F1D34 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 027F1D38 */ _t5 = cpu->r[28] + 0x0000001Cu;
|
|
/* 027F1D38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F1D3C */ cpu->r[29] = 0x00000000u;
|
|
/* 027F1D40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 027F1D44 */ cpu->r[10] = cpu->r[29];
|
|
/* 027F1D48 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1D48 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F1D48 */ if (_t7) goto L_027F1D4C; else goto L_027F1D58;
|
|
L_027F1D4C: ; // 0x27f1d4c
|
|
/* 027F1D4C */ _t8 = cpu->r[28] + 0x00000024u;
|
|
/* 027F1D4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F1D50 */ cpu->r[5] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F1D54 */ _t9 = cpu->r[5] + cpu->r[6];
|
|
/* 027F1D54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
L_027F1D58: ; // 0x27f1d58
|
|
/* 027F1D58 */ cpu->r[11] = 0x101D0000u;
|
|
/* 027F1D5C */ _t10 = cpu->r[11] + 0xFFFFE218u;
|
|
/* 027F1D5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F1D5C */ cpu->r[11] = _t10;
|
|
/* 027F1D60 */ cpu->r[4] = 0x101D0000u;
|
|
/* 027F1D64 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 027F1D64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F1D68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027F1D6C */ cpu->r[4] = cpu->r[4] + 0xFFFFEF88u;
|
|
/* 027F1D70 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1D70 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F1D70 */ if (_t13) goto L_027F1D74; else goto L_027F1D88;
|
|
L_027F1D74: ; // 0x27f1d74
|
|
/* 027F1D74 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F1D78 */ cpu->r[8] = 0x00000001u;
|
|
/* 027F1D7C */ cpu->r[9] = cpu->r[9] + 0x000004DCu;
|
|
/* 027F1D80 */ _t14 = cpu->r[11] + 0x00000000u;
|
|
/* 027F1D80 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 027F1D84 */ _t15 = cpu->r[4] + 0x00000000u;
|
|
/* 027F1D84 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
L_027F1D88: ; // 0x27f1d88
|
|
/* 027F1D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F1D8C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1D8C */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F1D8C */ if (_t17) goto L_027F1DAC; else goto L_027F1D90;
|
|
L_027F1D90: ; // 0x27f1d90
|
|
/* 027F1D90 */ _t18 = cpu->r[31] + 0x00000088u;
|
|
/* 027F1D90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F1D94 */ _t19 = cpu->r[10] + 0x0000000Cu;
|
|
/* 027F1D94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F1D98 */ cpu->ctr = cpu->r[11];
|
|
/* 027F1D9C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F1DA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F1DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1DA8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1DA8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F1DA8 */ if (_t21) goto L_027F1DAC; else goto L_027F1DB0;
|
|
L_027F1DAC: ; // 0x27f1dac
|
|
/* 027F1DAC */ cpu->r[31] = 0x00000000u;
|
|
L_027F1DB0: ; // 0x27f1db0
|
|
/* 027F1DB0 */ _t22 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F1DB0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F1DB4 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1DB4 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 027F1DB8 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1DB8 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 027F1DBC */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1DBC */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 027F1DC0 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1DC0 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 027F1DC4 */ _t27 = cpu->r[27] + 0x0000002Cu;
|
|
/* 027F1DC4 */ cpu->r[28] = rbrew_read16(cpu->mem, _t27);
|
|
/* 027F1DC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F1DCC */ cpu->r[31] = 0x101D0000u;
|
|
/* 027F1DD0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1DD0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F1DD0 */ if (_t29) goto L_027F1E1C; else goto L_027F1DD4;
|
|
L_027F1DD4: ; // 0x27f1dd4
|
|
/* 027F1DD4 */ _t30 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 027F1DD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F1DD8 */ Gambit_fn_02826F20(cpu);
|
|
/* 027F1DDC */ _t31 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1DDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F1DE0 */ _t32 = cpu->r[5] + 0x00000034u;
|
|
/* 027F1DE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F1DE4 */ cpu->ctr = cpu->r[0];
|
|
/* 027F1DE8 */ cpu->r[5] = 0x00000004u;
|
|
/* 027F1DEC */ cpu->r[4] = rbrew_rlwinm(cpu->r[28], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F1DF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F1DF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F1DF8 */ cpu->r[0] = cpu->r[28];
|
|
/* 027F1DFC */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1DFC */ _t34 = _t33 & 0x00000001u;
|
|
/* 027F1DFC */ if (_t34) goto L_027F1E04; else goto L_027F1E00;
|
|
L_027F1E00: ; // 0x27f1e00
|
|
/* 027F1E00 */ cpu->r[0] = 0x00000001u;
|
|
L_027F1E04: ; // 0x27f1e04
|
|
/* 027F1E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1E08 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1E08 */ _t36 = _t35 & 0x00000001u;
|
|
/* 027F1E08 */ if (_t36) goto L_027F1E1C; else goto L_027F1E0C;
|
|
L_027F1E0C: ; // 0x27f1e0c
|
|
/* 027F1E0C */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1E0C */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
/* 027F1E10 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1E10 */ rbrew_write32(cpu->mem, _t38, cpu->r[28]);
|
|
/* 027F1E14 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1E14 */ rbrew_write32(cpu->mem, _t39, cpu->r[29]);
|
|
/* 027F1E18 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1E18 */ rbrew_write32(cpu->mem, _t40, cpu->r[3]);
|
|
L_027F1E1C: ; // 0x27f1e1c
|
|
/* 027F1E1C */ _t41 = cpu->r[30] + 0x00000044u;
|
|
/* 027F1E1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F1E20 */ cpu->r[5] = cpu->r[27];
|
|
/* 027F1E24 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F1E28 */ _t42 = cpu->r[7] + 0x00000016u;
|
|
/* 027F1E28 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t42);
|
|
/* 027F1E2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F1E30 */ Gambit_fn_027F1C74(cpu);
|
|
/* 027F1E34 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F1E34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F1E38 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1E38 */ _t44 = _t43 & 0x00000001u;
|
|
/* 027F1E38 */ if (_t44) goto L_027F1EA8; else goto L_027F1E3C;
|
|
L_027F1E3C: ; // 0x27f1e3c
|
|
/* 027F1E3C */ _t45 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1E3C */ _t46 = _t45 & 0x00000001u;
|
|
/* 027F1E3C */ if (_t46) goto L_027F1E40; else goto L_027F1F50;
|
|
L_027F1E40: ; // 0x27f1e40
|
|
/* 027F1E40 */ _t47 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 027F1E40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 027F1E44 */ Gambit_fn_02826F20(cpu);
|
|
/* 027F1E48 */ _t48 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1E48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t48);
|
|
/* 027F1E4C */ _t49 = cpu->r[5] + 0x00000034u;
|
|
/* 027F1E4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F1E50 */ cpu->ctr = cpu->r[0];
|
|
/* 027F1E54 */ cpu->r[5] = 0x00000004u;
|
|
/* 027F1E58 */ cpu->r[4] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F1E5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F1E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F1E64 */ cpu->r[11] = cpu->r[29];
|
|
/* 027F1E68 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F1E6C */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1E6C */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F1E6C */ if (_t51) goto L_027F1E74; else goto L_027F1E70;
|
|
L_027F1E70: ; // 0x27f1e70
|
|
/* 027F1E70 */ cpu->r[11] = 0x00000001u;
|
|
L_027F1E74: ; // 0x27f1e74
|
|
/* 027F1E74 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F1E78 */ cpu->ctr = cpu->r[11];
|
|
/* 027F1E7C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
L_027F1E80: ; // 0x27f1e80
|
|
/* 027F1E80 */ cpu->r[12] = cpu->r[3] + cpu->r[5];
|
|
/* 027F1E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F1E84 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1E84 */ _t53 = _t52 & 0x00000001u;
|
|
/* 027F1E84 */ if (_t53) goto L_027F1E90; else goto L_027F1E88;
|
|
L_027F1E88: ; // 0x27f1e88
|
|
/* 027F1E88 */ _t54 = cpu->r[12] + 0x00000000u;
|
|
/* 027F1E88 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[0]);
|
|
/* 027F1E8C */ _t55 = cpu->r[12] + 0x00000002u;
|
|
/* 027F1E8C */ rbrew_write16(cpu->mem, _t55, (uint16_t)cpu->r[0]);
|
|
L_027F1E90: ; // 0x27f1e90
|
|
/* 027F1E90 */ cpu->r[5] = cpu->r[5] + 0x00000004u;
|
|
/* 027F1E94 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F1E94 */ _t56 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F1E94 */ _t57 = _t56 >> (0x00000002u & 31u);
|
|
/* 027F1E94 */ _t58 = _t57 & 0x00000001u;
|
|
/* 027F1E94 */ if (_t58) goto L_027F1E80; else goto L_027F1E98;
|
|
L_027F1E98: ; // 0x27f1e98
|
|
/* 027F1E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F1E9C */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1E9C */ _t60 = _t59 & 0x00000001u;
|
|
/* 027F1E9C */ if (_t60) goto L_027F1EA8; else goto L_027F1EA0;
|
|
L_027F1EA0: ; // 0x27f1ea0
|
|
/* 027F1EA0 */ _t61 = cpu->r[30] + 0x0000007Cu;
|
|
/* 027F1EA0 */ rbrew_write32(cpu->mem, _t61, cpu->r[3]);
|
|
/* 027F1EA4 */ _t62 = cpu->r[30] + 0x00000078u;
|
|
/* 027F1EA4 */ rbrew_write32(cpu->mem, _t62, cpu->r[29]);
|
|
L_027F1EA8: ; // 0x27f1ea8
|
|
/* 027F1EA8 */ _t63 = cpu->r[30] + 0x00000078u;
|
|
/* 027F1EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F1EAC */ cpu->r[4] = 0x00000000u;
|
|
/* 027F1EB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 027F1EB4 */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1EB4 */ _t65 = _t64 & 0x00000001u;
|
|
/* 027F1EB4 */ if (_t65) goto L_027F1EB8; else goto L_027F1F50;
|
|
L_027F1EB8: ; // 0x27f1eb8
|
|
/* 027F1EB8 */ cpu->r[3] = 0x00000000u;
|
|
L_027F1EBC: ; // 0x27f1ebc
|
|
/* 027F1EBC */ _t66 = cpu->r[30] + 0x00000044u;
|
|
/* 027F1EBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F1EC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F1EC4 */ _t67 = cpu->r[30] + 0x0000007Cu;
|
|
/* 027F1EC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027F1EC8 */ _t68 = cpu->r[1] + 0x00000014u;
|
|
/* 027F1EC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F1ECC */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1ECC */ _t70 = _t69 & 0x00000001u;
|
|
/* 027F1ECC */ if (_t70) goto L_027F1ED0; else goto L_027F1ED4;
|
|
L_027F1ED0: ; // 0x27f1ed0
|
|
/* 027F1ED0 */ cpu->r[12] = cpu->r[12] + cpu->r[3];
|
|
L_027F1ED4: ; // 0x27f1ed4
|
|
/* 027F1ED4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F1ED8 */ _t71 = cpu->r[9] + 0x00000014u;
|
|
/* 027F1ED8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t71);
|
|
/* 027F1EDC */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1EDC */ _t73 = _t72 & 0x00000001u;
|
|
/* 027F1EDC */ if (_t73) goto L_027F1EE0; else goto L_027F1F28;
|
|
L_027F1EE0: ; // 0x27f1ee0
|
|
/* 027F1EE0 */ _t74 = cpu->r[1] + 0x00000010u;
|
|
/* 027F1EE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t74);
|
|
/* 027F1EE4 */ _t75 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1EE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t75);
|
|
/* 027F1EE8 */ cpu->r[0] = cpu->r[11] + cpu->r[4];
|
|
/* 027F1EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[7]);
|
|
/* 027F1EF0 */ _t76 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1EF0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t76);
|
|
/* 027F1EF4 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1EF4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 027F1EF4 */ if (_t78) goto L_027F1EFC; else goto L_027F1EF8;
|
|
L_027F1EF8: ; // 0x27f1ef8
|
|
/* 027F1EF8 */ cpu->r[0] = cpu->r[0] - cpu->r[7];
|
|
L_027F1EFC: ; // 0x27f1efc
|
|
/* 027F1EFC */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F1F00 */ _t79 = cpu->r[6] + cpu->r[5];
|
|
/* 027F1F00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F1F04 */ _t80 = rbrew_rlwinm(cpu->r[10], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 027F1F04 */ _t81 = cpu->r[8] & 0x0000FFFFu;
|
|
/* 027F1F04 */ cpu->r[8] = _t81 | _t80;
|
|
/* 027F1F08 */ _t82 = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 027F1F08 */ _t83 = cpu->r[8] & 0xFFFF0000u;
|
|
/* 027F1F08 */ cpu->r[8] = _t83 | _t82;
|
|
/* 027F1F0C */ _t84 = cpu->r[12] + 0x00000000u;
|
|
/* 027F1F0C */ rbrew_write32(cpu->mem, _t84, cpu->r[8]);
|
|
/* 027F1F10 */ _t85 = cpu->r[30] + 0x00000078u;
|
|
/* 027F1F10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 027F1F14 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 027F1F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 027F1F1C */ cpu->r[3] = cpu->r[3] + 0x00000004u;
|
|
/* 027F1F20 */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1F20 */ _t87 = _t86 & 0x00000001u;
|
|
/* 027F1F20 */ if (_t87) goto L_027F1EBC; else goto L_027F1F24;
|
|
L_027F1F24: ; // 0x27f1f24
|
|
/* 027F1F24 */ goto L_027F1F50;
|
|
L_027F1F28: ; // 0x27f1f28
|
|
/* 027F1F28 */ _t88 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1F28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t88);
|
|
/* 027F1F2C */ _t89 = cpu->r[7] + 0x00000000u;
|
|
/* 027F1F2C */ cpu->r[7] = rbrew_read32(cpu->mem, _t89);
|
|
/* 027F1F30 */ _t90 = rbrew_rlwinm(cpu->r[10], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 027F1F30 */ _t91 = cpu->r[8] & 0x0000FFFFu;
|
|
/* 027F1F30 */ cpu->r[8] = _t91 | _t90;
|
|
/* 027F1F34 */ _t92 = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 027F1F34 */ _t93 = cpu->r[8] & 0xFFFF0000u;
|
|
/* 027F1F34 */ cpu->r[8] = _t93 | _t92;
|
|
/* 027F1F38 */ _t94 = cpu->r[12] + 0x00000000u;
|
|
/* 027F1F38 */ rbrew_write32(cpu->mem, _t94, cpu->r[8]);
|
|
/* 027F1F3C */ _t95 = cpu->r[30] + 0x00000078u;
|
|
/* 027F1F3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 027F1F40 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 027F1F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 027F1F48 */ cpu->r[3] = cpu->r[3] + 0x00000004u;
|
|
/* 027F1F4C */ _t96 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F1F4C */ _t97 = _t96 & 0x00000001u;
|
|
/* 027F1F4C */ if (_t97) goto L_027F1EBC; else goto L_027F1F50;
|
|
L_027F1F50: ; // 0x27f1f50
|
|
/* 027F1F50 */ _t98 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1F50 */ cpu->r[4] = rbrew_read32(cpu->mem, _t98);
|
|
/* 027F1F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F1F58 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F1F58 */ _t100 = _t99 & 0x00000001u;
|
|
/* 027F1F58 */ if (_t100) goto L_027F1F80; else goto L_027F1F5C;
|
|
L_027F1F5C: ; // 0x27f1f5c
|
|
/* 027F1F5C */ _t101 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F1F5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t101);
|
|
/* 027F1F60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F1F64 */ _t102 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 027F1F64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t102);
|
|
/* 027F1F68 */ Gambit_fn_02826B90(cpu);
|
|
/* 027F1F6C */ _t103 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1F6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t103);
|
|
/* 027F1F70 */ _t104 = cpu->r[8] + 0x0000003Cu;
|
|
/* 027F1F70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t104);
|
|
/* 027F1F74 */ cpu->ctr = cpu->r[9];
|
|
/* 027F1F78 */ _t105 = cpu->r[1] + 0x00000008u;
|
|
/* 027F1F78 */ cpu->r[4] = rbrew_read32(cpu->mem, _t105);
|
|
/* 027F1F7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_027F1F80: ; // 0x27f1f80
|
|
/* 027F1F80 */ /* nop */
|
|
/* 027F1F84 */ _t106 = cpu->r[1] + 0x00000034u;
|
|
/* 027F1F84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 027F1F88 */ cpu->lr = cpu->r[0];
|
|
/* 027F1F8C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F1F90 */ return;
|
|
}
|
|
|
|
// fn_027F1F94 @ 0x27f1f94
|
|
void Gambit_fn_027F1F94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F1F94: ; // 0x27f1f94
|
|
/* 027F1F94 */ cpu->r[0] = cpu->lr;
|
|
/* 027F1F98 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027F1F98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1F98 */ cpu->r[1] = _t0;
|
|
/* 027F1F9C */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 027F1F9C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027F1FA0 */ /* nop */
|
|
/* 027F1FA4 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 027F1FA4 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F1FA8 */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 027F1FA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F1FAC */ /* nop */
|
|
/* 027F1FB0 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F1FB4 */ cpu->r[28] = cpu->r[5];
|
|
/* 027F1FB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F1FB8 */ cpu->r[26] = 0x10110000u;
|
|
/* 027F1FBC */ cpu->r[30] = cpu->r[4];
|
|
/* 027F1FC0 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1FC0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F1FC0 */ if (_t5) goto L_027F1FC4; else goto L_027F22A4;
|
|
L_027F1FC4: ; // 0x27f1fc4
|
|
/* 027F1FC4 */ cpu->r[3] = 0x101D0000u;
|
|
/* 027F1FC8 */ _t6 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 027F1FC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F1FCC */ Gambit_fn_02826F20(cpu);
|
|
/* 027F1FD0 */ _t7 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1FD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F1FD4 */ _t8 = cpu->r[12] + 0x00000034u;
|
|
/* 027F1FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F1FD8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F1FDC */ cpu->r[5] = 0x00000004u;
|
|
/* 027F1FE0 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000144u);
|
|
/* 027F1FE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F1FE8 */ cpu->r[16] = cpu->r[3];
|
|
/* 027F1FEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F1FF0 */ cpu->r[31] = cpu->r[28];
|
|
/* 027F1FF4 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F1FF8 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1FF8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F1FF8 */ if (_t10) goto L_027F2000; else goto L_027F1FFC;
|
|
L_027F1FFC: ; // 0x27f1ffc
|
|
/* 027F1FFC */ cpu->r[31] = 0x00000001u;
|
|
L_027F2000: ; // 0x27f2000
|
|
/* 027F2000 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F2004 */ cpu->r[19] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000144u);
|
|
/* 027F2008 */ _t11 = cpu->r[12] + 0x000004FCu;
|
|
/* 027F2008 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027F200C */ cpu->r[21] = 0x101F0000u;
|
|
/* 027F2010 */ cpu->r[23] = 0x101F0000u;
|
|
/* 027F2014 */ _t12 = cpu->r[26] + 0x00007399u;
|
|
/* 027F2014 */ cpu->r[20] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027F2018 */ cpu->r[21] = cpu->r[21] + 0x00006338u;
|
|
/* 027F201C */ cpu->r[22] = 0x00000000u;
|
|
/* 027F2020 */ cpu->r[23] = cpu->r[23] + 0x00005E30u;
|
|
/* 027F2024 */ cpu->r[24] = 0xFFFFFFFFu;
|
|
/* 027F2028 */ cpu->r[25] = 0x00000040u;
|
|
L_027F202C: ; // 0x27f202c
|
|
/* 027F202C */ cpu->r[29] = cpu->r[16] + cpu->r[19];
|
|
/* 027F202C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F2030 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2030 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F2030 */ if (_t14) goto L_027F2288; else goto L_027F2034;
|
|
L_027F2034: ; // 0x27f2034
|
|
/* 027F2034 */ cpu->r[18] = cpu->r[29];
|
|
/* 027F2034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 027F2038 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2038 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F2038 */ if (_t16) goto L_027F203C; else goto L_027F204C;
|
|
L_027F203C: ; // 0x27f203c
|
|
/* 027F203C */ cpu->r[3] = 0x00000014u;
|
|
/* 027F2040 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F2044 */ cpu->r[18] = cpu->r[3];
|
|
/* 027F2044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 027F2048 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2048 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F2048 */ if (_t18) goto L_027F2058; else goto L_027F204C;
|
|
L_027F204C: ; // 0x27f204c
|
|
/* 027F204C */ cpu->r[3] = cpu->r[18];
|
|
/* 027F2050 */ Gambit_fn_028029E4(cpu);
|
|
/* 027F2054 */ _t19 = cpu->r[18] + 0x00000010u;
|
|
/* 027F2054 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
L_027F2058: ; // 0x27f2058
|
|
/* 027F2058 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F205C */ _t20 = cpu->r[29] + 0x00000016u;
|
|
/* 027F205C */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[24]);
|
|
/* 027F2060 */ cpu->r[9] = cpu->r[9] + 0x00000454u;
|
|
/* 027F2064 */ _t21 = cpu->r[29] + 0x00000014u;
|
|
/* 027F2064 */ rbrew_write16(cpu->mem, _t21, (uint16_t)cpu->r[24]);
|
|
/* 027F2068 */ cpu->r[5] = 0x10110000u;
|
|
/* 027F206C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F206C */ rbrew_write32(cpu->mem, _t22, cpu->r[9]);
|
|
/* 027F2070 */ cpu->r[5] = cpu->r[5] + 0x00000440u;
|
|
/* 027F2074 */ cpu->r[14] = cpu->r[29] + 0x00000018u;
|
|
/* 027F2074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[14], 0x00000000u);
|
|
/* 027F2078 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2078 */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 027F207C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F207C */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F207C */ if (_t25) goto L_027F2080; else goto L_027F2090;
|
|
L_027F2080: ; // 0x27f2080
|
|
/* 027F2080 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 027F2084 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F2088 */ cpu->r[14] = cpu->r[3];
|
|
/* 027F2088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[14], 0x00000000u);
|
|
/* 027F208C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F208C */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F208C */ if (_t27) goto L_027F2184; else goto L_027F2090;
|
|
L_027F2090: ; // 0x27f2090
|
|
/* 027F2090 */ cpu->r[15] = cpu->r[14];
|
|
/* 027F2090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[15], 0x00000000u);
|
|
/* 027F2094 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2094 */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F2094 */ if (_t29) goto L_027F2098; else goto L_027F20A8;
|
|
L_027F2098: ; // 0x27f2098
|
|
/* 027F2098 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 027F209C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F20A0 */ cpu->r[15] = cpu->r[3];
|
|
/* 027F20A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[15], 0x00000000u);
|
|
/* 027F20A4 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F20A4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F20A4 */ if (_t31) goto L_027F2178; else goto L_027F20A8;
|
|
L_027F20A8: ; // 0x27f20a8
|
|
/* 027F20A8 */ cpu->r[11] = cpu->r[15];
|
|
/* 027F20A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F20AC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F20AC */ _t33 = _t32 & 0x00000001u;
|
|
/* 027F20AC */ if (_t33) goto L_027F20B0; else goto L_027F20C0;
|
|
L_027F20B0: ; // 0x27f20b0
|
|
/* 027F20B0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F20B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F20B8 */ cpu->r[11] = cpu->r[3];
|
|
/* 027F20B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F20BC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F20BC */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F20BC */ if (_t35) goto L_027F20DC; else goto L_027F20C0;
|
|
L_027F20C0: ; // 0x27f20c0
|
|
/* 027F20C0 */ cpu->r[7] = 0x10110000u;
|
|
/* 027F20C4 */ _t36 = cpu->r[11] + 0x00000008u;
|
|
/* 027F20C4 */ rbrew_write32(cpu->mem, _t36, cpu->r[25]);
|
|
/* 027F20C8 */ cpu->r[6] = cpu->r[15] + 0x0000000Cu;
|
|
/* 027F20CC */ cpu->r[7] = cpu->r[7] + 0x0000046Cu;
|
|
/* 027F20D0 */ _t37 = cpu->r[11] + 0x00000000u;
|
|
/* 027F20D0 */ rbrew_write32(cpu->mem, _t37, cpu->r[6]);
|
|
/* 027F20D4 */ _t38 = cpu->r[11] + 0x00000004u;
|
|
/* 027F20D4 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 027F20D8 */ _t39 = cpu->r[15] + 0x0000004Bu;
|
|
/* 027F20D8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[20]);
|
|
L_027F20DC: ; // 0x27f20dc
|
|
/* 027F20DC */ cpu->r[8] = 0x10110000u;
|
|
/* 027F20E0 */ cpu->r[8] = cpu->r[8] + 0x00000484u;
|
|
/* 027F20E4 */ _t40 = cpu->r[15] + 0x00000004u;
|
|
/* 027F20E4 */ rbrew_write32(cpu->mem, _t40, cpu->r[8]);
|
|
/* 027F20E8 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F20E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F20EC */ _t42 = cpu->r[9] + 0x00000014u;
|
|
/* 027F20EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F20F0 */ cpu->ctr = cpu->r[10];
|
|
/* 027F20F4 */ _t43 = cpu->r[15] + 0x00000000u;
|
|
/* 027F20F4 */ cpu->r[17] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F20F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F20FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F2100 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2100 */ cpu->r[6] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F2104 */ _t45 = cpu->r[6] + 0x00000000u;
|
|
/* 027F2104 */ cpu->r[11] = rbrew_read8(cpu->mem, _t45);
|
|
/* 027F2108 */ cpu->r[18] = 0x00000000u;
|
|
/* 027F210C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[20]);
|
|
/* 027F2110 */ cpu->r[7] = 0x00080000u;
|
|
/* 027F2114 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2114 */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F2114 */ if (_t47) goto L_027F213C; else goto L_027F2118;
|
|
L_027F2118: ; // 0x27f2118
|
|
/* 027F2118 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 027F211C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[7]);
|
|
/* 027F2120 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 027F2124 */ _t48 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F2124 */ _t49 = _t48 & 0x00000001u;
|
|
/* 027F2124 */ if (_t49) goto L_027F2138; else goto L_027F2128;
|
|
L_027F2128: ; // 0x27f2128
|
|
/* 027F2128 */ _t50 = cpu->r[6] + 0x00000000u;
|
|
/* 027F2128 */ cpu->r[0] = rbrew_read8(cpu->mem, _t50);
|
|
/* 027F212C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[20]);
|
|
/* 027F2130 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2130 */ _t52 = _t51 & 0x00000001u;
|
|
/* 027F2130 */ if (_t52) goto L_027F2134; else goto L_027F2118;
|
|
L_027F2134: ; // 0x27f2134
|
|
/* 027F2134 */ goto L_027F213C;
|
|
L_027F2138: ; // 0x27f2138
|
|
/* 027F2138 */ cpu->r[18] = 0x00000000u;
|
|
L_027F213C: ; // 0x27f213c
|
|
/* 027F213C */ _t53 = cpu->r[15] + 0x00000008u;
|
|
/* 027F213C */ cpu->r[4] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F2140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[4]);
|
|
/* 027F2144 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2144 */ _t55 = _t54 & 0x00000001u;
|
|
/* 027F2144 */ if (_t55) goto L_027F214C; else goto L_027F2148;
|
|
L_027F2148: ; // 0x27f2148
|
|
/* 027F2148 */ cpu->r[18] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_027F214C: ; // 0x27f214c
|
|
/* 027F214C */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F214C */ cpu->r[4] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027F2150 */ _t57 = cpu->r[4] + 0x00000014u;
|
|
/* 027F2150 */ cpu->r[5] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F2154 */ cpu->ctr = cpu->r[5];
|
|
/* 027F2158 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F215C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F2160 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2160 */ cpu->r[4] = rbrew_read32(cpu->mem, _t58);
|
|
/* 027F2164 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F2168 */ cpu->r[5] = cpu->r[18];
|
|
/* 027F216C */ cpu->r[3] = cpu->r[17];
|
|
/* 027F2170 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 027F2174 */ _t59 = cpu->r[17] + cpu->r[18];
|
|
/* 027F2174 */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[20]);
|
|
L_027F2178: ; // 0x27f2178
|
|
/* 027F2178 */ cpu->r[6] = 0x10110000u;
|
|
/* 027F217C */ cpu->r[6] = cpu->r[6] + 0x0000049Cu;
|
|
/* 027F2180 */ _t60 = cpu->r[14] + 0x00000004u;
|
|
/* 027F2180 */ rbrew_write32(cpu->mem, _t60, cpu->r[6]);
|
|
L_027F2184: ; // 0x27f2184
|
|
/* 027F2184 */ _t61 = cpu->r[29] + 0x00000064u;
|
|
/* 027F2184 */ rbrew_write32(cpu->mem, _t61, cpu->r[22]);
|
|
/* 027F2188 */ cpu->r[7] = cpu->r[23] + 0xFFFFFFFCu;
|
|
/* 027F218C */ cpu->r[9] = 0x00000003u;
|
|
/* 027F2190 */ _t62 = cpu->r[29] + 0x00000068u;
|
|
/* 027F2190 */ rbrew_write32(cpu->mem, _t62, cpu->r[22]);
|
|
/* 027F2194 */ cpu->r[8] = cpu->r[29] + 0x0000006Cu;
|
|
/* 027F2198 */ cpu->ctr = cpu->r[9];
|
|
/* 027F219C */ _t63 = cpu->r[29] + 0x0000006Cu;
|
|
/* 027F219C */ rbrew_write32(cpu->mem, _t63, cpu->r[22]);
|
|
L_027F21A0: ; // 0x27f21a0
|
|
/* 027F21A0 */ _t64 = cpu->r[7] + 0x00000004u;
|
|
/* 027F21A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F21A4 */ _t65 = cpu->r[8] + 0x00000004u;
|
|
/* 027F21A4 */ rbrew_write32(cpu->mem, _t65, cpu->r[10]);
|
|
/* 027F21A8 */ _t66 = cpu->r[7] + 0x00000008u;
|
|
/* 027F21A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F21AC */ _t67 = cpu->r[8] + 0x00000008u;
|
|
/* 027F21AC */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 027F21B0 */ _t68 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F21B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F21B4 */ _t69 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027F21B4 */ rbrew_write32(cpu->mem, _t69, cpu->r[4]);
|
|
/* 027F21B8 */ _t70 = cpu->r[7] + 0x00000010u;
|
|
/* 027F21B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t70);
|
|
/* 027F21B8 */ cpu->r[7] = _t70;
|
|
/* 027F21BC */ _t71 = cpu->r[8] + 0x00000010u;
|
|
/* 027F21BC */ rbrew_write32(cpu->mem, _t71, cpu->r[5]);
|
|
/* 027F21BC */ cpu->r[8] = _t71;
|
|
/* 027F21C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F21C0 */ _t72 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F21C0 */ _t73 = _t72 >> (0x00000002u & 31u);
|
|
/* 027F21C0 */ _t74 = _t73 & 0x00000001u;
|
|
/* 027F21C0 */ if (_t74) goto L_027F21A0; else goto L_027F21C4;
|
|
L_027F21C4: ; // 0x27f21c4
|
|
/* 027F21C4 */ cpu->r[0] = 0x00000003u;
|
|
/* 027F21C8 */ cpu->r[6] = cpu->r[23] + 0xFFFFFFFCu;
|
|
/* 027F21CC */ cpu->ctr = cpu->r[0];
|
|
/* 027F21D0 */ cpu->r[7] = cpu->r[29] + 0x0000009Cu;
|
|
L_027F21D4: ; // 0x27f21d4
|
|
/* 027F21D4 */ _t75 = cpu->r[6] + 0x00000004u;
|
|
/* 027F21D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 027F21D8 */ _t76 = cpu->r[7] + 0x00000004u;
|
|
/* 027F21D8 */ rbrew_write32(cpu->mem, _t76, cpu->r[10]);
|
|
/* 027F21DC */ _t77 = cpu->r[6] + 0x00000008u;
|
|
/* 027F21DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t77);
|
|
/* 027F21E0 */ _t78 = cpu->r[7] + 0x00000008u;
|
|
/* 027F21E0 */ rbrew_write32(cpu->mem, _t78, cpu->r[12]);
|
|
/* 027F21E4 */ _t79 = cpu->r[6] + 0x0000000Cu;
|
|
/* 027F21E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F21E8 */ _t80 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F21E8 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 027F21EC */ _t81 = cpu->r[6] + 0x00000010u;
|
|
/* 027F21EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t81);
|
|
/* 027F21EC */ cpu->r[6] = _t81;
|
|
/* 027F21F0 */ _t82 = cpu->r[7] + 0x00000010u;
|
|
/* 027F21F0 */ rbrew_write32(cpu->mem, _t82, cpu->r[4]);
|
|
/* 027F21F0 */ cpu->r[7] = _t82;
|
|
/* 027F21F4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F21F4 */ _t83 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F21F4 */ _t84 = _t83 >> (0x00000002u & 31u);
|
|
/* 027F21F4 */ _t85 = _t84 & 0x00000001u;
|
|
/* 027F21F4 */ if (_t85) goto L_027F21D4; else goto L_027F21F8;
|
|
L_027F21F8: ; // 0x27f21f8
|
|
/* 027F21F8 */ cpu->r[5] = cpu->r[29] + 0x000000D0u;
|
|
/* 027F21F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F21FC */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F21FC */ _t87 = _t86 & 0x00000001u;
|
|
/* 027F21FC */ if (_t87) goto L_027F2200; else goto L_027F2208;
|
|
L_027F2200: ; // 0x27f2200
|
|
/* 027F2200 */ cpu->r[3] = 0x00000030u;
|
|
/* 027F2204 */ Gambit_fn_02801A78(cpu);
|
|
L_027F2208: ; // 0x27f2208
|
|
/* 027F2208 */ _t88 = cpu->r[29] + 0x00000100u;
|
|
/* 027F2208 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[31]);
|
|
/* 027F220C */ _t89 = cpu->r[29] + 0x00000104u;
|
|
/* 027F220C */ rbrew_write_f32(cpu->mem, _t89, cpu->f[31]);
|
|
/* 027F2210 */ _t90 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2210 */ cpu->r[8] = rbrew_read32(cpu->mem, _t90);
|
|
/* 027F2214 */ _t91 = cpu->r[29] + 0x00000108u;
|
|
/* 027F2214 */ rbrew_write32(cpu->mem, _t91, cpu->r[8]);
|
|
/* 027F2218 */ _t92 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2218 */ cpu->r[9] = rbrew_read32(cpu->mem, _t92);
|
|
/* 027F221C */ _t93 = cpu->r[29] + 0x0000010Cu;
|
|
/* 027F221C */ rbrew_write32(cpu->mem, _t93, cpu->r[9]);
|
|
/* 027F2220 */ _t94 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2220 */ cpu->r[10] = rbrew_read32(cpu->mem, _t94);
|
|
/* 027F2224 */ _t95 = cpu->r[29] + 0x00000110u;
|
|
/* 027F2224 */ rbrew_write32(cpu->mem, _t95, cpu->r[10]);
|
|
/* 027F2228 */ _t96 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2228 */ cpu->r[11] = rbrew_read32(cpu->mem, _t96);
|
|
/* 027F222C */ _t97 = cpu->r[29] + 0x00000114u;
|
|
/* 027F222C */ rbrew_write32(cpu->mem, _t97, cpu->r[11]);
|
|
/* 027F2230 */ _t98 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2230 */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 027F2234 */ _t99 = cpu->r[29] + 0x00000118u;
|
|
/* 027F2234 */ rbrew_write32(cpu->mem, _t99, cpu->r[12]);
|
|
/* 027F2238 */ _t100 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 027F223C */ _t101 = cpu->r[29] + 0x0000011Cu;
|
|
/* 027F223C */ rbrew_write32(cpu->mem, _t101, cpu->r[0]);
|
|
/* 027F2240 */ _t102 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2240 */ cpu->r[7] = rbrew_read32(cpu->mem, _t102);
|
|
/* 027F2244 */ _t103 = cpu->r[29] + 0x00000120u;
|
|
/* 027F2244 */ rbrew_write32(cpu->mem, _t103, cpu->r[7]);
|
|
/* 027F2248 */ _t104 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2248 */ cpu->r[8] = rbrew_read32(cpu->mem, _t104);
|
|
/* 027F224C */ _t105 = cpu->r[29] + 0x00000124u;
|
|
/* 027F224C */ rbrew_write32(cpu->mem, _t105, cpu->r[8]);
|
|
/* 027F2250 */ _t106 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2250 */ cpu->r[10] = rbrew_read32(cpu->mem, _t106);
|
|
/* 027F2254 */ _t107 = cpu->r[29] + 0x00000128u;
|
|
/* 027F2254 */ rbrew_write32(cpu->mem, _t107, cpu->r[10]);
|
|
/* 027F2258 */ _t108 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2258 */ cpu->r[11] = rbrew_read32(cpu->mem, _t108);
|
|
/* 027F225C */ _t109 = cpu->r[29] + 0x0000012Cu;
|
|
/* 027F225C */ rbrew_write32(cpu->mem, _t109, cpu->r[11]);
|
|
/* 027F2260 */ _t110 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t110);
|
|
/* 027F2264 */ _t111 = cpu->r[29] + 0x00000130u;
|
|
/* 027F2264 */ rbrew_write32(cpu->mem, _t111, cpu->r[12]);
|
|
/* 027F2268 */ _t112 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t112);
|
|
/* 027F226C */ _t113 = cpu->r[29] + 0x00000134u;
|
|
/* 027F226C */ rbrew_write32(cpu->mem, _t113, cpu->r[0]);
|
|
/* 027F2270 */ _t114 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2270 */ cpu->r[4] = rbrew_read32(cpu->mem, _t114);
|
|
/* 027F2274 */ _t115 = cpu->r[29] + 0x00000138u;
|
|
/* 027F2274 */ rbrew_write32(cpu->mem, _t115, cpu->r[4]);
|
|
/* 027F2278 */ _t116 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2278 */ cpu->r[5] = rbrew_read32(cpu->mem, _t116);
|
|
/* 027F227C */ _t117 = cpu->r[29] + 0x0000013Cu;
|
|
/* 027F227C */ rbrew_write32(cpu->mem, _t117, cpu->r[5]);
|
|
/* 027F2280 */ _t118 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2280 */ cpu->r[6] = rbrew_read32(cpu->mem, _t118);
|
|
/* 027F2284 */ _t119 = cpu->r[29] + 0x00000140u;
|
|
/* 027F2284 */ rbrew_write32(cpu->mem, _t119, cpu->r[6]);
|
|
L_027F2288: ; // 0x27f2288
|
|
/* 027F2288 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 027F2288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F228C */ cpu->r[19] = cpu->r[19] + 0x00000144u;
|
|
/* 027F2290 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2290 */ _t121 = _t120 & 0x00000001u;
|
|
/* 027F2290 */ if (_t121) goto L_027F2294; else goto L_027F202C;
|
|
L_027F2294: ; // 0x27f2294
|
|
/* 027F2294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 027F2298 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2298 */ _t123 = _t122 & 0x00000001u;
|
|
/* 027F2298 */ if (_t123) goto L_027F22A4; else goto L_027F229C;
|
|
L_027F229C: ; // 0x27f229c
|
|
/* 027F229C */ _t124 = cpu->r[27] + 0x00000034u;
|
|
/* 027F229C */ rbrew_write32(cpu->mem, _t124, cpu->r[16]);
|
|
/* 027F22A0 */ _t125 = cpu->r[27] + 0x00000030u;
|
|
/* 027F22A0 */ rbrew_write32(cpu->mem, _t125, cpu->r[28]);
|
|
L_027F22A4: ; // 0x27f22a4
|
|
/* 027F22A4 */ cpu->r[6] = 0x00000004u;
|
|
/* 027F22A8 */ cpu->r[5] = 0x00000000u;
|
|
/* 027F22AC */ cpu->r[4] = cpu->r[28];
|
|
/* 027F22B0 */ cpu->r[3] = cpu->r[27] + 0x00000038u;
|
|
/* 027F22B4 */ Gambit_fn_028023CC(cpu);
|
|
/* 027F22B8 */ cpu->r[25] = 0x00000000u;
|
|
/* 027F22BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[28]);
|
|
/* 027F22C0 */ _t126 = cpu->r[27] + 0x0000002Cu;
|
|
/* 027F22C0 */ rbrew_write32(cpu->mem, _t126, cpu->r[28]);
|
|
/* 027F22C4 */ _t127 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F22C4 */ _t128 = _t127 & 0x00000001u;
|
|
/* 027F22C4 */ if (_t128) goto L_027F22C8; else goto L_027F23FC;
|
|
L_027F22C8: ; // 0x27f22c8
|
|
/* 027F22C8 */ _t129 = cpu->r[26] + 0x00007399u;
|
|
/* 027F22C8 */ cpu->r[28] = rbrew_read8(cpu->mem, _t129);
|
|
/* 027F22CC */ cpu->r[24] = 0x00000000u;
|
|
L_027F22D0: ; // 0x27f22d0
|
|
/* 027F22D0 */ _t130 = cpu->r[27] + 0x00000030u;
|
|
/* 027F22D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t130);
|
|
/* 027F22D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[7]);
|
|
/* 027F22D8 */ _t131 = cpu->r[27] + 0x00000034u;
|
|
/* 027F22D8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t131);
|
|
/* 027F22DC */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F22DC */ _t133 = _t132 & 0x00000001u;
|
|
/* 027F22DC */ if (_t133) goto L_027F22E0; else goto L_027F22E4;
|
|
L_027F22E0: ; // 0x27f22e0
|
|
/* 027F22E0 */ cpu->r[29] = cpu->r[29] + cpu->r[24];
|
|
L_027F22E4: ; // 0x27f22e4
|
|
/* 027F22E4 */ _t134 = cpu->r[30] + 0x00000004u;
|
|
/* 027F22E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t134);
|
|
/* 027F22E8 */ _t135 = cpu->r[8] + 0x00000014u;
|
|
/* 027F22E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t135);
|
|
/* 027F22EC */ cpu->ctr = cpu->r[9];
|
|
/* 027F22F0 */ _t136 = cpu->r[29] + 0x00000018u;
|
|
/* 027F22F0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t136);
|
|
/* 027F22F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F22F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F22FC */ _t137 = cpu->r[30] + 0x00000000u;
|
|
/* 027F22FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t137);
|
|
/* 027F2300 */ _t138 = cpu->r[9] + 0x00000000u;
|
|
/* 027F2300 */ cpu->r[10] = rbrew_read8(cpu->mem, _t138);
|
|
/* 027F2304 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F2308 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[28]);
|
|
/* 027F230C */ cpu->r[11] = 0x00080000u;
|
|
/* 027F2310 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2310 */ _t140 = _t139 & 0x00000001u;
|
|
/* 027F2310 */ if (_t140) goto L_027F2338; else goto L_027F2314;
|
|
L_027F2314: ; // 0x27f2314
|
|
/* 027F2314 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 027F2318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 027F231C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 027F2320 */ _t141 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F2320 */ _t142 = _t141 & 0x00000001u;
|
|
/* 027F2320 */ if (_t142) goto L_027F2334; else goto L_027F2324;
|
|
L_027F2324: ; // 0x27f2324
|
|
/* 027F2324 */ _t143 = cpu->r[9] + 0x00000000u;
|
|
/* 027F2324 */ cpu->r[0] = rbrew_read8(cpu->mem, _t143);
|
|
/* 027F2328 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[28]);
|
|
/* 027F232C */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F232C */ _t145 = _t144 & 0x00000001u;
|
|
/* 027F232C */ if (_t145) goto L_027F2330; else goto L_027F2314;
|
|
L_027F2330: ; // 0x27f2330
|
|
/* 027F2330 */ goto L_027F2338;
|
|
L_027F2334: ; // 0x27f2334
|
|
/* 027F2334 */ cpu->r[31] = 0x00000000u;
|
|
L_027F2338: ; // 0x27f2338
|
|
/* 027F2338 */ _t146 = cpu->r[29] + 0x00000020u;
|
|
/* 027F2338 */ cpu->r[5] = rbrew_read32(cpu->mem, _t146);
|
|
/* 027F233C */ _t147 = cpu->r[30] + 0x00000004u;
|
|
/* 027F233C */ cpu->r[12] = rbrew_read32(cpu->mem, _t147);
|
|
/* 027F2340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 027F2344 */ _t148 = cpu->r[12] + 0x00000014u;
|
|
/* 027F2344 */ cpu->r[4] = rbrew_read32(cpu->mem, _t148);
|
|
/* 027F2348 */ _t149 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2348 */ _t150 = _t149 & 0x00000001u;
|
|
/* 027F2348 */ if (_t150) goto L_027F2350; else goto L_027F234C;
|
|
L_027F234C: ; // 0x27f234c
|
|
/* 027F234C */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_027F2350: ; // 0x27f2350
|
|
/* 027F2350 */ cpu->ctr = cpu->r[4];
|
|
/* 027F2354 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F2358 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F235C */ _t151 = cpu->r[30] + 0x00000000u;
|
|
/* 027F235C */ cpu->r[4] = rbrew_read32(cpu->mem, _t151);
|
|
/* 027F2360 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F2364 */ cpu->r[5] = cpu->r[31];
|
|
/* 027F2368 */ cpu->r[3] = cpu->r[26];
|
|
/* 027F236C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 027F2370 */ _t152 = cpu->r[26] + cpu->r[31];
|
|
/* 027F2370 */ rbrew_write8(cpu->mem, _t152, (uint8_t)cpu->r[28]);
|
|
/* 027F2374 */ _t153 = cpu->r[27] + 0x00000008u;
|
|
/* 027F2374 */ cpu->r[3] = rbrew_read32(cpu->mem, _t153);
|
|
/* 027F2378 */ cpu->r[4] = cpu->r[30];
|
|
/* 027F237C */ Gambit_fn_029807A8(cpu);
|
|
/* 027F2380 */ _t154 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2380 */ rbrew_write32(cpu->mem, _t154, cpu->r[3]);
|
|
/* 027F2384 */ _t155 = cpu->r[29] + 0x00000014u;
|
|
/* 027F2384 */ rbrew_write32(cpu->mem, _t155, cpu->r[3]);
|
|
/* 027F2388 */ _t156 = cpu->r[27] + 0x0000002Cu;
|
|
/* 027F2388 */ cpu->r[6] = rbrew_read32(cpu->mem, _t156);
|
|
/* 027F238C */ cpu->r[5] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 027F2390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[5]);
|
|
/* 027F2394 */ _t157 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2394 */ _t158 = _t157 & 0x00000001u;
|
|
/* 027F2394 */ if (_t158) goto L_027F2398; else goto L_027F23BC;
|
|
L_027F2398: ; // 0x27f2398
|
|
/* 027F2398 */ _t159 = cpu->r[27] + 0x00000030u;
|
|
/* 027F2398 */ cpu->r[7] = rbrew_read32(cpu->mem, _t159);
|
|
/* 027F239C */ cpu->r[12] = cpu->r[25] + 0x00000001u;
|
|
/* 027F23A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[7]);
|
|
/* 027F23A4 */ _t160 = cpu->r[27] + 0x00000034u;
|
|
/* 027F23A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t160);
|
|
/* 027F23A8 */ _t161 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F23A8 */ _t162 = _t161 & 0x00000001u;
|
|
/* 027F23A8 */ if (_t162) goto L_027F23AC; else goto L_027F23B4;
|
|
L_027F23AC: ; // 0x27f23ac
|
|
/* 027F23AC */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x00000144u);
|
|
/* 027F23B0 */ cpu->r[4] = cpu->r[4] + cpu->r[8];
|
|
L_027F23B4: ; // 0x27f23b4
|
|
/* 027F23B4 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F23B8 */ Gambit_fn_02802B74(cpu);
|
|
L_027F23BC: ; // 0x27f23bc
|
|
/* 027F23BC */ _t163 = cpu->r[27] + 0x00000038u;
|
|
/* 027F23BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t163);
|
|
/* 027F23C0 */ _t164 = cpu->r[27] + 0x0000003Cu;
|
|
/* 027F23C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t164);
|
|
/* 027F23C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 027F23C8 */ _t165 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F23C8 */ _t166 = _t165 & 0x00000001u;
|
|
/* 027F23C8 */ if (_t166) goto L_027F23CC; else goto L_027F23E4;
|
|
L_027F23CC: ; // 0x27f23cc
|
|
/* 027F23CC */ _t167 = cpu->r[27] + 0x00000040u;
|
|
/* 027F23CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t167);
|
|
/* 027F23D0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F23D4 */ _t168 = cpu->r[10] + cpu->r[11];
|
|
/* 027F23D4 */ rbrew_write32(cpu->mem, _t168, cpu->r[29]);
|
|
/* 027F23D8 */ _t169 = cpu->r[27] + 0x00000038u;
|
|
/* 027F23D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t169);
|
|
/* 027F23DC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F23E0 */ _t170 = cpu->r[27] + 0x00000038u;
|
|
/* 027F23E0 */ rbrew_write32(cpu->mem, _t170, cpu->r[12]);
|
|
L_027F23E4: ; // 0x27f23e4
|
|
/* 027F23E4 */ _t171 = cpu->r[27] + 0x0000002Cu;
|
|
/* 027F23E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t171);
|
|
/* 027F23E8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 027F23EC */ cpu->r[30] = cpu->r[30] + 0x00000008u;
|
|
/* 027F23F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 027F23F4 */ cpu->r[24] = cpu->r[24] + 0x00000144u;
|
|
/* 027F23F8 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F23F8 */ _t173 = _t172 & 0x00000001u;
|
|
/* 027F23F8 */ if (_t173) goto L_027F22D0; else goto L_027F23FC;
|
|
L_027F23FC: ; // 0x27f23fc
|
|
/* 027F23FC */ _t174 = cpu->r[27] + 0x00000034u;
|
|
/* 027F23FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t174);
|
|
/* 027F2400 */ cpu->r[3] = cpu->r[27];
|
|
/* 027F2404 */ _t175 = cpu->r[27] + 0x00000044u;
|
|
/* 027F2404 */ rbrew_write32(cpu->mem, _t175, cpu->r[9]);
|
|
/* 027F2408 */ Gambit_fn_027F1D0C(cpu);
|
|
/* 027F240C */ /* nop */
|
|
/* 027F2410 */ _t176 = cpu->r[1] + 0x00000068u;
|
|
/* 027F2410 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 027F2414 */ _t177 = cpu->r[1] + 0x00000060u;
|
|
/* 027F2414 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t177);
|
|
/* 027F2418 */ _t178 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2418 */ _t179 = _t178 & 0x00000001u;
|
|
/* 027F2418 */ if (_t179) goto L_027F241C; // else: addr-0 trap, fall-through
|
|
L_027F241C: ; // 0x27f241c
|
|
/* 027F241C */ _t180 = cpu->r[1] + 0x00000074u;
|
|
/* 027F241C */ cpu->r[0] = rbrew_read32(cpu->mem, _t180);
|
|
/* 027F2420 */ cpu->lr = cpu->r[0];
|
|
/* 027F2424 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027F2428 */ return;
|
|
}
|
|
|
|
// fn_027F1F98 @ 0x27f1f98
|
|
void Gambit_fn_027F1F98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F1F98: ; // 0x27f1f98
|
|
/* 027F1F98 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027F1F98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F1F98 */ cpu->r[1] = _t0;
|
|
/* 027F1F9C */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 027F1F9C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027F1FA0 */ /* nop */
|
|
/* 027F1FA4 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 027F1FA4 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F1FA8 */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 027F1FA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F1FAC */ /* nop */
|
|
/* 027F1FB0 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F1FB4 */ cpu->r[28] = cpu->r[5];
|
|
/* 027F1FB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F1FB8 */ cpu->r[26] = 0x10110000u;
|
|
/* 027F1FBC */ cpu->r[30] = cpu->r[4];
|
|
/* 027F1FC0 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1FC0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F1FC0 */ if (_t5) goto L_027F1FC4; else goto L_027F22A4;
|
|
L_027F1FC4: ; // 0x27f1fc4
|
|
/* 027F1FC4 */ cpu->r[3] = 0x101D0000u;
|
|
/* 027F1FC8 */ _t6 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 027F1FC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F1FCC */ Gambit_fn_02826F20(cpu);
|
|
/* 027F1FD0 */ _t7 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F1FD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F1FD4 */ _t8 = cpu->r[12] + 0x00000034u;
|
|
/* 027F1FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F1FD8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F1FDC */ cpu->r[5] = 0x00000004u;
|
|
/* 027F1FE0 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000144u);
|
|
/* 027F1FE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F1FE8 */ cpu->r[16] = cpu->r[3];
|
|
/* 027F1FEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F1FF0 */ cpu->r[31] = cpu->r[28];
|
|
/* 027F1FF4 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F1FF8 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F1FF8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F1FF8 */ if (_t10) goto L_027F2000; else goto L_027F1FFC;
|
|
L_027F1FFC: ; // 0x27f1ffc
|
|
/* 027F1FFC */ cpu->r[31] = 0x00000001u;
|
|
L_027F2000: ; // 0x27f2000
|
|
/* 027F2000 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F2004 */ cpu->r[19] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000144u);
|
|
/* 027F2008 */ _t11 = cpu->r[12] + 0x000004FCu;
|
|
/* 027F2008 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027F200C */ cpu->r[21] = 0x101F0000u;
|
|
/* 027F2010 */ cpu->r[23] = 0x101F0000u;
|
|
/* 027F2014 */ _t12 = cpu->r[26] + 0x00007399u;
|
|
/* 027F2014 */ cpu->r[20] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027F2018 */ cpu->r[21] = cpu->r[21] + 0x00006338u;
|
|
/* 027F201C */ cpu->r[22] = 0x00000000u;
|
|
/* 027F2020 */ cpu->r[23] = cpu->r[23] + 0x00005E30u;
|
|
/* 027F2024 */ cpu->r[24] = 0xFFFFFFFFu;
|
|
/* 027F2028 */ cpu->r[25] = 0x00000040u;
|
|
L_027F202C: ; // 0x27f202c
|
|
/* 027F202C */ cpu->r[29] = cpu->r[16] + cpu->r[19];
|
|
/* 027F202C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F2030 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2030 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F2030 */ if (_t14) goto L_027F2288; else goto L_027F2034;
|
|
L_027F2034: ; // 0x27f2034
|
|
/* 027F2034 */ cpu->r[18] = cpu->r[29];
|
|
/* 027F2034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 027F2038 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2038 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F2038 */ if (_t16) goto L_027F203C; else goto L_027F204C;
|
|
L_027F203C: ; // 0x27f203c
|
|
/* 027F203C */ cpu->r[3] = 0x00000014u;
|
|
/* 027F2040 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F2044 */ cpu->r[18] = cpu->r[3];
|
|
/* 027F2044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 027F2048 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2048 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F2048 */ if (_t18) goto L_027F2058; else goto L_027F204C;
|
|
L_027F204C: ; // 0x27f204c
|
|
/* 027F204C */ cpu->r[3] = cpu->r[18];
|
|
/* 027F2050 */ Gambit_fn_028029E4(cpu);
|
|
/* 027F2054 */ _t19 = cpu->r[18] + 0x00000010u;
|
|
/* 027F2054 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
L_027F2058: ; // 0x27f2058
|
|
/* 027F2058 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F205C */ _t20 = cpu->r[29] + 0x00000016u;
|
|
/* 027F205C */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[24]);
|
|
/* 027F2060 */ cpu->r[9] = cpu->r[9] + 0x00000454u;
|
|
/* 027F2064 */ _t21 = cpu->r[29] + 0x00000014u;
|
|
/* 027F2064 */ rbrew_write16(cpu->mem, _t21, (uint16_t)cpu->r[24]);
|
|
/* 027F2068 */ cpu->r[5] = 0x10110000u;
|
|
/* 027F206C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F206C */ rbrew_write32(cpu->mem, _t22, cpu->r[9]);
|
|
/* 027F2070 */ cpu->r[5] = cpu->r[5] + 0x00000440u;
|
|
/* 027F2074 */ cpu->r[14] = cpu->r[29] + 0x00000018u;
|
|
/* 027F2074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[14], 0x00000000u);
|
|
/* 027F2078 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2078 */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 027F207C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F207C */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F207C */ if (_t25) goto L_027F2080; else goto L_027F2090;
|
|
L_027F2080: ; // 0x27f2080
|
|
/* 027F2080 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 027F2084 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F2088 */ cpu->r[14] = cpu->r[3];
|
|
/* 027F2088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[14], 0x00000000u);
|
|
/* 027F208C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F208C */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F208C */ if (_t27) goto L_027F2184; else goto L_027F2090;
|
|
L_027F2090: ; // 0x27f2090
|
|
/* 027F2090 */ cpu->r[15] = cpu->r[14];
|
|
/* 027F2090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[15], 0x00000000u);
|
|
/* 027F2094 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2094 */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F2094 */ if (_t29) goto L_027F2098; else goto L_027F20A8;
|
|
L_027F2098: ; // 0x27f2098
|
|
/* 027F2098 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 027F209C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F20A0 */ cpu->r[15] = cpu->r[3];
|
|
/* 027F20A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[15], 0x00000000u);
|
|
/* 027F20A4 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F20A4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F20A4 */ if (_t31) goto L_027F2178; else goto L_027F20A8;
|
|
L_027F20A8: ; // 0x27f20a8
|
|
/* 027F20A8 */ cpu->r[11] = cpu->r[15];
|
|
/* 027F20A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F20AC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F20AC */ _t33 = _t32 & 0x00000001u;
|
|
/* 027F20AC */ if (_t33) goto L_027F20B0; else goto L_027F20C0;
|
|
L_027F20B0: ; // 0x27f20b0
|
|
/* 027F20B0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F20B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F20B8 */ cpu->r[11] = cpu->r[3];
|
|
/* 027F20B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F20BC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F20BC */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F20BC */ if (_t35) goto L_027F20DC; else goto L_027F20C0;
|
|
L_027F20C0: ; // 0x27f20c0
|
|
/* 027F20C0 */ cpu->r[7] = 0x10110000u;
|
|
/* 027F20C4 */ _t36 = cpu->r[11] + 0x00000008u;
|
|
/* 027F20C4 */ rbrew_write32(cpu->mem, _t36, cpu->r[25]);
|
|
/* 027F20C8 */ cpu->r[6] = cpu->r[15] + 0x0000000Cu;
|
|
/* 027F20CC */ cpu->r[7] = cpu->r[7] + 0x0000046Cu;
|
|
/* 027F20D0 */ _t37 = cpu->r[11] + 0x00000000u;
|
|
/* 027F20D0 */ rbrew_write32(cpu->mem, _t37, cpu->r[6]);
|
|
/* 027F20D4 */ _t38 = cpu->r[11] + 0x00000004u;
|
|
/* 027F20D4 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 027F20D8 */ _t39 = cpu->r[15] + 0x0000004Bu;
|
|
/* 027F20D8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[20]);
|
|
L_027F20DC: ; // 0x27f20dc
|
|
/* 027F20DC */ cpu->r[8] = 0x10110000u;
|
|
/* 027F20E0 */ cpu->r[8] = cpu->r[8] + 0x00000484u;
|
|
/* 027F20E4 */ _t40 = cpu->r[15] + 0x00000004u;
|
|
/* 027F20E4 */ rbrew_write32(cpu->mem, _t40, cpu->r[8]);
|
|
/* 027F20E8 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F20E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F20EC */ _t42 = cpu->r[9] + 0x00000014u;
|
|
/* 027F20EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F20F0 */ cpu->ctr = cpu->r[10];
|
|
/* 027F20F4 */ _t43 = cpu->r[15] + 0x00000000u;
|
|
/* 027F20F4 */ cpu->r[17] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F20F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F20FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F2100 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2100 */ cpu->r[6] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F2104 */ _t45 = cpu->r[6] + 0x00000000u;
|
|
/* 027F2104 */ cpu->r[11] = rbrew_read8(cpu->mem, _t45);
|
|
/* 027F2108 */ cpu->r[18] = 0x00000000u;
|
|
/* 027F210C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[20]);
|
|
/* 027F2110 */ cpu->r[7] = 0x00080000u;
|
|
/* 027F2114 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2114 */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F2114 */ if (_t47) goto L_027F213C; else goto L_027F2118;
|
|
L_027F2118: ; // 0x27f2118
|
|
/* 027F2118 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 027F211C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[7]);
|
|
/* 027F2120 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 027F2124 */ _t48 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F2124 */ _t49 = _t48 & 0x00000001u;
|
|
/* 027F2124 */ if (_t49) goto L_027F2138; else goto L_027F2128;
|
|
L_027F2128: ; // 0x27f2128
|
|
/* 027F2128 */ _t50 = cpu->r[6] + 0x00000000u;
|
|
/* 027F2128 */ cpu->r[0] = rbrew_read8(cpu->mem, _t50);
|
|
/* 027F212C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[20]);
|
|
/* 027F2130 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2130 */ _t52 = _t51 & 0x00000001u;
|
|
/* 027F2130 */ if (_t52) goto L_027F2134; else goto L_027F2118;
|
|
L_027F2134: ; // 0x27f2134
|
|
/* 027F2134 */ goto L_027F213C;
|
|
L_027F2138: ; // 0x27f2138
|
|
/* 027F2138 */ cpu->r[18] = 0x00000000u;
|
|
L_027F213C: ; // 0x27f213c
|
|
/* 027F213C */ _t53 = cpu->r[15] + 0x00000008u;
|
|
/* 027F213C */ cpu->r[4] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F2140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[4]);
|
|
/* 027F2144 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2144 */ _t55 = _t54 & 0x00000001u;
|
|
/* 027F2144 */ if (_t55) goto L_027F214C; else goto L_027F2148;
|
|
L_027F2148: ; // 0x27f2148
|
|
/* 027F2148 */ cpu->r[18] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_027F214C: ; // 0x27f214c
|
|
/* 027F214C */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F214C */ cpu->r[4] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027F2150 */ _t57 = cpu->r[4] + 0x00000014u;
|
|
/* 027F2150 */ cpu->r[5] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F2154 */ cpu->ctr = cpu->r[5];
|
|
/* 027F2158 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F215C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F2160 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2160 */ cpu->r[4] = rbrew_read32(cpu->mem, _t58);
|
|
/* 027F2164 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F2168 */ cpu->r[5] = cpu->r[18];
|
|
/* 027F216C */ cpu->r[3] = cpu->r[17];
|
|
/* 027F2170 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 027F2174 */ _t59 = cpu->r[17] + cpu->r[18];
|
|
/* 027F2174 */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[20]);
|
|
L_027F2178: ; // 0x27f2178
|
|
/* 027F2178 */ cpu->r[6] = 0x10110000u;
|
|
/* 027F217C */ cpu->r[6] = cpu->r[6] + 0x0000049Cu;
|
|
/* 027F2180 */ _t60 = cpu->r[14] + 0x00000004u;
|
|
/* 027F2180 */ rbrew_write32(cpu->mem, _t60, cpu->r[6]);
|
|
L_027F2184: ; // 0x27f2184
|
|
/* 027F2184 */ _t61 = cpu->r[29] + 0x00000064u;
|
|
/* 027F2184 */ rbrew_write32(cpu->mem, _t61, cpu->r[22]);
|
|
/* 027F2188 */ cpu->r[7] = cpu->r[23] + 0xFFFFFFFCu;
|
|
/* 027F218C */ cpu->r[9] = 0x00000003u;
|
|
/* 027F2190 */ _t62 = cpu->r[29] + 0x00000068u;
|
|
/* 027F2190 */ rbrew_write32(cpu->mem, _t62, cpu->r[22]);
|
|
/* 027F2194 */ cpu->r[8] = cpu->r[29] + 0x0000006Cu;
|
|
/* 027F2198 */ cpu->ctr = cpu->r[9];
|
|
/* 027F219C */ _t63 = cpu->r[29] + 0x0000006Cu;
|
|
/* 027F219C */ rbrew_write32(cpu->mem, _t63, cpu->r[22]);
|
|
L_027F21A0: ; // 0x27f21a0
|
|
/* 027F21A0 */ _t64 = cpu->r[7] + 0x00000004u;
|
|
/* 027F21A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F21A4 */ _t65 = cpu->r[8] + 0x00000004u;
|
|
/* 027F21A4 */ rbrew_write32(cpu->mem, _t65, cpu->r[10]);
|
|
/* 027F21A8 */ _t66 = cpu->r[7] + 0x00000008u;
|
|
/* 027F21A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F21AC */ _t67 = cpu->r[8] + 0x00000008u;
|
|
/* 027F21AC */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 027F21B0 */ _t68 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F21B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F21B4 */ _t69 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027F21B4 */ rbrew_write32(cpu->mem, _t69, cpu->r[4]);
|
|
/* 027F21B8 */ _t70 = cpu->r[7] + 0x00000010u;
|
|
/* 027F21B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t70);
|
|
/* 027F21B8 */ cpu->r[7] = _t70;
|
|
/* 027F21BC */ _t71 = cpu->r[8] + 0x00000010u;
|
|
/* 027F21BC */ rbrew_write32(cpu->mem, _t71, cpu->r[5]);
|
|
/* 027F21BC */ cpu->r[8] = _t71;
|
|
/* 027F21C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F21C0 */ _t72 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F21C0 */ _t73 = _t72 >> (0x00000002u & 31u);
|
|
/* 027F21C0 */ _t74 = _t73 & 0x00000001u;
|
|
/* 027F21C0 */ if (_t74) goto L_027F21A0; else goto L_027F21C4;
|
|
L_027F21C4: ; // 0x27f21c4
|
|
/* 027F21C4 */ cpu->r[0] = 0x00000003u;
|
|
/* 027F21C8 */ cpu->r[6] = cpu->r[23] + 0xFFFFFFFCu;
|
|
/* 027F21CC */ cpu->ctr = cpu->r[0];
|
|
/* 027F21D0 */ cpu->r[7] = cpu->r[29] + 0x0000009Cu;
|
|
L_027F21D4: ; // 0x27f21d4
|
|
/* 027F21D4 */ _t75 = cpu->r[6] + 0x00000004u;
|
|
/* 027F21D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 027F21D8 */ _t76 = cpu->r[7] + 0x00000004u;
|
|
/* 027F21D8 */ rbrew_write32(cpu->mem, _t76, cpu->r[10]);
|
|
/* 027F21DC */ _t77 = cpu->r[6] + 0x00000008u;
|
|
/* 027F21DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t77);
|
|
/* 027F21E0 */ _t78 = cpu->r[7] + 0x00000008u;
|
|
/* 027F21E0 */ rbrew_write32(cpu->mem, _t78, cpu->r[12]);
|
|
/* 027F21E4 */ _t79 = cpu->r[6] + 0x0000000Cu;
|
|
/* 027F21E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F21E8 */ _t80 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F21E8 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 027F21EC */ _t81 = cpu->r[6] + 0x00000010u;
|
|
/* 027F21EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t81);
|
|
/* 027F21EC */ cpu->r[6] = _t81;
|
|
/* 027F21F0 */ _t82 = cpu->r[7] + 0x00000010u;
|
|
/* 027F21F0 */ rbrew_write32(cpu->mem, _t82, cpu->r[4]);
|
|
/* 027F21F0 */ cpu->r[7] = _t82;
|
|
/* 027F21F4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F21F4 */ _t83 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F21F4 */ _t84 = _t83 >> (0x00000002u & 31u);
|
|
/* 027F21F4 */ _t85 = _t84 & 0x00000001u;
|
|
/* 027F21F4 */ if (_t85) goto L_027F21D4; else goto L_027F21F8;
|
|
L_027F21F8: ; // 0x27f21f8
|
|
/* 027F21F8 */ cpu->r[5] = cpu->r[29] + 0x000000D0u;
|
|
/* 027F21F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F21FC */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F21FC */ _t87 = _t86 & 0x00000001u;
|
|
/* 027F21FC */ if (_t87) goto L_027F2200; else goto L_027F2208;
|
|
L_027F2200: ; // 0x27f2200
|
|
/* 027F2200 */ cpu->r[3] = 0x00000030u;
|
|
/* 027F2204 */ Gambit_fn_02801A78(cpu);
|
|
L_027F2208: ; // 0x27f2208
|
|
/* 027F2208 */ _t88 = cpu->r[29] + 0x00000100u;
|
|
/* 027F2208 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[31]);
|
|
/* 027F220C */ _t89 = cpu->r[29] + 0x00000104u;
|
|
/* 027F220C */ rbrew_write_f32(cpu->mem, _t89, cpu->f[31]);
|
|
/* 027F2210 */ _t90 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2210 */ cpu->r[8] = rbrew_read32(cpu->mem, _t90);
|
|
/* 027F2214 */ _t91 = cpu->r[29] + 0x00000108u;
|
|
/* 027F2214 */ rbrew_write32(cpu->mem, _t91, cpu->r[8]);
|
|
/* 027F2218 */ _t92 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2218 */ cpu->r[9] = rbrew_read32(cpu->mem, _t92);
|
|
/* 027F221C */ _t93 = cpu->r[29] + 0x0000010Cu;
|
|
/* 027F221C */ rbrew_write32(cpu->mem, _t93, cpu->r[9]);
|
|
/* 027F2220 */ _t94 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2220 */ cpu->r[10] = rbrew_read32(cpu->mem, _t94);
|
|
/* 027F2224 */ _t95 = cpu->r[29] + 0x00000110u;
|
|
/* 027F2224 */ rbrew_write32(cpu->mem, _t95, cpu->r[10]);
|
|
/* 027F2228 */ _t96 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2228 */ cpu->r[11] = rbrew_read32(cpu->mem, _t96);
|
|
/* 027F222C */ _t97 = cpu->r[29] + 0x00000114u;
|
|
/* 027F222C */ rbrew_write32(cpu->mem, _t97, cpu->r[11]);
|
|
/* 027F2230 */ _t98 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2230 */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 027F2234 */ _t99 = cpu->r[29] + 0x00000118u;
|
|
/* 027F2234 */ rbrew_write32(cpu->mem, _t99, cpu->r[12]);
|
|
/* 027F2238 */ _t100 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 027F223C */ _t101 = cpu->r[29] + 0x0000011Cu;
|
|
/* 027F223C */ rbrew_write32(cpu->mem, _t101, cpu->r[0]);
|
|
/* 027F2240 */ _t102 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2240 */ cpu->r[7] = rbrew_read32(cpu->mem, _t102);
|
|
/* 027F2244 */ _t103 = cpu->r[29] + 0x00000120u;
|
|
/* 027F2244 */ rbrew_write32(cpu->mem, _t103, cpu->r[7]);
|
|
/* 027F2248 */ _t104 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2248 */ cpu->r[8] = rbrew_read32(cpu->mem, _t104);
|
|
/* 027F224C */ _t105 = cpu->r[29] + 0x00000124u;
|
|
/* 027F224C */ rbrew_write32(cpu->mem, _t105, cpu->r[8]);
|
|
/* 027F2250 */ _t106 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2250 */ cpu->r[10] = rbrew_read32(cpu->mem, _t106);
|
|
/* 027F2254 */ _t107 = cpu->r[29] + 0x00000128u;
|
|
/* 027F2254 */ rbrew_write32(cpu->mem, _t107, cpu->r[10]);
|
|
/* 027F2258 */ _t108 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2258 */ cpu->r[11] = rbrew_read32(cpu->mem, _t108);
|
|
/* 027F225C */ _t109 = cpu->r[29] + 0x0000012Cu;
|
|
/* 027F225C */ rbrew_write32(cpu->mem, _t109, cpu->r[11]);
|
|
/* 027F2260 */ _t110 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t110);
|
|
/* 027F2264 */ _t111 = cpu->r[29] + 0x00000130u;
|
|
/* 027F2264 */ rbrew_write32(cpu->mem, _t111, cpu->r[12]);
|
|
/* 027F2268 */ _t112 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t112);
|
|
/* 027F226C */ _t113 = cpu->r[29] + 0x00000134u;
|
|
/* 027F226C */ rbrew_write32(cpu->mem, _t113, cpu->r[0]);
|
|
/* 027F2270 */ _t114 = cpu->r[21] + 0x00000000u;
|
|
/* 027F2270 */ cpu->r[4] = rbrew_read32(cpu->mem, _t114);
|
|
/* 027F2274 */ _t115 = cpu->r[29] + 0x00000138u;
|
|
/* 027F2274 */ rbrew_write32(cpu->mem, _t115, cpu->r[4]);
|
|
/* 027F2278 */ _t116 = cpu->r[21] + 0x00000004u;
|
|
/* 027F2278 */ cpu->r[5] = rbrew_read32(cpu->mem, _t116);
|
|
/* 027F227C */ _t117 = cpu->r[29] + 0x0000013Cu;
|
|
/* 027F227C */ rbrew_write32(cpu->mem, _t117, cpu->r[5]);
|
|
/* 027F2280 */ _t118 = cpu->r[21] + 0x00000008u;
|
|
/* 027F2280 */ cpu->r[6] = rbrew_read32(cpu->mem, _t118);
|
|
/* 027F2284 */ _t119 = cpu->r[29] + 0x00000140u;
|
|
/* 027F2284 */ rbrew_write32(cpu->mem, _t119, cpu->r[6]);
|
|
L_027F2288: ; // 0x27f2288
|
|
/* 027F2288 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 027F2288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F228C */ cpu->r[19] = cpu->r[19] + 0x00000144u;
|
|
/* 027F2290 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2290 */ _t121 = _t120 & 0x00000001u;
|
|
/* 027F2290 */ if (_t121) goto L_027F2294; else goto L_027F202C;
|
|
L_027F2294: ; // 0x27f2294
|
|
/* 027F2294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 027F2298 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2298 */ _t123 = _t122 & 0x00000001u;
|
|
/* 027F2298 */ if (_t123) goto L_027F22A4; else goto L_027F229C;
|
|
L_027F229C: ; // 0x27f229c
|
|
/* 027F229C */ _t124 = cpu->r[27] + 0x00000034u;
|
|
/* 027F229C */ rbrew_write32(cpu->mem, _t124, cpu->r[16]);
|
|
/* 027F22A0 */ _t125 = cpu->r[27] + 0x00000030u;
|
|
/* 027F22A0 */ rbrew_write32(cpu->mem, _t125, cpu->r[28]);
|
|
L_027F22A4: ; // 0x27f22a4
|
|
/* 027F22A4 */ cpu->r[6] = 0x00000004u;
|
|
/* 027F22A8 */ cpu->r[5] = 0x00000000u;
|
|
/* 027F22AC */ cpu->r[4] = cpu->r[28];
|
|
/* 027F22B0 */ cpu->r[3] = cpu->r[27] + 0x00000038u;
|
|
/* 027F22B4 */ Gambit_fn_028023CC(cpu);
|
|
/* 027F22B8 */ cpu->r[25] = 0x00000000u;
|
|
/* 027F22BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[28]);
|
|
/* 027F22C0 */ _t126 = cpu->r[27] + 0x0000002Cu;
|
|
/* 027F22C0 */ rbrew_write32(cpu->mem, _t126, cpu->r[28]);
|
|
/* 027F22C4 */ _t127 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F22C4 */ _t128 = _t127 & 0x00000001u;
|
|
/* 027F22C4 */ if (_t128) goto L_027F22C8; else goto L_027F23FC;
|
|
L_027F22C8: ; // 0x27f22c8
|
|
/* 027F22C8 */ _t129 = cpu->r[26] + 0x00007399u;
|
|
/* 027F22C8 */ cpu->r[28] = rbrew_read8(cpu->mem, _t129);
|
|
/* 027F22CC */ cpu->r[24] = 0x00000000u;
|
|
L_027F22D0: ; // 0x27f22d0
|
|
/* 027F22D0 */ _t130 = cpu->r[27] + 0x00000030u;
|
|
/* 027F22D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t130);
|
|
/* 027F22D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[7]);
|
|
/* 027F22D8 */ _t131 = cpu->r[27] + 0x00000034u;
|
|
/* 027F22D8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t131);
|
|
/* 027F22DC */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F22DC */ _t133 = _t132 & 0x00000001u;
|
|
/* 027F22DC */ if (_t133) goto L_027F22E0; else goto L_027F22E4;
|
|
L_027F22E0: ; // 0x27f22e0
|
|
/* 027F22E0 */ cpu->r[29] = cpu->r[29] + cpu->r[24];
|
|
L_027F22E4: ; // 0x27f22e4
|
|
/* 027F22E4 */ _t134 = cpu->r[30] + 0x00000004u;
|
|
/* 027F22E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t134);
|
|
/* 027F22E8 */ _t135 = cpu->r[8] + 0x00000014u;
|
|
/* 027F22E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t135);
|
|
/* 027F22EC */ cpu->ctr = cpu->r[9];
|
|
/* 027F22F0 */ _t136 = cpu->r[29] + 0x00000018u;
|
|
/* 027F22F0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t136);
|
|
/* 027F22F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F22F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F22FC */ _t137 = cpu->r[30] + 0x00000000u;
|
|
/* 027F22FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t137);
|
|
/* 027F2300 */ _t138 = cpu->r[9] + 0x00000000u;
|
|
/* 027F2300 */ cpu->r[10] = rbrew_read8(cpu->mem, _t138);
|
|
/* 027F2304 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F2308 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[28]);
|
|
/* 027F230C */ cpu->r[11] = 0x00080000u;
|
|
/* 027F2310 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2310 */ _t140 = _t139 & 0x00000001u;
|
|
/* 027F2310 */ if (_t140) goto L_027F2338; else goto L_027F2314;
|
|
L_027F2314: ; // 0x27f2314
|
|
/* 027F2314 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 027F2318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 027F231C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 027F2320 */ _t141 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F2320 */ _t142 = _t141 & 0x00000001u;
|
|
/* 027F2320 */ if (_t142) goto L_027F2334; else goto L_027F2324;
|
|
L_027F2324: ; // 0x27f2324
|
|
/* 027F2324 */ _t143 = cpu->r[9] + 0x00000000u;
|
|
/* 027F2324 */ cpu->r[0] = rbrew_read8(cpu->mem, _t143);
|
|
/* 027F2328 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[28]);
|
|
/* 027F232C */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F232C */ _t145 = _t144 & 0x00000001u;
|
|
/* 027F232C */ if (_t145) goto L_027F2330; else goto L_027F2314;
|
|
L_027F2330: ; // 0x27f2330
|
|
/* 027F2330 */ goto L_027F2338;
|
|
L_027F2334: ; // 0x27f2334
|
|
/* 027F2334 */ cpu->r[31] = 0x00000000u;
|
|
L_027F2338: ; // 0x27f2338
|
|
/* 027F2338 */ _t146 = cpu->r[29] + 0x00000020u;
|
|
/* 027F2338 */ cpu->r[5] = rbrew_read32(cpu->mem, _t146);
|
|
/* 027F233C */ _t147 = cpu->r[30] + 0x00000004u;
|
|
/* 027F233C */ cpu->r[12] = rbrew_read32(cpu->mem, _t147);
|
|
/* 027F2340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 027F2344 */ _t148 = cpu->r[12] + 0x00000014u;
|
|
/* 027F2344 */ cpu->r[4] = rbrew_read32(cpu->mem, _t148);
|
|
/* 027F2348 */ _t149 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2348 */ _t150 = _t149 & 0x00000001u;
|
|
/* 027F2348 */ if (_t150) goto L_027F2350; else goto L_027F234C;
|
|
L_027F234C: ; // 0x27f234c
|
|
/* 027F234C */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_027F2350: ; // 0x27f2350
|
|
/* 027F2350 */ cpu->ctr = cpu->r[4];
|
|
/* 027F2354 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F2358 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F235C */ _t151 = cpu->r[30] + 0x00000000u;
|
|
/* 027F235C */ cpu->r[4] = rbrew_read32(cpu->mem, _t151);
|
|
/* 027F2360 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F2364 */ cpu->r[5] = cpu->r[31];
|
|
/* 027F2368 */ cpu->r[3] = cpu->r[26];
|
|
/* 027F236C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 027F2370 */ _t152 = cpu->r[26] + cpu->r[31];
|
|
/* 027F2370 */ rbrew_write8(cpu->mem, _t152, (uint8_t)cpu->r[28]);
|
|
/* 027F2374 */ _t153 = cpu->r[27] + 0x00000008u;
|
|
/* 027F2374 */ cpu->r[3] = rbrew_read32(cpu->mem, _t153);
|
|
/* 027F2378 */ cpu->r[4] = cpu->r[30];
|
|
/* 027F237C */ Gambit_fn_029807A8(cpu);
|
|
/* 027F2380 */ _t154 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2380 */ rbrew_write32(cpu->mem, _t154, cpu->r[3]);
|
|
/* 027F2384 */ _t155 = cpu->r[29] + 0x00000014u;
|
|
/* 027F2384 */ rbrew_write32(cpu->mem, _t155, cpu->r[3]);
|
|
/* 027F2388 */ _t156 = cpu->r[27] + 0x0000002Cu;
|
|
/* 027F2388 */ cpu->r[6] = rbrew_read32(cpu->mem, _t156);
|
|
/* 027F238C */ cpu->r[5] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 027F2390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[5]);
|
|
/* 027F2394 */ _t157 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2394 */ _t158 = _t157 & 0x00000001u;
|
|
/* 027F2394 */ if (_t158) goto L_027F2398; else goto L_027F23BC;
|
|
L_027F2398: ; // 0x27f2398
|
|
/* 027F2398 */ _t159 = cpu->r[27] + 0x00000030u;
|
|
/* 027F2398 */ cpu->r[7] = rbrew_read32(cpu->mem, _t159);
|
|
/* 027F239C */ cpu->r[12] = cpu->r[25] + 0x00000001u;
|
|
/* 027F23A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[7]);
|
|
/* 027F23A4 */ _t160 = cpu->r[27] + 0x00000034u;
|
|
/* 027F23A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t160);
|
|
/* 027F23A8 */ _t161 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F23A8 */ _t162 = _t161 & 0x00000001u;
|
|
/* 027F23A8 */ if (_t162) goto L_027F23AC; else goto L_027F23B4;
|
|
L_027F23AC: ; // 0x27f23ac
|
|
/* 027F23AC */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x00000144u);
|
|
/* 027F23B0 */ cpu->r[4] = cpu->r[4] + cpu->r[8];
|
|
L_027F23B4: ; // 0x27f23b4
|
|
/* 027F23B4 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F23B8 */ Gambit_fn_02802B74(cpu);
|
|
L_027F23BC: ; // 0x27f23bc
|
|
/* 027F23BC */ _t163 = cpu->r[27] + 0x00000038u;
|
|
/* 027F23BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t163);
|
|
/* 027F23C0 */ _t164 = cpu->r[27] + 0x0000003Cu;
|
|
/* 027F23C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t164);
|
|
/* 027F23C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 027F23C8 */ _t165 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F23C8 */ _t166 = _t165 & 0x00000001u;
|
|
/* 027F23C8 */ if (_t166) goto L_027F23CC; else goto L_027F23E4;
|
|
L_027F23CC: ; // 0x27f23cc
|
|
/* 027F23CC */ _t167 = cpu->r[27] + 0x00000040u;
|
|
/* 027F23CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t167);
|
|
/* 027F23D0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F23D4 */ _t168 = cpu->r[10] + cpu->r[11];
|
|
/* 027F23D4 */ rbrew_write32(cpu->mem, _t168, cpu->r[29]);
|
|
/* 027F23D8 */ _t169 = cpu->r[27] + 0x00000038u;
|
|
/* 027F23D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t169);
|
|
/* 027F23DC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F23E0 */ _t170 = cpu->r[27] + 0x00000038u;
|
|
/* 027F23E0 */ rbrew_write32(cpu->mem, _t170, cpu->r[12]);
|
|
L_027F23E4: ; // 0x27f23e4
|
|
/* 027F23E4 */ _t171 = cpu->r[27] + 0x0000002Cu;
|
|
/* 027F23E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t171);
|
|
/* 027F23E8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 027F23EC */ cpu->r[30] = cpu->r[30] + 0x00000008u;
|
|
/* 027F23F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 027F23F4 */ cpu->r[24] = cpu->r[24] + 0x00000144u;
|
|
/* 027F23F8 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F23F8 */ _t173 = _t172 & 0x00000001u;
|
|
/* 027F23F8 */ if (_t173) goto L_027F22D0; else goto L_027F23FC;
|
|
L_027F23FC: ; // 0x27f23fc
|
|
/* 027F23FC */ _t174 = cpu->r[27] + 0x00000034u;
|
|
/* 027F23FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t174);
|
|
/* 027F2400 */ cpu->r[3] = cpu->r[27];
|
|
/* 027F2404 */ _t175 = cpu->r[27] + 0x00000044u;
|
|
/* 027F2404 */ rbrew_write32(cpu->mem, _t175, cpu->r[9]);
|
|
/* 027F2408 */ Gambit_fn_027F1D0C(cpu);
|
|
/* 027F240C */ /* nop */
|
|
/* 027F2410 */ _t176 = cpu->r[1] + 0x00000068u;
|
|
/* 027F2410 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 027F2414 */ _t177 = cpu->r[1] + 0x00000060u;
|
|
/* 027F2414 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t177);
|
|
/* 027F2418 */ _t178 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2418 */ _t179 = _t178 & 0x00000001u;
|
|
/* 027F2418 */ if (_t179) goto L_027F241C; // else: addr-0 trap, fall-through
|
|
L_027F241C: ; // 0x27f241c
|
|
/* 027F241C */ _t180 = cpu->r[1] + 0x00000074u;
|
|
/* 027F241C */ cpu->r[0] = rbrew_read32(cpu->mem, _t180);
|
|
/* 027F2420 */ cpu->lr = cpu->r[0];
|
|
/* 027F2424 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027F2428 */ return;
|
|
}
|
|
|
|
// fn_027F242C @ 0x27f242c
|
|
void Gambit_fn_027F242C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_027F242C: ; // 0x27f242c
|
|
/* 027F242C */ cpu->r[0] = cpu->lr;
|
|
/* 027F2430 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F2430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2430 */ cpu->r[1] = _t0;
|
|
/* 027F2434 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2434 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F2438 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F243C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F243C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F2440 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 027F2440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F2444 */ _t4 = cpu->r[12] + 0x0000007Cu;
|
|
/* 027F2444 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 027F2448 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F244C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 027F2450 */ cpu->r[4] = cpu->r[12] + 0x00000034u;
|
|
/* 027F2454 */ _t5 = cpu->r[12] + 0x0000007Cu;
|
|
/* 027F2454 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 027F2458 */ Gambit_fn_02C69510(cpu);
|
|
/* 027F245C */ _t6 = cpu->r[31] + 0x00000008u;
|
|
/* 027F245C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F2460 */ Gambit_fn_02980378(cpu);
|
|
/* 027F2464 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F2468 */ cpu->lr = cpu->r[0];
|
|
/* 027F246C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F246C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F2470 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F2474 */ return;
|
|
}
|
|
|
|
// fn_027F2430 @ 0x27f2430
|
|
void Gambit_fn_027F2430(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_027F2430: ; // 0x27f2430
|
|
/* 027F2430 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F2430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2430 */ cpu->r[1] = _t0;
|
|
/* 027F2434 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2434 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F2438 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F243C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F243C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F2440 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 027F2440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F2444 */ _t4 = cpu->r[12] + 0x0000007Cu;
|
|
/* 027F2444 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 027F2448 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F244C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 027F2450 */ cpu->r[4] = cpu->r[12] + 0x00000034u;
|
|
/* 027F2454 */ _t5 = cpu->r[12] + 0x0000007Cu;
|
|
/* 027F2454 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 027F2458 */ Gambit_fn_02C69510(cpu);
|
|
/* 027F245C */ _t6 = cpu->r[31] + 0x00000008u;
|
|
/* 027F245C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F2460 */ Gambit_fn_02980378(cpu);
|
|
/* 027F2464 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F2468 */ cpu->lr = cpu->r[0];
|
|
/* 027F246C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F246C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F2470 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F2474 */ return;
|
|
}
|
|
|
|
// fn_027F2478 @ 0x27f2478
|
|
void Gambit_fn_027F2478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F2478: ; // 0x27f2478
|
|
/* 027F2478 */ _t0 = cpu->r[3] + 0x00000084u;
|
|
/* 027F2478 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 027F247C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F2480 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2480 */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F2480 */ if (_t2) goto L_027F248C; else goto L_027F2484;
|
|
L_027F2484: ; // 0x27f2484
|
|
/* 027F2484 */ _t3 = cpu->r[4] + 0x00000064u;
|
|
/* 027F2484 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F2488 */ return;
|
|
L_027F248C: ; // 0x27f248c
|
|
/* 027F248C */ cpu->r[3] = cpu->r[4] + 0x000000D0u;
|
|
/* 027F2490 */ return;
|
|
}
|
|
|
|
// fn_027F2494 @ 0x27f2494
|
|
void Gambit_fn_027F2494(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027F2494: ; // 0x27f2494
|
|
/* 027F2494 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027F2494 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2494 */ cpu->r[1] = _t0;
|
|
/* 027F2498 */ /* nop */
|
|
/* 027F249C */ cpu->r[0] = cpu->lr;
|
|
/* 027F24A0 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F24A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F24A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F24A8 */ _t2 = cpu->r[30] + 0x0000002Cu;
|
|
/* 027F24A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F24AC */ cpu->r[27] = 0x00000000u;
|
|
/* 027F24B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 027F24B4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F24B4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F24B4 */ if (_t4) goto L_027F24B8; else goto L_027F250C;
|
|
L_027F24B8: ; // 0x27f24b8
|
|
/* 027F24B8 */ cpu->r[29] = cpu->r[1] + 0x00000008u;
|
|
/* 027F24BC */ cpu->r[28] = 0x00000000u;
|
|
L_027F24C0: ; // 0x27f24c0
|
|
/* 027F24C0 */ _t5 = cpu->r[30] + 0x00000030u;
|
|
/* 027F24C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F24C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[0]);
|
|
/* 027F24C8 */ _t6 = cpu->r[30] + 0x00000034u;
|
|
/* 027F24C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F24CC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F24CC */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F24CC */ if (_t8) goto L_027F24D0; else goto L_027F24D4;
|
|
L_027F24D0: ; // 0x27f24d0
|
|
/* 027F24D0 */ cpu->r[31] = cpu->r[31] + cpu->r[28];
|
|
L_027F24D4: ; // 0x27f24d4
|
|
/* 027F24D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F24D8 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F24DC */ Gambit_fn_027F2478(cpu);
|
|
/* 027F24E0 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F24E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F24E8 */ Gambit_fn_0200D450(cpu);
|
|
/* 027F24EC */ cpu->r[3] = cpu->r[29];
|
|
/* 027F24F0 */ Gambit_fn_02C69350(cpu);
|
|
/* 027F24F4 */ _t9 = cpu->r[31] + 0x00000100u;
|
|
/* 027F24F4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[1]);
|
|
/* 027F24F8 */ _t10 = cpu->r[30] + 0x0000002Cu;
|
|
/* 027F24F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F24FC */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 027F2500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[11]);
|
|
/* 027F2504 */ cpu->r[28] = cpu->r[28] + 0x00000144u;
|
|
/* 027F2508 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2508 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F2508 */ if (_t12) goto L_027F24C0; else goto L_027F250C;
|
|
L_027F250C: ; // 0x27f250c
|
|
/* 027F250C */ /* nop */
|
|
/* 027F2510 */ _t13 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2510 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F2514 */ cpu->lr = cpu->r[0];
|
|
/* 027F2518 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F251C */ return;
|
|
}
|
|
|
|
// fn_027F2520 @ 0x27f2520
|
|
void Gambit_fn_027F2520(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F2520: ; // 0x27f2520
|
|
/* 027F2520 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F2520 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2520 */ cpu->r[1] = _t0;
|
|
/* 027F2524 */ /* nop */
|
|
/* 027F2528 */ cpu->r[0] = cpu->lr;
|
|
/* 027F252C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 027F252C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F2530 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F2534 */ cpu->r[24] = 0x00000000u;
|
|
/* 027F2538 */ _t2 = cpu->r[29] + 0x0000002Cu;
|
|
/* 027F2538 */ cpu->r[5] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F253C */ cpu->r[4] = 0x00000001u;
|
|
/* 027F2540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[5]);
|
|
/* 027F2544 */ _t3 = cpu->r[29] + 0x00000085u;
|
|
/* 027F2544 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[4]);
|
|
/* 027F2548 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2548 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F2548 */ if (_t5) goto L_027F254C; else goto L_027F2688;
|
|
L_027F254C: ; // 0x27f254c
|
|
/* 027F254C */ cpu->r[28] = 0x00000001u;
|
|
/* 027F2550 */ cpu->r[27] = 0x101D0000u;
|
|
/* 027F2554 */ cpu->r[26] = 0x101D0000u;
|
|
/* 027F2558 */ cpu->r[25] = 0x00000000u;
|
|
L_027F255C: ; // 0x27f255c
|
|
/* 027F255C */ _t6 = cpu->r[29] + 0x00000030u;
|
|
/* 027F255C */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F2560 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[9]);
|
|
/* 027F2564 */ _t7 = cpu->r[29] + 0x00000034u;
|
|
/* 027F2564 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F2568 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2568 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F2568 */ if (_t9) goto L_027F256C; else goto L_027F2570;
|
|
L_027F256C: ; // 0x27f256c
|
|
/* 027F256C */ cpu->r[30] = cpu->r[30] + cpu->r[25];
|
|
L_027F2570: ; // 0x27f2570
|
|
/* 027F2570 */ _t10 = cpu->r[30] + 0x00000014u;
|
|
/* 027F2570 */ cpu->r[31] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t10);
|
|
/* 027F2574 */ _t11 = cpu->r[29] + 0x00000008u;
|
|
/* 027F2574 */ cpu->r[22] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F2578 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F257C */ _t12 = cpu->r[30] + 0x00000016u;
|
|
/* 027F257C */ cpu->r[23] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t12);
|
|
/* 027F2580 */ cpu->r[3] = cpu->r[22];
|
|
/* 027F2584 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 027F2588 */ _t13 = cpu->r[22] + 0x0000001Cu;
|
|
/* 027F2588 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F258C */ cpu->r[8] = 0x00000000u;
|
|
/* 027F2590 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 027F2594 */ _t14 = cpu->r[27] + 0xFFFFE218u;
|
|
/* 027F2594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F2598 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2598 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F2598 */ if (_t16) goto L_027F259C; else goto L_027F25A8;
|
|
L_027F259C: ; // 0x27f259c
|
|
/* 027F259C */ _t17 = cpu->r[22] + 0x00000024u;
|
|
/* 027F259C */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F25A0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F25A4 */ _t18 = cpu->r[11] + cpu->r[12];
|
|
/* 027F25A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
L_027F25A8: ; // 0x27f25a8
|
|
/* 027F25A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F25AC */ _t19 = cpu->r[8] + 0x00000000u;
|
|
/* 027F25AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F25B0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F25B0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F25B0 */ if (_t21) goto L_027F25B4; else goto L_027F25C4;
|
|
L_027F25B4: ; // 0x27f25b4
|
|
/* 027F25B4 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F25B8 */ _t22 = cpu->r[27] + 0xFFFFE218u;
|
|
/* 027F25B8 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 027F25BC */ cpu->r[0] = cpu->r[0] + 0x000004DCu;
|
|
/* 027F25C0 */ _t23 = cpu->r[26] + 0xFFFFEF88u;
|
|
/* 027F25C0 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
L_027F25C4: ; // 0x27f25c4
|
|
/* 027F25C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F25C8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F25C8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F25C8 */ if (_t25) goto L_027F25EC; else goto L_027F25CC;
|
|
L_027F25CC: ; // 0x27f25cc
|
|
/* 027F25CC */ _t26 = cpu->r[31] + 0x00000088u;
|
|
/* 027F25CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F25D0 */ _t27 = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F25D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F25D4 */ cpu->ctr = cpu->r[6];
|
|
/* 027F25D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F25DC */ cpu->r[4] = cpu->r[26] + 0xFFFFEF88u;
|
|
/* 027F25E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F25E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F25E8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F25E8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F25E8 */ if (_t29) goto L_027F25EC; else goto L_027F25F0;
|
|
L_027F25EC: ; // 0x27f25ec
|
|
/* 027F25EC */ cpu->r[31] = 0x00000000u;
|
|
L_027F25F0: ; // 0x27f25f0
|
|
/* 027F25F0 */ _t30 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F25F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F25F4 */ _t31 = cpu->r[7] + 0x00000004u;
|
|
/* 027F25F4 */ cpu->r[8] = rbrew_read16(cpu->mem, _t31);
|
|
/* 027F25F8 */ _t32 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F25F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F25FC */ cpu->r[12] = rbrew_rlwinm(cpu->r[23], 0x00000006u, 0x00000000u, 0x00000019u);
|
|
/* 027F2600 */ cpu->r[8] = cpu->r[8] | 0x00000004u;
|
|
/* 027F2604 */ cpu->r[9] = cpu->r[9] + cpu->r[12];
|
|
/* 027F2608 */ _t33 = cpu->r[7] + 0x00000004u;
|
|
/* 027F2608 */ rbrew_write16(cpu->mem, _t33, (uint16_t)cpu->r[8]);
|
|
/* 027F260C */ cpu->r[10] = cpu->r[9] + 0x00000004u;
|
|
/* 027F2610 */ _t34 = cpu->r[30] + 0x00000068u;
|
|
/* 027F2610 */ rbrew_write32(cpu->mem, _t34, cpu->r[10]);
|
|
/* 027F2614 */ _t35 = cpu->r[7] + 0x00000004u;
|
|
/* 027F2614 */ cpu->r[0] = rbrew_read16(cpu->mem, _t35);
|
|
/* 027F2618 */ _t36 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F2618 */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F261C */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 027F2620 */ cpu->r[12] = cpu->r[10] + cpu->r[12];
|
|
/* 027F2624 */ _t37 = cpu->r[7] + 0x00000004u;
|
|
/* 027F2624 */ rbrew_write16(cpu->mem, _t37, (uint16_t)cpu->r[0]);
|
|
/* 027F2628 */ cpu->r[4] = cpu->r[12] + 0x00000010u;
|
|
/* 027F262C */ _t38 = cpu->r[30] + 0x00000064u;
|
|
/* 027F262C */ rbrew_write32(cpu->mem, _t38, cpu->r[4]);
|
|
/* 027F2630 */ _t39 = cpu->r[7] + 0x00000004u;
|
|
/* 027F2630 */ cpu->r[0] = rbrew_read16(cpu->mem, _t39);
|
|
/* 027F2634 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[23] * (int32_t)0x00000030u);
|
|
/* 027F2638 */ cpu->r[0] = cpu->r[0] | 0x00000010u;
|
|
/* 027F263C */ _t40 = cpu->r[7] + 0x00000010u;
|
|
/* 027F263C */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F2640 */ _t41 = cpu->r[7] + 0x00000004u;
|
|
/* 027F2640 */ rbrew_write16(cpu->mem, _t41, (uint16_t)cpu->r[0]);
|
|
/* 027F2644 */ _t42 = cpu->r[30] + 0x00000064u;
|
|
/* 027F2644 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F2648 */ cpu->r[0] = cpu->r[11] + cpu->r[6];
|
|
/* 027F264C */ cpu->r[4] = cpu->r[30] + 0x000000D0u;
|
|
/* 027F2650 */ _t43 = cpu->r[30] + 0x0000006Cu;
|
|
/* 027F2650 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 027F2654 */ Gambit_fn_02C69510(cpu);
|
|
/* 027F2658 */ _t44 = cpu->r[30] + 0x0000006Cu;
|
|
/* 027F2658 */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F265C */ cpu->r[3] = cpu->r[30] + 0x00000108u;
|
|
/* 027F2660 */ cpu->r[5] = 0x00000003u;
|
|
/* 027F2664 */ Gambit_fn_0200FE00(cpu);
|
|
/* 027F2668 */ _t45 = cpu->r[30] + 0x0000006Cu;
|
|
/* 027F2668 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F266C */ cpu->r[4] = cpu->r[30] + 0x000000A0u;
|
|
/* 027F2670 */ Gambit_fn_02C69510(cpu);
|
|
/* 027F2674 */ _t46 = cpu->r[29] + 0x0000002Cu;
|
|
/* 027F2674 */ cpu->r[6] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F2678 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 027F267C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[6]);
|
|
/* 027F2680 */ cpu->r[25] = cpu->r[25] + 0x00000144u;
|
|
/* 027F2684 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2684 */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F2684 */ if (_t48) goto L_027F255C; else goto L_027F2688;
|
|
L_027F2688: ; // 0x27f2688
|
|
/* 027F2688 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F268C */ Gambit_fn_027F2494(cpu);
|
|
/* 027F2690 */ /* nop */
|
|
/* 027F2694 */ _t49 = cpu->r[1] + 0x00000034u;
|
|
/* 027F2694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F2698 */ cpu->lr = cpu->r[0];
|
|
/* 027F269C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F26A0 */ return;
|
|
}
|
|
|
|
// fn_027F26A4 @ 0x27f26a4
|
|
void Gambit_fn_027F26A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F26A4: ; // 0x27f26a4
|
|
/* 027F26A4 */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 027F26A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F26A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F26AC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F26AC */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F26AC */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F26AC */ goto L_027F26B0;
|
|
L_027F26B0: ; // 0x27f26b0
|
|
/* 027F26B0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F26B4 */ _t3 = cpu->r[12] + 0x00006338u;
|
|
/* 027F26B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027F26B4 */ cpu->r[12] = _t3;
|
|
/* 027F26B8 */ _t4 = cpu->r[12] + 0x00000008u;
|
|
/* 027F26B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027F26BC */ _t5 = cpu->r[12] + 0x00000004u;
|
|
/* 027F26BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
L_027F26C0: ; // 0x27f26c0
|
|
/* 027F26C0 */ _t6 = cpu->r[11] + 0x00000004u;
|
|
/* 027F26C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F26C4 */ _t7 = cpu->r[11] + 0x00000114u;
|
|
/* 027F26C4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 027F26C8 */ cpu->r[0] = cpu->r[12];
|
|
/* 027F26C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F26CC */ _t8 = cpu->r[11] + 0x00000118u;
|
|
/* 027F26CC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 027F26D0 */ _t9 = cpu->r[11] + 0x00000130u;
|
|
/* 027F26D0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 027F26D4 */ _t10 = cpu->r[11] + 0x0000011Cu;
|
|
/* 027F26D4 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[12]);
|
|
/* 027F26D8 */ _t11 = cpu->r[11] + 0x0000012Cu;
|
|
/* 027F26D8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 027F26DC */ _t12 = cpu->r[11] + 0x00000134u;
|
|
/* 027F26DC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 027F26E0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F26E0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F26E0 */ if (_t14) goto L_027F26E8; else goto L_027F26E4;
|
|
L_027F26E4: ; // 0x27f26e4
|
|
/* 027F26E4 */ _t15 = cpu->r[12] + 0x00000010u;
|
|
/* 027F26E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
L_027F26E8: ; // 0x27f26e8
|
|
/* 027F26E8 */ cpu->r[11] = cpu->r[0];
|
|
/* 027F26E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F26EC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F26EC */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F26EC */ if (_t17) goto L_027F26F0; else goto L_027F26C0;
|
|
L_027F26F0: ; // 0x27f26f0
|
|
/* 027F26F0 */ return;
|
|
}
|
|
|
|
// fn_027F26F4 @ 0x27f26f4
|
|
void Gambit_fn_027F26F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F26F4: ; // 0x27f26f4
|
|
/* 027F26F4 */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 027F26F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F26F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F26FC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F26FC */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F26FC */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F26FC */ goto L_027F2700;
|
|
L_027F2700: ; // 0x27f2700
|
|
/* 027F2700 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F2704 */ _t3 = cpu->r[12] + 0x00006338u;
|
|
/* 027F2704 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 027F2704 */ cpu->r[12] = _t3;
|
|
/* 027F2708 */ _t4 = cpu->r[12] + 0x00000008u;
|
|
/* 027F2708 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027F270C */ _t5 = cpu->r[12] + 0x00000004u;
|
|
/* 027F270C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
L_027F2710: ; // 0x27f2710
|
|
/* 027F2710 */ _t6 = cpu->r[11] + 0x00000004u;
|
|
/* 027F2710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F2714 */ _t7 = cpu->r[11] + 0x00000120u;
|
|
/* 027F2714 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 027F2718 */ cpu->r[0] = cpu->r[12];
|
|
/* 027F2718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F271C */ _t8 = cpu->r[11] + 0x00000124u;
|
|
/* 027F271C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 027F2720 */ _t9 = cpu->r[11] + 0x0000013Cu;
|
|
/* 027F2720 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 027F2724 */ _t10 = cpu->r[11] + 0x00000128u;
|
|
/* 027F2724 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[12]);
|
|
/* 027F2728 */ _t11 = cpu->r[11] + 0x00000138u;
|
|
/* 027F2728 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 027F272C */ _t12 = cpu->r[11] + 0x00000140u;
|
|
/* 027F272C */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 027F2730 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2730 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F2730 */ if (_t14) goto L_027F2738; else goto L_027F2734;
|
|
L_027F2734: ; // 0x27f2734
|
|
/* 027F2734 */ _t15 = cpu->r[12] + 0x00000010u;
|
|
/* 027F2734 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
L_027F2738: ; // 0x27f2738
|
|
/* 027F2738 */ cpu->r[11] = cpu->r[0];
|
|
/* 027F2738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F273C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F273C */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F273C */ if (_t17) goto L_027F2740; else goto L_027F2710;
|
|
L_027F2740: ; // 0x27f2740
|
|
/* 027F2740 */ return;
|
|
}
|
|
|
|
// fn_027F2744 @ 0x27f2744
|
|
void Gambit_fn_027F2744(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F2744: ; // 0x27f2744
|
|
/* 027F2744 */ cpu->r[0] = cpu->lr;
|
|
/* 027F2748 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F2748 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F274C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F274C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F274C */ cpu->r[1] = _t1;
|
|
/* 027F2750 */ Gambit_fn_027F26A4(cpu);
|
|
/* 027F2754 */ Gambit_fn_027F26F4(cpu);
|
|
/* 027F2758 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F275C */ cpu->lr = cpu->r[0];
|
|
/* 027F2760 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2764 */ return;
|
|
}
|
|
|
|
// fn_027F274C @ 0x27f274c
|
|
void Gambit_fn_027F274C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F274C: ; // 0x27f274c
|
|
/* 027F274C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F274C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F274C */ cpu->r[1] = _t0;
|
|
/* 027F2750 */ Gambit_fn_027F26A4(cpu);
|
|
/* 027F2754 */ Gambit_fn_027F26F4(cpu);
|
|
/* 027F2758 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F275C */ cpu->lr = cpu->r[0];
|
|
/* 027F2760 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2764 */ return;
|
|
}
|
|
|
|
// fn_027F2790 @ 0x27f2790
|
|
void Gambit_fn_027F2790(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_027F2790: ; // 0x27f2790
|
|
/* 027F2790 */ cpu->r[0] = cpu->lr;
|
|
/* 027F2794 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F2794 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2794 */ cpu->r[1] = _t0;
|
|
/* 027F2798 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2798 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F279C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027F279C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F27A0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F27A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F27A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F27A8 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F27A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F27AC */ _t5 = cpu->r[30] + 0x00000044u;
|
|
/* 027F27AC */ cpu->r[29] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F27B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F27B4 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F27B8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F27B8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F27B8 */ if (_t7) goto L_027F27E4; else goto L_027F27BC;
|
|
L_027F27BC: ; // 0x27f27bc
|
|
/* 027F27BC */ cpu->r[3] = cpu->r[29] + 0x00000108u;
|
|
/* 027F27C0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F27C4 */ Gambit_fn_02C69328(cpu);
|
|
/* 027F27C8 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 027F27C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F27CC */ cpu->r[0] = cpu->r[12];
|
|
/* 027F27CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F27D0 */ _t9 = cpu->r[29] + 0x00000104u;
|
|
/* 027F27D0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[1]);
|
|
/* 027F27D4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F27D4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F27D4 */ if (_t11) goto L_027F27DC; else goto L_027F27D8;
|
|
L_027F27D8: ; // 0x27f27d8
|
|
/* 027F27D8 */ _t12 = cpu->r[12] + 0x00000010u;
|
|
/* 027F27D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
L_027F27DC: ; // 0x27f27dc
|
|
/* 027F27DC */ cpu->r[29] = cpu->r[0];
|
|
/* 027F27DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F27E0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F27E0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F27E0 */ if (_t14) goto L_027F27E4; else goto L_027F27BC;
|
|
L_027F27E4: ; // 0x27f27e4
|
|
/* 027F27E4 */ cpu->r[4] = 0x027F0000u;
|
|
/* 027F27E8 */ cpu->r[3] = cpu->r[30] + 0x00000038u;
|
|
/* 027F27EC */ cpu->r[4] = cpu->r[4] + 0x00002768u;
|
|
/* 027F27F0 */ Gambit_fn_02802640(cpu);
|
|
/* 027F27F4 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F27F8 */ _t15 = cpu->r[30] + 0x00000080u;
|
|
/* 027F27F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027F27FC */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F27FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F2800 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F2804 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2804 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F2808 */ cpu->lr = cpu->r[0];
|
|
/* 027F280C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027F280C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F2810 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F2814 */ return;
|
|
}
|
|
|
|
// fn_027F2794 @ 0x27f2794
|
|
void Gambit_fn_027F2794(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_027F2794: ; // 0x27f2794
|
|
/* 027F2794 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F2794 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2794 */ cpu->r[1] = _t0;
|
|
/* 027F2798 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2798 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F279C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027F279C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F27A0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F27A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F27A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F27A8 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F27A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F27AC */ _t5 = cpu->r[30] + 0x00000044u;
|
|
/* 027F27AC */ cpu->r[29] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F27B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F27B4 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F27B8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F27B8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F27B8 */ if (_t7) goto L_027F27E4; else goto L_027F27BC;
|
|
L_027F27BC: ; // 0x27f27bc
|
|
/* 027F27BC */ cpu->r[3] = cpu->r[29] + 0x00000108u;
|
|
/* 027F27C0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F27C4 */ Gambit_fn_02C69328(cpu);
|
|
/* 027F27C8 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 027F27C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F27CC */ cpu->r[0] = cpu->r[12];
|
|
/* 027F27CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F27D0 */ _t9 = cpu->r[29] + 0x00000104u;
|
|
/* 027F27D0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[1]);
|
|
/* 027F27D4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F27D4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F27D4 */ if (_t11) goto L_027F27DC; else goto L_027F27D8;
|
|
L_027F27D8: ; // 0x27f27d8
|
|
/* 027F27D8 */ _t12 = cpu->r[12] + 0x00000010u;
|
|
/* 027F27D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
L_027F27DC: ; // 0x27f27dc
|
|
/* 027F27DC */ cpu->r[29] = cpu->r[0];
|
|
/* 027F27DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F27E0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F27E0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F27E0 */ if (_t14) goto L_027F27E4; else goto L_027F27BC;
|
|
L_027F27E4: ; // 0x27f27e4
|
|
/* 027F27E4 */ cpu->r[4] = 0x027F0000u;
|
|
/* 027F27E8 */ cpu->r[3] = cpu->r[30] + 0x00000038u;
|
|
/* 027F27EC */ cpu->r[4] = cpu->r[4] + 0x00002768u;
|
|
/* 027F27F0 */ Gambit_fn_02802640(cpu);
|
|
/* 027F27F4 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F27F8 */ _t15 = cpu->r[30] + 0x00000080u;
|
|
/* 027F27F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027F27FC */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F27FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F2800 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F2804 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2804 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F2808 */ cpu->lr = cpu->r[0];
|
|
/* 027F280C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027F280C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F2810 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F2814 */ return;
|
|
}
|
|
|
|
// fn_027F2818 @ 0x27f2818
|
|
void Gambit_fn_027F2818(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027F2818: ; // 0x27f2818
|
|
/* 027F2818 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 027F2818 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F281C */ _t1 = cpu->r[3] + 0x00000038u;
|
|
/* 027F281C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F2820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[12]);
|
|
/* 027F2824 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2824 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F2824 */ if (_t3) goto L_027F2828; else goto L_027F2858;
|
|
L_027F2828: ; // 0x27f2828
|
|
/* 027F2828 */ _t4 = cpu->r[3] + 0x00000080u;
|
|
/* 027F2828 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F282C */ _t5 = cpu->r[3] + 0x00000038u;
|
|
/* 027F282C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F2830 */ cpu->r[12] = cpu->r[11] + 0x00000001u;
|
|
/* 027F2834 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F2838 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 027F283C */ _t6 = cpu->r[3] + 0x00000080u;
|
|
/* 027F283C */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 027F2840 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2840 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F2840 */ if (_t8) goto L_027F2844; else goto L_027F2850;
|
|
L_027F2844: ; // 0x27f2844
|
|
/* 027F2844 */ _t9 = cpu->r[3] + 0x00000040u;
|
|
/* 027F2844 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F2848 */ cpu->r[9] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F284C */ _t10 = cpu->r[9] + cpu->r[10];
|
|
/* 027F284C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
L_027F2850: ; // 0x27f2850
|
|
/* 027F2850 */ cpu->r[3] = cpu->r[0];
|
|
/* 027F2854 */ return;
|
|
L_027F2858: ; // 0x27f2858
|
|
/* 027F2858 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F285C */ return;
|
|
}
|
|
|
|
// fn_027F2860 @ 0x27f2860
|
|
void Gambit_fn_027F2860(CPUState* cpu) {
|
|
uint32_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_027F2860: ; // 0x27f2860
|
|
/* 027F2860 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 027F2860 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2860 */ cpu->r[1] = _t0;
|
|
/* 027F2864 */ /* nop */
|
|
/* 027F2868 */ cpu->r[30] = cpu->r[5];
|
|
/* 027F286C */ cpu->r[28] = cpu->r[3];
|
|
/* 027F2870 */ cpu->r[3] = cpu->r[30] + 0x00000034u;
|
|
/* 027F2874 */ cpu->r[0] = cpu->lr;
|
|
/* 027F2878 */ _t1 = cpu->r[1] + 0x00000064u;
|
|
/* 027F2878 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F287C */ cpu->r[29] = cpu->r[4];
|
|
/* 027F2880 */ Gambit_fn_02C69510(cpu);
|
|
/* 027F2884 */ _t2 = cpu->r[28] + 0x0000007Cu;
|
|
/* 027F2884 */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F2888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F288C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F288C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F288C */ if (_t4) goto L_027F2924; else goto L_027F2890;
|
|
L_027F2890: ; // 0x27f2890
|
|
/* 027F2890 */ _t5 = cpu->r[28] + 0x00000078u;
|
|
/* 027F2890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F2894 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F2898 */ cpu->r[31] = cpu->r[10];
|
|
/* 027F289C */ cpu->r[12] = cpu->r[10] + cpu->r[11];
|
|
/* 027F28A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 027F28A4 */ cpu->r[27] = cpu->r[1] + 0x00000014u;
|
|
/* 027F28A8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F28A8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F28A8 */ if (_t7) goto L_027F2924; else goto L_027F28AC;
|
|
L_027F28AC: ; // 0x27f28ac
|
|
/* 027F28AC */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 027F28AC */ cpu->r[26] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 027F28B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F28B4 */ cpu->r[4] = cpu->r[26];
|
|
/* 027F28B8 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 027F28BC */ _t9 = cpu->r[30] + 0x0000001Cu;
|
|
/* 027F28BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F28C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 027F28C4 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F28C8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F28C8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F28C8 */ if (_t11) goto L_027F28CC; else goto L_027F28D8;
|
|
L_027F28CC: ; // 0x27f28cc
|
|
/* 027F28CC */ _t12 = cpu->r[30] + 0x00000024u;
|
|
/* 027F28CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F28D0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[26], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F28D4 */ _t13 = cpu->r[7] + cpu->r[8];
|
|
/* 027F28D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
L_027F28D8: ; // 0x27f28d8
|
|
/* 027F28D8 */ _t14 = cpu->r[6] + 0x00000000u;
|
|
/* 027F28D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F28DC */ _t15 = cpu->r[3] + 0x00000088u;
|
|
/* 027F28DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F28E0 */ _t16 = cpu->r[9] + 0x00000064u;
|
|
/* 027F28E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F28E4 */ cpu->ctr = cpu->r[11];
|
|
/* 027F28E8 */ _t17 = cpu->r[31] + 0x00000002u;
|
|
/* 027F28E8 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t17);
|
|
/* 027F28EC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027F28F0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F28F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F28F8 */ cpu->r[5] = cpu->r[29];
|
|
/* 027F28FC */ cpu->r[4] = cpu->r[27];
|
|
/* 027F2900 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F2904 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2908 */ _t18 = cpu->r[28] + 0x00000078u;
|
|
/* 027F2908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F290C */ _t19 = cpu->r[28] + 0x0000007Cu;
|
|
/* 027F290C */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F2910 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F2914 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 027F2918 */ cpu->r[12] = cpu->r[10] + cpu->r[11];
|
|
/* 027F291C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 027F2920 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2920 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F2920 */ if (_t21) goto L_027F2924; else goto L_027F28AC;
|
|
L_027F2924: ; // 0x27f2924
|
|
/* 027F2924 */ /* nop */
|
|
/* 027F2928 */ _t22 = cpu->r[1] + 0x00000064u;
|
|
/* 027F2928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F292C */ cpu->lr = cpu->r[0];
|
|
/* 027F2930 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 027F2934 */ return;
|
|
}
|
|
|
|
// fn_027F2938 @ 0x27f2938
|
|
void Gambit_fn_027F2938(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F2938: ; // 0x27f2938
|
|
/* 027F2938 */ cpu->r[0] = cpu->lr;
|
|
/* 027F293C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F293C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F293C */ cpu->r[1] = _t0;
|
|
/* 027F2940 */ cpu->r[5] = cpu->r[4];
|
|
/* 027F2944 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2944 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F2948 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F294C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F2950 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2950 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F2954 */ Gambit_fn_027F2860(cpu);
|
|
/* 027F2958 */ _t3 = cpu->r[31] + 0x00000044u;
|
|
/* 027F2958 */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F295C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F2960 */ Gambit_fn_027F2478(cpu);
|
|
/* 027F2964 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F2968 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F296C */ cpu->r[5] = cpu->r[31] + 0x00000048u;
|
|
/* 027F2970 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2974 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F2978 */ cpu->lr = cpu->r[0];
|
|
/* 027F297C */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F297C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F2980 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F2984 */ return;
|
|
}
|
|
|
|
// fn_027F293C @ 0x27f293c
|
|
void Gambit_fn_027F293C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F293C: ; // 0x27f293c
|
|
/* 027F293C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F293C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F293C */ cpu->r[1] = _t0;
|
|
/* 027F2940 */ cpu->r[5] = cpu->r[4];
|
|
/* 027F2944 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2944 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F2948 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F294C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F2950 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2950 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F2954 */ Gambit_fn_027F2860(cpu);
|
|
/* 027F2958 */ _t3 = cpu->r[31] + 0x00000044u;
|
|
/* 027F2958 */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F295C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F2960 */ Gambit_fn_027F2478(cpu);
|
|
/* 027F2964 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F2968 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F296C */ cpu->r[5] = cpu->r[31] + 0x00000048u;
|
|
/* 027F2970 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2974 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F2978 */ cpu->lr = cpu->r[0];
|
|
/* 027F297C */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F297C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F2980 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F2984 */ return;
|
|
}
|
|
|
|
// fn_027F2988 @ 0x27f2988
|
|
void Gambit_fn_027F2988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_027F2988: ; // 0x27f2988
|
|
/* 027F2988 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F2988 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2988 */ cpu->r[1] = _t0;
|
|
/* 027F298C */ _t1 = cpu->r[3] + 0x00000044u;
|
|
/* 027F298C */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F2990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F2994 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2994 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F2994 */ if (_t3) goto L_027F29DC; else goto L_027F2998;
|
|
L_027F2998: ; // 0x27f2998
|
|
/* 027F2998 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F299C */ _t4 = cpu->r[10] + 0x000004FCu;
|
|
/* 027F299C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
L_027F29A0: ; // 0x27f29a0
|
|
/* 027F29A0 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F29A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027F29A4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F29A4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 027F29A8 */ cpu->f[12] = -cpu->f[13];
|
|
/* 027F29AC */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 027F29AC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 027F29B0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F29B0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[12]);
|
|
/* 027F29B4 */ /* nop */
|
|
/* 027F29B8 */ /* nop */
|
|
/* 027F29BC */ _t9 = cpu->r[11] + 0x00000004u;
|
|
/* 027F29BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F29C0 */ /* nop */
|
|
/* 027F29C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F29C8 */ /* nop */
|
|
/* 027F29CC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F29CC */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F29CC */ if (_t11) goto L_027F29D4; else goto L_027F29D0;
|
|
L_027F29D0: ; // 0x27f29d0
|
|
/* 027F29D0 */ _t12 = cpu->r[12] + 0x00000010u;
|
|
/* 027F29D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
L_027F29D4: ; // 0x27f29d4
|
|
/* 027F29D4 */ cpu->r[11] = cpu->r[12];
|
|
/* 027F29D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F29D8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F29D8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F29D8 */ if (_t14) goto L_027F29DC; else goto L_027F29A0;
|
|
L_027F29DC: ; // 0x27f29dc
|
|
/* 027F29DC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F29E0 */ return;
|
|
}
|
|
|
|
// fn_027F29E4 @ 0x27f29e4
|
|
void Gambit_fn_027F29E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027F29E4: ; // 0x27f29e4
|
|
/* 027F29E4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F29E8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F29E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F29EC */ cpu->r[10] = cpu->r[4];
|
|
/* 027F29F0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F29F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F29F0 */ cpu->r[1] = _t1;
|
|
/* 027F29F4 */ _t2 = cpu->r[3] + 0x00000044u;
|
|
/* 027F29F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F29F8 */ cpu->r[4] = cpu->r[5];
|
|
/* 027F29FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F2A00 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2A00 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F2A00 */ if (_t4) goto L_027F2A04; else goto L_027F2A20;
|
|
L_027F2A04: ; // 0x27f2a04
|
|
/* 027F2A04 */ cpu->r[3] = cpu->r[3] + 0x00000048u;
|
|
/* 027F2A08 */ cpu->r[4] = cpu->r[10];
|
|
/* 027F2A0C */ Gambit_fn_02C69510(cpu);
|
|
/* 027F2A10 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2A10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F2A14 */ cpu->lr = cpu->r[0];
|
|
/* 027F2A18 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A1C */ return;
|
|
L_027F2A20: ; // 0x27f2a20
|
|
/* 027F2A20 */ _t6 = cpu->r[4] + 0x00000000u;
|
|
/* 027F2A20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F2A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F2A28 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2A28 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F2A28 */ if (_t8) goto L_027F2A30; else goto L_027F2A2C;
|
|
L_027F2A2C: ; // 0x27f2a2c
|
|
/* 027F2A2C */ _t9 = cpu->r[12] + 0x00000010u;
|
|
/* 027F2A2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
L_027F2A30: ; // 0x27f2a30
|
|
/* 027F2A30 */ Gambit_fn_027F2478(cpu);
|
|
/* 027F2A34 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F2A38 */ cpu->r[3] = cpu->r[12] + 0x000000A0u;
|
|
/* 027F2A3C */ cpu->r[5] = cpu->r[10];
|
|
/* 027F2A40 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2A44 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F2A48 */ cpu->lr = cpu->r[0];
|
|
/* 027F2A4C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A50 */ return;
|
|
}
|
|
|
|
// fn_027F29F0 @ 0x27f29f0
|
|
void Gambit_fn_027F29F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027F29F0: ; // 0x27f29f0
|
|
/* 027F29F0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F29F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F29F0 */ cpu->r[1] = _t0;
|
|
/* 027F29F4 */ _t1 = cpu->r[3] + 0x00000044u;
|
|
/* 027F29F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F29F8 */ cpu->r[4] = cpu->r[5];
|
|
/* 027F29FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F2A00 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2A00 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F2A00 */ if (_t3) goto L_027F2A04; else goto L_027F2A20;
|
|
L_027F2A04: ; // 0x27f2a04
|
|
/* 027F2A04 */ cpu->r[3] = cpu->r[3] + 0x00000048u;
|
|
/* 027F2A08 */ cpu->r[4] = cpu->r[10];
|
|
/* 027F2A0C */ Gambit_fn_02C69510(cpu);
|
|
/* 027F2A10 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2A10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F2A14 */ cpu->lr = cpu->r[0];
|
|
/* 027F2A18 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A1C */ return;
|
|
L_027F2A20: ; // 0x27f2a20
|
|
/* 027F2A20 */ _t5 = cpu->r[4] + 0x00000000u;
|
|
/* 027F2A20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F2A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F2A28 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2A28 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F2A28 */ if (_t7) goto L_027F2A30; else goto L_027F2A2C;
|
|
L_027F2A2C: ; // 0x27f2a2c
|
|
/* 027F2A2C */ _t8 = cpu->r[12] + 0x00000010u;
|
|
/* 027F2A2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
L_027F2A30: ; // 0x27f2a30
|
|
/* 027F2A30 */ Gambit_fn_027F2478(cpu);
|
|
/* 027F2A34 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F2A38 */ cpu->r[3] = cpu->r[12] + 0x000000A0u;
|
|
/* 027F2A3C */ cpu->r[5] = cpu->r[10];
|
|
/* 027F2A40 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2A44 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F2A48 */ cpu->lr = cpu->r[0];
|
|
/* 027F2A4C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A50 */ return;
|
|
}
|
|
|
|
// fn_027F2A54 @ 0x27f2a54
|
|
void Gambit_fn_027F2A54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F2A54: ; // 0x27f2a54
|
|
/* 027F2A54 */ cpu->r[0] = cpu->lr;
|
|
/* 027F2A58 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F2A58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2A58 */ cpu->r[1] = _t0;
|
|
/* 027F2A5C */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2A5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F2A60 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F2A64 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A68 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2A68 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F2A6C */ Gambit_fn_027F29E4(cpu);
|
|
/* 027F2A70 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F2A74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A78 */ Gambit_fn_0200D450(cpu);
|
|
/* 027F2A7C */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F2A80 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2A80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F2A84 */ cpu->lr = cpu->r[0];
|
|
/* 027F2A88 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F2A8C */ return;
|
|
}
|
|
|
|
// fn_027F2A58 @ 0x27f2a58
|
|
void Gambit_fn_027F2A58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F2A58: ; // 0x27f2a58
|
|
/* 027F2A58 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F2A58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2A58 */ cpu->r[1] = _t0;
|
|
/* 027F2A5C */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2A5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F2A60 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F2A64 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A68 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2A68 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F2A6C */ Gambit_fn_027F29E4(cpu);
|
|
/* 027F2A70 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F2A74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A78 */ Gambit_fn_0200D450(cpu);
|
|
/* 027F2A7C */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F2A80 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2A80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F2A84 */ cpu->lr = cpu->r[0];
|
|
/* 027F2A88 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F2A8C */ return;
|
|
}
|
|
|
|
// fn_027F2A90 @ 0x27f2a90
|
|
void Gambit_fn_027F2A90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_027F2A90: ; // 0x27f2a90
|
|
/* 027F2A90 */ cpu->r[0] = cpu->lr;
|
|
/* 027F2A94 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F2A94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2A94 */ cpu->r[1] = _t0;
|
|
/* 027F2A98 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2A98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F2A9C */ cpu->r[31] = cpu->r[4];
|
|
/* 027F2AA0 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2AA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F2AA4 */ _t3 = cpu->r[5] + 0x00000004u;
|
|
/* 027F2AA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F2AA8 */ cpu->r[12] = cpu->r[3];
|
|
/* 027F2AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F2AB0 */ _t4 = cpu->r[12] + 0x00000044u;
|
|
/* 027F2AB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F2AB4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2AB4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F2AB4 */ if (_t6) goto L_027F2ABC; else goto L_027F2AB8;
|
|
L_027F2AB8: ; // 0x27f2ab8
|
|
/* 027F2AB8 */ _t7 = cpu->r[4] + 0x00000010u;
|
|
/* 027F2AB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
L_027F2ABC: ; // 0x27f2abc
|
|
/* 027F2ABC */ cpu->r[3] = cpu->r[12];
|
|
/* 027F2AC0 */ Gambit_fn_027F2478(cpu);
|
|
/* 027F2AC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[11]);
|
|
/* 027F2AC8 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F2ACC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2ACC */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F2ACC */ if (_t9) goto L_027F2AD0; else goto L_027F2AEC;
|
|
L_027F2AD0: ; // 0x27f2ad0
|
|
/* 027F2AD0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2AD4 */ cpu->r[3] = cpu->r[12] + 0x00000048u;
|
|
/* 027F2AD8 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2ADC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F2AE0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2AE4 */ Gambit_fn_0200D450(cpu);
|
|
/* 027F2AE8 */ goto L_027F2B04;
|
|
L_027F2AEC: ; // 0x27f2aec
|
|
/* 027F2AEC */ cpu->r[3] = cpu->r[5] + 0x000000A0u;
|
|
/* 027F2AF0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2AF4 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2AF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F2AFC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2B00 */ Gambit_fn_0200D450(cpu);
|
|
L_027F2B04: ; // 0x27f2b04
|
|
/* 027F2B04 */ _t10 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2B04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F2B08 */ _t11 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2B08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F2B0C */ cpu->lr = cpu->r[0];
|
|
/* 027F2B10 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F2B14 */ return;
|
|
}
|
|
|
|
// fn_027F2A94 @ 0x27f2a94
|
|
void Gambit_fn_027F2A94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_027F2A94: ; // 0x27f2a94
|
|
/* 027F2A94 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F2A94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2A94 */ cpu->r[1] = _t0;
|
|
/* 027F2A98 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2A98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F2A9C */ cpu->r[31] = cpu->r[4];
|
|
/* 027F2AA0 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2AA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F2AA4 */ _t3 = cpu->r[5] + 0x00000004u;
|
|
/* 027F2AA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F2AA8 */ cpu->r[12] = cpu->r[3];
|
|
/* 027F2AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F2AB0 */ _t4 = cpu->r[12] + 0x00000044u;
|
|
/* 027F2AB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F2AB4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2AB4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F2AB4 */ if (_t6) goto L_027F2ABC; else goto L_027F2AB8;
|
|
L_027F2AB8: ; // 0x27f2ab8
|
|
/* 027F2AB8 */ _t7 = cpu->r[4] + 0x00000010u;
|
|
/* 027F2AB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
L_027F2ABC: ; // 0x27f2abc
|
|
/* 027F2ABC */ cpu->r[3] = cpu->r[12];
|
|
/* 027F2AC0 */ Gambit_fn_027F2478(cpu);
|
|
/* 027F2AC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[11]);
|
|
/* 027F2AC8 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F2ACC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2ACC */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F2ACC */ if (_t9) goto L_027F2AD0; else goto L_027F2AEC;
|
|
L_027F2AD0: ; // 0x27f2ad0
|
|
/* 027F2AD0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2AD4 */ cpu->r[3] = cpu->r[12] + 0x00000048u;
|
|
/* 027F2AD8 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2ADC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F2AE0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2AE4 */ Gambit_fn_0200D450(cpu);
|
|
/* 027F2AE8 */ goto L_027F2B04;
|
|
L_027F2AEC: ; // 0x27f2aec
|
|
/* 027F2AEC */ cpu->r[3] = cpu->r[5] + 0x000000A0u;
|
|
/* 027F2AF0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2AF4 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2AF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F2AFC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2B00 */ Gambit_fn_0200D450(cpu);
|
|
L_027F2B04: ; // 0x27f2b04
|
|
/* 027F2B04 */ _t10 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2B04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F2B08 */ _t11 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2B08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F2B0C */ cpu->lr = cpu->r[0];
|
|
/* 027F2B10 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F2B14 */ return;
|
|
}
|
|
|
|
// fn_027F2B18 @ 0x27f2b18
|
|
void Gambit_fn_027F2B18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F2B18: ; // 0x27f2b18
|
|
/* 027F2B18 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 027F2B18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2B18 */ cpu->r[1] = _t0;
|
|
/* 027F2B1C */ _t1 = cpu->r[3] + 0x00000018u;
|
|
/* 027F2B1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 027F2B20 */ /* nop */
|
|
/* 027F2B24 */ /* nop */
|
|
/* 027F2B28 */ /* nop */
|
|
/* 027F2B2C */ _t2 = cpu->r[4] + 0x0000011Cu;
|
|
/* 027F2B2C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 027F2B30 */ /* nop */
|
|
/* 027F2B34 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 027F2B34 */ cpu->r[6] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F2B38 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 027F2B38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F2B3C */ cpu->f[0] = cpu->f[12] * cpu->f[13];
|
|
/* 027F2B40 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2B40 */ rbrew_write32(cpu->mem, _t5, cpu->r[6]);
|
|
/* 027F2B44 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 027F2B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[7]);
|
|
/* 027F2B48 */ /* nop */
|
|
/* 027F2B4C */ _t7 = cpu->r[1] + 0x00000028u;
|
|
/* 027F2B4C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 027F2B50 */ _t8 = cpu->r[1] + 0x00000028u;
|
|
/* 027F2B50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F2B54 */ /* nop */
|
|
/* 027F2B58 */ /* nop */
|
|
/* 027F2B5C */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2B5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F2B60 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2B60 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 027F2B64 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2B64 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027F2B68 */ _t12 = cpu->r[4] + 0x00000128u;
|
|
/* 027F2B68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 027F2B6C */ _t13 = cpu->r[1] + 0x00000030u;
|
|
/* 027F2B6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F2B70 */ cpu->f[13] = cpu->f[13] + cpu->f[0];
|
|
/* 027F2B74 */ /* nop */
|
|
/* 027F2B78 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2B78 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 027F2B7C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2B7C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027F2B80 */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 027F2B80 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 027F2B84 */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 027F2B84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F2B88 */ _t18 = cpu->r[4] + 0x00000118u;
|
|
/* 027F2B88 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 027F2B8C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2B8C */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 027F2B90 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2B90 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 027F2B94 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2B94 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 027F2B98 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2B98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 027F2B9C */ _t23 = cpu->r[4] + 0x0000011Cu;
|
|
/* 027F2B9C */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 027F2BA0 */ _t24 = cpu->r[4] + 0x00000114u;
|
|
/* 027F2BA0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 027F2BA4 */ _t25 = cpu->r[3] + 0x0000001Cu;
|
|
/* 027F2BA4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 027F2BA8 */ _t26 = cpu->r[4] + 0x00000134u;
|
|
/* 027F2BA8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F2BAC */ /* nop */
|
|
/* 027F2BB0 */ /* nop */
|
|
/* 027F2BB4 */ /* nop */
|
|
/* 027F2BB8 */ _t27 = cpu->r[1] + 0x00000038u;
|
|
/* 027F2BB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F2BBC */ cpu->f[12] = cpu->f[13] * cpu->f[12];
|
|
/* 027F2BC0 */ _t28 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2BC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027F2BC4 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2BC4 */ rbrew_write32(cpu->mem, _t29, cpu->r[8]);
|
|
/* 027F2BC8 */ _t30 = cpu->r[1] + 0x00000040u;
|
|
/* 027F2BC8 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 027F2BCC */ _t31 = cpu->r[1] + 0x00000040u;
|
|
/* 027F2BCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F2BD0 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2BD0 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
/* 027F2BD4 */ /* nop */
|
|
/* 027F2BD8 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2BD8 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 027F2BDC */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2BDC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 027F2BE0 */ /* nop */
|
|
/* 027F2BE4 */ _t35 = cpu->r[4] + 0x00000140u;
|
|
/* 027F2BE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 027F2BE8 */ /* nop */
|
|
/* 027F2BEC */ _t36 = cpu->r[1] + 0x00000048u;
|
|
/* 027F2BEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F2BF0 */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2BF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F2BF4 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 027F2BF8 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 027F2BF8 */ rbrew_write32(cpu->mem, _t38, cpu->r[12]);
|
|
/* 027F2BFC */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 027F2BFC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 027F2C00 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2C00 */ rbrew_write32(cpu->mem, _t40, cpu->r[11]);
|
|
/* 027F2C04 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2C04 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027F2C08 */ _t42 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F2C08 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 027F2C0C */ _t43 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F2C0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F2C10 */ _t44 = cpu->r[4] + 0x0000012Cu;
|
|
/* 027F2C10 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[11]);
|
|
/* 027F2C14 */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2C14 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 027F2C18 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2C18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 027F2C1C */ _t47 = cpu->r[4] + 0x00000130u;
|
|
/* 027F2C1C */ rbrew_write_f32(cpu->mem, _t47, cpu->f[12]);
|
|
/* 027F2C20 */ _t48 = cpu->r[4] + 0x00000134u;
|
|
/* 027F2C20 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 027F2C24 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F2C28 */ return;
|
|
}
|
|
|
|
// fn_027F2C2C @ 0x27f2c2c
|
|
void Gambit_fn_027F2C2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _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;
|
|
double _ft78, _ft79, _ft92, _ft93, _ft112, _ft113, _ft126, _ft127, _ft146, _ft147, _ft158, _ft159;
|
|
|
|
L_027F2C2C: ; // 0x27f2c2c
|
|
/* 027F2C2C */ _t0 = cpu->r[1] + 0xFFFFFF40u;
|
|
/* 027F2C2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F2C2C */ cpu->r[1] = _t0;
|
|
/* 027F2C30 */ cpu->r[0] = cpu->lr;
|
|
/* 027F2C34 */ _t1 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F2C34 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 027F2C38 */ /* nop */
|
|
/* 027F2C3C */ _t2 = cpu->r[1] + 0x00000090u;
|
|
/* 027F2C3C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 027F2C40 */ _t3 = cpu->r[1] + 0x000000B0u;
|
|
/* 027F2C40 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 027F2C44 */ /* nop */
|
|
/* 027F2C48 */ _t4 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F2C48 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 027F2C4C */ /* nop */
|
|
/* 027F2C50 */ _t5 = cpu->r[1] + 0x00000098u;
|
|
/* 027F2C50 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 027F2C54 */ _t6 = cpu->r[1] + 0x00000088u;
|
|
/* 027F2C54 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 027F2C58 */ _t7 = cpu->r[1] + 0x000000C4u;
|
|
/* 027F2C58 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F2C5C */ _t8 = cpu->r[1] + 0x000000B8u;
|
|
/* 027F2C5C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 027F2C60 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F2C64 */ _t9 = cpu->r[1] + 0x0000008Cu;
|
|
/* 027F2C64 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 027F2C68 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 027F2C68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F2C6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F2C70 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2C70 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F2C70 */ if (_t12) goto L_027F2C78; else goto L_027F2C74;
|
|
L_027F2C74: ; // 0x27f2c74
|
|
/* 027F2C74 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 027F2C74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
L_027F2C78: ; // 0x27f2c78
|
|
/* 027F2C78 */ cpu->r[7] = 0x10110000u;
|
|
/* 027F2C7C */ cpu->r[6] = 0x101F0000u;
|
|
/* 027F2C80 */ _t14 = cpu->r[7] + 0x000004FCu;
|
|
/* 027F2C80 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027F2C84 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F2C88 */ _t15 = cpu->r[6] + 0x00006344u;
|
|
/* 027F2C88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F2C88 */ cpu->r[6] = _t15;
|
|
/* 027F2C8C */ _t16 = cpu->r[9] + 0x00000504u;
|
|
/* 027F2C8C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027F2C90 */ _t17 = cpu->r[3] + 0x00000028u;
|
|
/* 027F2C90 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F2C94 */ cpu->r[9] = 0x101F0000u;
|
|
/* 027F2C98 */ _t18 = cpu->r[6] + 0x00000004u;
|
|
/* 027F2C98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F2C9C */ _t19 = cpu->r[9] + 0x00006338u;
|
|
/* 027F2C9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F2C9C */ cpu->r[9] = _t19;
|
|
/* 027F2CA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 027F2CA4 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 027F2CA4 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 027F2CA8 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 027F2CA8 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 027F2CAC */ _t22 = cpu->r[9] + 0x00000004u;
|
|
/* 027F2CAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F2CB0 */ _t23 = cpu->r[9] + 0x00000008u;
|
|
/* 027F2CB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F2CB4 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2CB4 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 027F2CB8 */ _t25 = cpu->r[6] + 0x00000008u;
|
|
/* 027F2CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F2CBC */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2CBC */ rbrew_write32(cpu->mem, _t26, cpu->r[8]);
|
|
/* 027F2CC0 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F2CC4 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2CC4 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 027F2CC8 */ _t28 = cpu->r[10] + 0x000004F8u;
|
|
/* 027F2CC8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 027F2CCC */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2CCC */ rbrew_write32(cpu->mem, _t29, cpu->r[7]);
|
|
/* 027F2CD0 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 027F2CD0 */ rbrew_write32(cpu->mem, _t30, cpu->r[7]);
|
|
/* 027F2CD4 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 027F2CD4 */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 027F2CD8 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2CD8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[30]);
|
|
/* 027F2CDC */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2CDC */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 027F2CE0 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F2CE0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F2CE0 */ if (_t35) goto L_027F2D88; else goto L_027F2CE4;
|
|
L_027F2CE4: ; // 0x27f2ce4
|
|
/* 027F2CE4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2CE4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F2CE4 */ if (_t37) goto L_027F2EA4; else goto L_027F2CE8;
|
|
L_027F2CE8: ; // 0x27f2ce8
|
|
/* 027F2CE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000002u);
|
|
/* 027F2CEC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2CEC */ _t39 = _t38 & 0x00000001u;
|
|
/* 027F2CEC */ if (_t39) goto L_027F2FB8; else goto L_027F2CF0;
|
|
L_027F2CF0: ; // 0x27f2cf0
|
|
/* 027F2CF0 */ cpu->r[5] = cpu->r[1] + 0x00000054u;
|
|
/* 027F2CF4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2CF8 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 027F2CFC */ Gambit_fn_02819880(cpu);
|
|
/* 027F2D00 */ /* nop */
|
|
/* 027F2D04 */ _t40 = cpu->r[1] + 0x00000054u;
|
|
/* 027F2D04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 027F2D08 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2D08 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027F2D0C */ /* nop */
|
|
/* 027F2D10 */ /* nop */
|
|
/* 027F2D14 */ /* nop */
|
|
/* 027F2D18 */ _t42 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F2D18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F2D1C */ _t43 = cpu->r[1] + 0x00000058u;
|
|
/* 027F2D1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F2D20 */ cpu->f[8] = cpu->f[10] * cpu->f[13];
|
|
/* 027F2D24 */ _t44 = cpu->r[1] + 0x00000080u;
|
|
/* 027F2D24 */ rbrew_write32(cpu->mem, _t44, cpu->r[7]);
|
|
/* 027F2D28 */ _t45 = cpu->r[1] + 0x0000007Cu;
|
|
/* 027F2D28 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 027F2D2C */ /* nop */
|
|
/* 027F2D30 */ _t46 = cpu->r[1] + 0x00000060u;
|
|
/* 027F2D30 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[8]);
|
|
/* 027F2D34 */ _t47 = cpu->r[1] + 0x00000060u;
|
|
/* 027F2D34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 027F2D38 */ _t48 = cpu->r[1] + 0x00000084u;
|
|
/* 027F2D38 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 027F2D3C */ /* nop */
|
|
/* 027F2D40 */ _t49 = cpu->r[1] + 0x00000084u;
|
|
/* 027F2D40 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 027F2D44 */ /* nop */
|
|
/* 027F2D48 */ _t50 = cpu->r[1] + 0x00000068u;
|
|
/* 027F2D48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027F2D4C */ _t51 = cpu->r[1] + 0x00000020u;
|
|
/* 027F2D4C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 027F2D50 */ _t52 = cpu->r[1] + 0x00000064u;
|
|
/* 027F2D50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F2D54 */ cpu->f[13] = cpu->f[0] + cpu->f[7];
|
|
/* 027F2D58 */ _t53 = cpu->r[1] + 0x00000074u;
|
|
/* 027F2D58 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 027F2D5C */ _t54 = cpu->r[1] + 0x00000074u;
|
|
/* 027F2D5C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 027F2D60 */ _t55 = cpu->r[1] + 0x00000070u;
|
|
/* 027F2D60 */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
/* 027F2D64 */ _t56 = cpu->r[1] + 0x00000070u;
|
|
/* 027F2D64 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 027F2D68 */ _t57 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F2D68 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[13]);
|
|
/* 027F2D6C */ _t58 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F2D6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 027F2D70 */ _t59 = cpu->r[30] + 0x00000108u;
|
|
/* 027F2D70 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[10]);
|
|
/* 027F2D74 */ _t60 = cpu->r[1] + 0x00000078u;
|
|
/* 027F2D74 */ rbrew_write32(cpu->mem, _t60, cpu->r[8]);
|
|
/* 027F2D78 */ _t61 = cpu->r[1] + 0x00000078u;
|
|
/* 027F2D78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 027F2D7C */ _t62 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F2D7C */ rbrew_write_f32(cpu->mem, _t62, cpu->f[12]);
|
|
/* 027F2D80 */ _t63 = cpu->r[30] + 0x00000110u;
|
|
/* 027F2D80 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 027F2D84 */ goto L_027F3158;
|
|
L_027F2D88: ; // 0x27f2d88
|
|
/* 027F2D88 */ cpu->r[5] = 0x00000000u;
|
|
/* 027F2D8C */ cpu->r[4] = cpu->r[31] + 0x000000A0u;
|
|
/* 027F2D90 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 027F2D94 */ Gambit_fn_0200FE00(cpu);
|
|
/* 027F2D98 */ _t64 = cpu->r[1] + 0x00000034u;
|
|
/* 027F2D98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 027F2D9C */ _t65 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F2D9C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 027F2DA0 */ _t66 = cpu->r[30] + 0x00000108u;
|
|
/* 027F2DA0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 027F2DA4 */ cpu->f[9] = cpu->f[13] * cpu->f[13];
|
|
/* 027F2DA8 */ _t67 = cpu->r[1] + 0x00000030u;
|
|
/* 027F2DA8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 027F2DAC */ _t68 = cpu->r[1] + 0x00000018u;
|
|
/* 027F2DAC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[8]);
|
|
/* 027F2DB0 */ cpu->f[11] = fma(cpu->f[10], cpu->f[10], cpu->f[9]);
|
|
/* 027F2DB4 */ _t69 = cpu->r[1] + 0x00000038u;
|
|
/* 027F2DB4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 027F2DB8 */ _t70 = cpu->r[1] + 0x00000024u;
|
|
/* 027F2DB8 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[10]);
|
|
/* 027F2DBC */ _t71 = cpu->r[30] + 0x00000110u;
|
|
/* 027F2DBC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 027F2DC0 */ cpu->f[10] = fma(cpu->f[7], cpu->f[7], cpu->f[11]);
|
|
/* 027F2DC4 */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2DC4 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[12]);
|
|
/* 027F2DC8 */ _t73 = cpu->r[1] + 0x00000020u;
|
|
/* 027F2DC8 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 027F2DCC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[30]);
|
|
/* 027F2DD0 */ _t74 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2DD0 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[7]);
|
|
/* 027F2DD4 */ _t75 = cpu->r[1] + 0x00000028u;
|
|
/* 027F2DD4 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[13]);
|
|
/* 027F2DD8 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F2DD8 */ _t77 = _t76 & 0x00000001u;
|
|
/* 027F2DD8 */ if (_t77) goto L_027F2DDC; else goto L_027F2E08;
|
|
L_027F2DDC: ; // 0x27f2ddc
|
|
/* 027F2DDC */ _ft78 = sqrt(cpu->f[10]);
|
|
/* 027F2DDC */ _ft79 = (double)(int32_t)0x00000001u;
|
|
/* 027F2DDC */ cpu->f[9] = _ft79 / _ft78;
|
|
/* 027F2DE0 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 027F2DE4 */ cpu->f[12] = cpu->f[9] * cpu->f[29];
|
|
/* 027F2DE8 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[10], -(cpu->f[31]));
|
|
/* 027F2DEC */ cpu->f[9] = cpu->f[11] * cpu->f[12];
|
|
/* 027F2DF0 */ _t80 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2DF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 027F2DF4 */ /* nop */
|
|
/* 027F2DF8 */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 027F2DFC */ /* nop */
|
|
/* 027F2E00 */ _t81 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2E00 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[0]);
|
|
/* 027F2E04 */ /* nop */
|
|
L_027F2E08: ; // 0x27f2e08
|
|
/* 027F2E08 */ _t82 = cpu->r[1] + 0x00000034u;
|
|
/* 027F2E08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 027F2E0C */ _t83 = cpu->r[1] + 0x00000030u;
|
|
/* 027F2E0C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 027F2E10 */ cpu->f[7] = cpu->f[0] * cpu->f[0];
|
|
/* 027F2E14 */ _t84 = cpu->r[1] + 0x00000038u;
|
|
/* 027F2E14 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 027F2E18 */ cpu->f[9] = fma(cpu->f[12], cpu->f[12], cpu->f[7]);
|
|
/* 027F2E1C */ _t85 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2E1C */ rbrew_write_f32(cpu->mem, _t85, cpu->f[8]);
|
|
/* 027F2E20 */ cpu->f[13] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 027F2E24 */ _t86 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2E24 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[12]);
|
|
/* 027F2E28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[30]);
|
|
/* 027F2E2C */ _t87 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2E2C */ rbrew_write_f32(cpu->mem, _t87, cpu->f[0]);
|
|
/* 027F2E30 */ _t88 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F2E30 */ _t89 = _t88 & 0x00000001u;
|
|
/* 027F2E30 */ if (_t89) goto L_027F2E58; else goto L_027F2E34;
|
|
L_027F2E34: ; // 0x27f2e34
|
|
/* 027F2E34 */ /* nop */
|
|
/* 027F2E38 */ /* nop */
|
|
/* 027F2E3C */ /* nop */
|
|
/* 027F2E40 */ /* nop */
|
|
/* 027F2E44 */ cpu->f[7] = cpu->f[0];
|
|
/* 027F2E48 */ _t90 = cpu->r[31] + 0x00000110u;
|
|
/* 027F2E48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 027F2E4C */ cpu->f[13] = fma(cpu->f[8], cpu->f[0], cpu->f[7]);
|
|
/* 027F2E50 */ _t91 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2E50 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[13]);
|
|
/* 027F2E54 */ goto L_027F30C4;
|
|
L_027F2E58: ; // 0x27f2e58
|
|
/* 027F2E58 */ _ft92 = sqrt(cpu->f[13]);
|
|
/* 027F2E58 */ _ft93 = (double)(int32_t)0x00000001u;
|
|
/* 027F2E58 */ cpu->f[7] = _ft93 / _ft92;
|
|
/* 027F2E5C */ cpu->f[10] = cpu->f[7] * cpu->f[7];
|
|
/* 027F2E60 */ cpu->f[12] = cpu->f[7] * cpu->f[29];
|
|
/* 027F2E64 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[13], -(cpu->f[31]));
|
|
/* 027F2E68 */ cpu->f[7] = cpu->f[10] * cpu->f[12];
|
|
/* 027F2E6C */ _t94 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2E6C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 027F2E70 */ /* nop */
|
|
/* 027F2E74 */ cpu->f[8] = cpu->f[8] * cpu->f[7];
|
|
/* 027F2E78 */ /* nop */
|
|
/* 027F2E7C */ /* nop */
|
|
/* 027F2E80 */ _t95 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2E80 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[8]);
|
|
/* 027F2E84 */ /* nop */
|
|
/* 027F2E88 */ /* nop */
|
|
/* 027F2E8C */ /* nop */
|
|
/* 027F2E90 */ cpu->f[7] = cpu->f[0];
|
|
/* 027F2E94 */ _t96 = cpu->r[31] + 0x00000110u;
|
|
/* 027F2E94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 027F2E98 */ cpu->f[13] = fma(cpu->f[8], cpu->f[0], cpu->f[7]);
|
|
/* 027F2E9C */ _t97 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2E9C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[13]);
|
|
/* 027F2EA0 */ goto L_027F30C4;
|
|
L_027F2EA4: ; // 0x27f2ea4
|
|
/* 027F2EA4 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2EA8 */ cpu->r[4] = cpu->r[31] + 0x000000A0u;
|
|
/* 027F2EAC */ cpu->r[5] = 0x00000001u;
|
|
/* 027F2EB0 */ Gambit_fn_0200FE00(cpu);
|
|
/* 027F2EB4 */ _t98 = cpu->r[1] + 0x00000040u;
|
|
/* 027F2EB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 027F2EB8 */ _t99 = cpu->r[30] + 0x00000108u;
|
|
/* 027F2EB8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 027F2EBC */ cpu->f[9] = cpu->f[13] * cpu->f[13];
|
|
/* 027F2EC0 */ _t100 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2EC0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 027F2EC4 */ _t101 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2EC4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 027F2EC8 */ cpu->f[11] = fma(cpu->f[10], cpu->f[10], cpu->f[9]);
|
|
/* 027F2ECC */ _t102 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F2ECC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 027F2ED0 */ _t103 = cpu->r[1] + 0x00000024u;
|
|
/* 027F2ED0 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[10]);
|
|
/* 027F2ED4 */ _t104 = cpu->r[1] + 0x00000018u;
|
|
/* 027F2ED4 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[8]);
|
|
/* 027F2ED8 */ cpu->f[8] = fma(cpu->f[7], cpu->f[7], cpu->f[11]);
|
|
/* 027F2EDC */ _t105 = cpu->r[30] + 0x00000110u;
|
|
/* 027F2EDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 027F2EE0 */ _t106 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2EE0 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[7]);
|
|
/* 027F2EE4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[30]);
|
|
/* 027F2EE8 */ _t107 = cpu->r[1] + 0x00000028u;
|
|
/* 027F2EE8 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[13]);
|
|
/* 027F2EEC */ _t108 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2EEC */ rbrew_write_f32(cpu->mem, _t108, cpu->f[12]);
|
|
/* 027F2EF0 */ _t109 = cpu->r[1] + 0x00000020u;
|
|
/* 027F2EF0 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[0]);
|
|
/* 027F2EF4 */ _t110 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F2EF4 */ _t111 = _t110 & 0x00000001u;
|
|
/* 027F2EF4 */ if (_t111) goto L_027F2EF8; else goto L_027F2F24;
|
|
L_027F2EF8: ; // 0x27f2ef8
|
|
/* 027F2EF8 */ _ft112 = sqrt(cpu->f[8]);
|
|
/* 027F2EF8 */ _ft113 = (double)(int32_t)0x00000001u;
|
|
/* 027F2EF8 */ cpu->f[9] = _ft113 / _ft112;
|
|
/* 027F2EFC */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 027F2F00 */ cpu->f[13] = cpu->f[9] * cpu->f[29];
|
|
/* 027F2F04 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[8], -(cpu->f[31]));
|
|
/* 027F2F08 */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 027F2F0C */ _t114 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2F0C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 027F2F10 */ /* nop */
|
|
/* 027F2F14 */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 027F2F18 */ /* nop */
|
|
/* 027F2F1C */ _t115 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F2F1C */ rbrew_write_f32(cpu->mem, _t115, cpu->f[8]);
|
|
/* 027F2F20 */ /* nop */
|
|
L_027F2F24: ; // 0x27f2f24
|
|
/* 027F2F24 */ _t116 = cpu->r[1] + 0x00000040u;
|
|
/* 027F2F24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 027F2F28 */ _t117 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F2F28 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 027F2F2C */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 027F2F30 */ _t118 = cpu->r[1] + 0x00000044u;
|
|
/* 027F2F30 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 027F2F34 */ cpu->f[10] = fma(cpu->f[12], cpu->f[12], cpu->f[9]);
|
|
/* 027F2F38 */ _t119 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2F38 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[8]);
|
|
/* 027F2F3C */ cpu->f[7] = fma(cpu->f[8], cpu->f[8], cpu->f[10]);
|
|
/* 027F2F40 */ _t120 = cpu->r[1] + 0x00000008u;
|
|
/* 027F2F40 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[12]);
|
|
/* 027F2F44 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[30]);
|
|
/* 027F2F48 */ _t121 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2F48 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[0]);
|
|
/* 027F2F4C */ _t122 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F2F4C */ _t123 = _t122 & 0x00000001u;
|
|
/* 027F2F4C */ if (_t123) goto L_027F2F70; else goto L_027F2F50;
|
|
L_027F2F50: ; // 0x27f2f50
|
|
/* 027F2F50 */ /* nop */
|
|
/* 027F2F54 */ /* nop */
|
|
/* 027F2F58 */ /* nop */
|
|
/* 027F2F5C */ _t124 = cpu->r[31] + 0x00000110u;
|
|
/* 027F2F5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 027F2F60 */ /* nop */
|
|
/* 027F2F64 */ cpu->f[13] = fma(cpu->f[8], cpu->f[0], cpu->f[7]);
|
|
/* 027F2F68 */ _t125 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2F68 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[13]);
|
|
/* 027F2F6C */ goto L_027F30C4;
|
|
L_027F2F70: ; // 0x27f2f70
|
|
/* 027F2F70 */ _ft126 = sqrt(cpu->f[7]);
|
|
/* 027F2F70 */ _ft127 = (double)(int32_t)0x00000001u;
|
|
/* 027F2F70 */ cpu->f[9] = _ft127 / _ft126;
|
|
/* 027F2F74 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 027F2F78 */ cpu->f[11] = cpu->f[9] * cpu->f[29];
|
|
/* 027F2F7C */ cpu->f[10] = -fma(cpu->f[10], cpu->f[7], -(cpu->f[31]));
|
|
/* 027F2F80 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 027F2F84 */ _t128 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2F84 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 027F2F88 */ /* nop */
|
|
/* 027F2F8C */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 027F2F90 */ /* nop */
|
|
/* 027F2F94 */ /* nop */
|
|
/* 027F2F98 */ _t129 = cpu->r[1] + 0x00000010u;
|
|
/* 027F2F98 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[8]);
|
|
/* 027F2F9C */ /* nop */
|
|
/* 027F2FA0 */ /* nop */
|
|
/* 027F2FA4 */ _t130 = cpu->r[31] + 0x00000110u;
|
|
/* 027F2FA4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 027F2FA8 */ /* nop */
|
|
/* 027F2FAC */ cpu->f[13] = fma(cpu->f[8], cpu->f[0], cpu->f[7]);
|
|
/* 027F2FB0 */ _t131 = cpu->r[1] + 0x00000014u;
|
|
/* 027F2FB0 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[13]);
|
|
/* 027F2FB4 */ goto L_027F30C4;
|
|
L_027F2FB8: ; // 0x27f2fb8
|
|
/* 027F2FB8 */ cpu->r[5] = 0x00000002u;
|
|
/* 027F2FBC */ cpu->r[4] = cpu->r[31] + 0x000000A0u;
|
|
/* 027F2FC0 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 027F2FC4 */ Gambit_fn_0200FE00(cpu);
|
|
/* 027F2FC8 */ _t132 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F2FC8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 027F2FCC */ _t133 = cpu->r[1] + 0x00000048u;
|
|
/* 027F2FCC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 027F2FD0 */ _t134 = cpu->r[30] + 0x00000108u;
|
|
/* 027F2FD0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 027F2FD4 */ cpu->f[11] = cpu->f[13] * cpu->f[13];
|
|
/* 027F2FD8 */ _t135 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F2FD8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 027F2FDC */ _t136 = cpu->r[1] + 0x00000050u;
|
|
/* 027F2FDC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 027F2FE0 */ cpu->f[12] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 027F2FE4 */ _t137 = cpu->r[1] + 0x00000028u;
|
|
/* 027F2FE4 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[13]);
|
|
/* 027F2FE8 */ _t138 = cpu->r[1] + 0x00000024u;
|
|
/* 027F2FE8 */ rbrew_write_f32(cpu->mem, _t138, cpu->f[10]);
|
|
/* 027F2FEC */ _t139 = cpu->r[30] + 0x00000110u;
|
|
/* 027F2FEC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 027F2FF0 */ cpu->f[12] = fma(cpu->f[7], cpu->f[7], cpu->f[12]);
|
|
/* 027F2FF4 */ _t140 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F2FF4 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[9]);
|
|
/* 027F2FF8 */ _t141 = cpu->r[1] + 0x00000020u;
|
|
/* 027F2FF8 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[10]);
|
|
/* 027F2FFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[30]);
|
|
/* 027F3000 */ _t142 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F3000 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[7]);
|
|
/* 027F3004 */ _t143 = cpu->r[1] + 0x00000018u;
|
|
/* 027F3004 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[8]);
|
|
/* 027F3008 */ _t144 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3008 */ _t145 = _t144 & 0x00000001u;
|
|
/* 027F3008 */ if (_t145) goto L_027F300C; else goto L_027F3038;
|
|
L_027F300C: ; // 0x27f300c
|
|
/* 027F300C */ _ft146 = sqrt(cpu->f[12]);
|
|
/* 027F300C */ _ft147 = (double)(int32_t)0x00000001u;
|
|
/* 027F300C */ cpu->f[13] = _ft147 / _ft146;
|
|
/* 027F3010 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 027F3014 */ cpu->f[7] = cpu->f[13] * cpu->f[29];
|
|
/* 027F3018 */ cpu->f[0] = -fma(cpu->f[0], cpu->f[12], -(cpu->f[31]));
|
|
/* 027F301C */ cpu->f[13] = cpu->f[0] * cpu->f[7];
|
|
/* 027F3020 */ _t148 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F3020 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t148);
|
|
/* 027F3024 */ /* nop */
|
|
/* 027F3028 */ cpu->f[0] = cpu->f[0] * cpu->f[13];
|
|
/* 027F302C */ /* nop */
|
|
/* 027F3030 */ _t149 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F3030 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[0]);
|
|
/* 027F3034 */ /* nop */
|
|
L_027F3038: ; // 0x27f3038
|
|
/* 027F3038 */ _t150 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3038 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 027F303C */ _t151 = cpu->r[1] + 0x00000048u;
|
|
/* 027F303C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 027F3040 */ cpu->f[7] = cpu->f[0] * cpu->f[0];
|
|
/* 027F3044 */ _t152 = cpu->r[1] + 0x00000050u;
|
|
/* 027F3044 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 027F3048 */ cpu->f[9] = fma(cpu->f[12], cpu->f[12], cpu->f[7]);
|
|
/* 027F304C */ _t153 = cpu->r[1] + 0x00000010u;
|
|
/* 027F304C */ rbrew_write_f32(cpu->mem, _t153, cpu->f[8]);
|
|
/* 027F3050 */ cpu->f[11] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 027F3054 */ _t154 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3054 */ rbrew_write_f32(cpu->mem, _t154, cpu->f[12]);
|
|
/* 027F3058 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 027F305C */ _t155 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F305C */ rbrew_write_f32(cpu->mem, _t155, cpu->f[0]);
|
|
/* 027F3060 */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3060 */ _t157 = _t156 & 0x00000001u;
|
|
/* 027F3060 */ if (_t157) goto L_027F307C; else goto L_027F3064;
|
|
L_027F3064: ; // 0x27f3064
|
|
/* 027F3064 */ /* nop */
|
|
/* 027F3068 */ /* nop */
|
|
/* 027F306C */ /* nop */
|
|
/* 027F3070 */ /* nop */
|
|
/* 027F3074 */ cpu->f[7] = cpu->f[13];
|
|
/* 027F3078 */ goto L_027F30B8;
|
|
L_027F307C: ; // 0x27f307c
|
|
/* 027F307C */ _ft158 = sqrt(cpu->f[11]);
|
|
/* 027F307C */ _ft159 = (double)(int32_t)0x00000001u;
|
|
/* 027F307C */ cpu->f[13] = _ft159 / _ft158;
|
|
/* 027F3080 */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 027F3084 */ cpu->f[8] = cpu->f[13] * cpu->f[29];
|
|
/* 027F3088 */ cpu->f[7] = -fma(cpu->f[7], cpu->f[11], -(cpu->f[31]));
|
|
/* 027F308C */ cpu->f[13] = cpu->f[7] * cpu->f[8];
|
|
/* 027F3090 */ _t160 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3090 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 027F3094 */ /* nop */
|
|
/* 027F3098 */ cpu->f[8] = cpu->f[8] * cpu->f[13];
|
|
/* 027F309C */ /* nop */
|
|
/* 027F30A0 */ /* nop */
|
|
/* 027F30A4 */ _t161 = cpu->r[1] + 0x00000010u;
|
|
/* 027F30A4 */ rbrew_write_f32(cpu->mem, _t161, cpu->f[8]);
|
|
/* 027F30A8 */ /* nop */
|
|
/* 027F30AC */ /* nop */
|
|
/* 027F30B0 */ /* nop */
|
|
/* 027F30B4 */ cpu->f[7] = cpu->f[13];
|
|
L_027F30B8: ; // 0x27f30b8
|
|
/* 027F30B8 */ _t162 = cpu->r[31] + 0x00000110u;
|
|
/* 027F30B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 027F30BC */ cpu->f[13] = fma(cpu->f[8], cpu->f[0], cpu->f[7]);
|
|
/* 027F30C0 */ _t163 = cpu->r[1] + 0x00000014u;
|
|
/* 027F30C0 */ rbrew_write_f32(cpu->mem, _t163, cpu->f[13]);
|
|
L_027F30C4: ; // 0x27f30c4
|
|
/* 027F30C4 */ cpu->r[5] = cpu->r[1] + 0x00000054u;
|
|
/* 027F30C8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F30CC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 027F30D0 */ Gambit_fn_02819880(cpu);
|
|
/* 027F30D4 */ /* nop */
|
|
/* 027F30D8 */ _t164 = cpu->r[1] + 0x00000054u;
|
|
/* 027F30D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 027F30DC */ _t165 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F30DC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 027F30E0 */ /* nop */
|
|
/* 027F30E4 */ /* nop */
|
|
/* 027F30E8 */ /* nop */
|
|
/* 027F30EC */ _t166 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F30EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t166);
|
|
/* 027F30F0 */ _t167 = cpu->r[1] + 0x00000058u;
|
|
/* 027F30F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t167);
|
|
/* 027F30F4 */ cpu->f[8] = cpu->f[10] * cpu->f[13];
|
|
/* 027F30F8 */ _t168 = cpu->r[1] + 0x00000080u;
|
|
/* 027F30F8 */ rbrew_write32(cpu->mem, _t168, cpu->r[7]);
|
|
/* 027F30FC */ _t169 = cpu->r[1] + 0x0000007Cu;
|
|
/* 027F30FC */ rbrew_write32(cpu->mem, _t169, cpu->r[0]);
|
|
/* 027F3100 */ /* nop */
|
|
/* 027F3104 */ _t170 = cpu->r[1] + 0x00000060u;
|
|
/* 027F3104 */ rbrew_write_f32(cpu->mem, _t170, cpu->f[8]);
|
|
/* 027F3108 */ _t171 = cpu->r[1] + 0x00000060u;
|
|
/* 027F3108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t171);
|
|
/* 027F310C */ _t172 = cpu->r[1] + 0x00000084u;
|
|
/* 027F310C */ rbrew_write32(cpu->mem, _t172, cpu->r[0]);
|
|
/* 027F3110 */ /* nop */
|
|
/* 027F3114 */ _t173 = cpu->r[1] + 0x00000084u;
|
|
/* 027F3114 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 027F3118 */ /* nop */
|
|
/* 027F311C */ _t174 = cpu->r[1] + 0x00000068u;
|
|
/* 027F311C */ cpu->r[0] = rbrew_read32(cpu->mem, _t174);
|
|
/* 027F3120 */ _t175 = cpu->r[1] + 0x00000020u;
|
|
/* 027F3120 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 027F3124 */ _t176 = cpu->r[1] + 0x00000064u;
|
|
/* 027F3124 */ cpu->r[12] = rbrew_read32(cpu->mem, _t176);
|
|
/* 027F3128 */ cpu->f[13] = cpu->f[0] + cpu->f[7];
|
|
/* 027F312C */ _t177 = cpu->r[1] + 0x00000074u;
|
|
/* 027F312C */ rbrew_write32(cpu->mem, _t177, cpu->r[0]);
|
|
/* 027F3130 */ _t178 = cpu->r[1] + 0x00000074u;
|
|
/* 027F3130 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 027F3134 */ _t179 = cpu->r[1] + 0x00000070u;
|
|
/* 027F3134 */ rbrew_write32(cpu->mem, _t179, cpu->r[12]);
|
|
/* 027F3138 */ _t180 = cpu->r[1] + 0x00000070u;
|
|
/* 027F3138 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 027F313C */ _t181 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F313C */ rbrew_write_f32(cpu->mem, _t181, cpu->f[13]);
|
|
/* 027F3140 */ _t182 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F3140 */ cpu->r[8] = rbrew_read32(cpu->mem, _t182);
|
|
/* 027F3144 */ _t183 = cpu->r[30] + 0x00000108u;
|
|
/* 027F3144 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[10]);
|
|
/* 027F3148 */ _t184 = cpu->r[1] + 0x00000078u;
|
|
/* 027F3148 */ rbrew_write32(cpu->mem, _t184, cpu->r[8]);
|
|
/* 027F314C */ _t185 = cpu->r[1] + 0x00000078u;
|
|
/* 027F314C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 027F3150 */ _t186 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F3150 */ rbrew_write_f32(cpu->mem, _t186, cpu->f[12]);
|
|
/* 027F3154 */ _t187 = cpu->r[30] + 0x00000110u;
|
|
/* 027F3154 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[0]);
|
|
L_027F3158: ; // 0x27f3158
|
|
/* 027F3158 */ _t188 = cpu->r[1] + 0x000000B8u;
|
|
/* 027F3158 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 027F315C */ _t189 = cpu->r[1] + 0x00000098u;
|
|
/* 027F315C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 027F3160 */ _t190 = cpu->r[1] + 0x000000B0u;
|
|
/* 027F3160 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t190);
|
|
/* 027F3164 */ _t191 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F3164 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 027F3168 */ _t192 = cpu->r[1] + 0x00000090u;
|
|
/* 027F3168 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t192);
|
|
/* 027F316C */ _t193 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F316C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t193);
|
|
/* 027F3170 */ _t194 = cpu->r[1] + 0x0000008Cu;
|
|
/* 027F3170 */ cpu->r[31] = rbrew_read32(cpu->mem, _t194);
|
|
/* 027F3174 */ _t195 = cpu->r[1] + 0x00000088u;
|
|
/* 027F3174 */ cpu->r[30] = rbrew_read32(cpu->mem, _t195);
|
|
/* 027F3178 */ _t196 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F3178 */ _t197 = _t196 & 0x00000001u;
|
|
/* 027F3178 */ if (_t197) goto L_027F317C; // else: addr-0 trap, fall-through
|
|
L_027F317C: ; // 0x27f317c
|
|
/* 027F317C */ _t198 = cpu->r[1] + 0x000000C4u;
|
|
/* 027F317C */ cpu->r[0] = rbrew_read32(cpu->mem, _t198);
|
|
/* 027F3180 */ cpu->lr = cpu->r[0];
|
|
/* 027F3184 */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 027F3188 */ return;
|
|
}
|
|
|
|
// fn_027F318C @ 0x27f318c
|
|
void Gambit_fn_027F318C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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, _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, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _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, _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;
|
|
double _ft41, _ft42, _ft94, _ft95, _ft117, _ft118, _ft131, _ft132, _ft165, _ft166;
|
|
|
|
L_027F318C: ; // 0x27f318c
|
|
/* 027F318C */ _t0 = cpu->r[1] + 0xFFFFFEB0u;
|
|
/* 027F318C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F318C */ cpu->r[1] = _t0;
|
|
/* 027F3190 */ _t1 = cpu->r[1] + 0x000000E4u;
|
|
/* 027F3190 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F3194 */ cpu->r[0] = cpu->lr;
|
|
/* 027F3198 */ _t2 = cpu->r[1] + 0x00000130u;
|
|
/* 027F3198 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 027F319C */ /* nop */
|
|
/* 027F31A0 */ _t3 = cpu->r[1] + 0x00000110u;
|
|
/* 027F31A0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[28]);
|
|
/* 027F31A4 */ _t4 = cpu->r[1] + 0x000000F0u;
|
|
/* 027F31A4 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[26]);
|
|
/* 027F31A8 */ /* nop */
|
|
/* 027F31AC */ _t5 = cpu->r[1] + 0x00000138u;
|
|
/* 027F31AC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 027F31B0 */ _t6 = cpu->r[1] + 0x00000118u;
|
|
/* 027F31B0 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[28]);
|
|
/* 027F31B4 */ _t7 = cpu->r[1] + 0x00000100u;
|
|
/* 027F31B4 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[27]);
|
|
/* 027F31B8 */ /* nop */
|
|
/* 027F31BC */ _t8 = cpu->r[1] + 0x00000154u;
|
|
/* 027F31BC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027F31C0 */ /* nop */
|
|
/* 027F31C4 */ _t9 = cpu->r[1] + 0x000000F8u;
|
|
/* 027F31C4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[26]);
|
|
/* 027F31C8 */ _t10 = cpu->r[1] + 0x00000108u;
|
|
/* 027F31C8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[27]);
|
|
/* 027F31CC */ _t11 = cpu->r[1] + 0x00000140u;
|
|
/* 027F31CC */ rbrew_write_f64(cpu->mem, _t11, cpu->f[31]);
|
|
/* 027F31D0 */ _t12 = cpu->r[1] + 0x000000E8u;
|
|
/* 027F31D0 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 027F31D4 */ /* nop */
|
|
/* 027F31D8 */ _t13 = cpu->r[1] + 0x00000120u;
|
|
/* 027F31D8 */ rbrew_write_f64(cpu->mem, _t13, cpu->f[29]);
|
|
/* 027F31DC */ _t14 = cpu->r[1] + 0x00000148u;
|
|
/* 027F31DC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[31]);
|
|
/* 027F31E0 */ /* nop */
|
|
/* 027F31E4 */ _t15 = cpu->r[1] + 0x000000ECu;
|
|
/* 027F31E4 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 027F31E8 */ _t16 = cpu->r[1] + 0x00000128u;
|
|
/* 027F31E8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[29]);
|
|
/* 027F31EC */ cpu->r[29] = cpu->r[3];
|
|
/* 027F31F0 */ _t17 = cpu->r[29] + 0x00000044u;
|
|
/* 027F31F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F31F4 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F31F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 027F31FC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F31FC */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F31FC */ if (_t19) goto L_027F3744; else goto L_027F3200;
|
|
L_027F3200: ; // 0x27f3200
|
|
/* 027F3200 */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 027F3200 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F3204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3208 */ /* nop */
|
|
/* 027F320C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F320C */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F320C */ if (_t22) goto L_027F3214; else goto L_027F3210;
|
|
L_027F3210: ; // 0x27f3210
|
|
/* 027F3210 */ _t23 = cpu->r[31] + 0x00000010u;
|
|
/* 027F3210 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
L_027F3214: ; // 0x27f3214
|
|
/* 027F3214 */ /* nop */
|
|
/* 027F3218 */ _t24 = cpu->r[30] + 0x00000110u;
|
|
/* 027F3218 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 027F321C */ /* nop */
|
|
/* 027F3220 */ /* nop */
|
|
/* 027F3224 */ _t25 = cpu->r[1] + 0x00000044u;
|
|
/* 027F3224 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F3228 */ _t26 = cpu->r[31] + 0x00000110u;
|
|
/* 027F3228 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F322C */ _t27 = cpu->r[1] + 0x00000048u;
|
|
/* 027F322C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F3230 */ cpu->f[10] = cpu->f[12] - cpu->f[0];
|
|
/* 027F3234 */ _t28 = cpu->r[1] + 0x00000020u;
|
|
/* 027F3234 */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
/* 027F3238 */ _t29 = cpu->r[1] + 0x00000024u;
|
|
/* 027F3238 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 027F323C */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 027F323C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 027F3240 */ _t31 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3240 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[10]);
|
|
/* 027F3244 */ _t32 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3244 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F3248 */ cpu->f[10] = cpu->f[12] * cpu->f[12];
|
|
/* 027F324C */ _t33 = cpu->r[1] + 0x00000020u;
|
|
/* 027F324C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 027F3250 */ _t34 = cpu->r[1] + 0x00000028u;
|
|
/* 027F3250 */ rbrew_write32(cpu->mem, _t34, cpu->r[8]);
|
|
/* 027F3254 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F3258 */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 027F325C */ _t35 = cpu->r[1] + 0x00000028u;
|
|
/* 027F325C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 027F3260 */ _t36 = cpu->r[11] + 0x000004FCu;
|
|
/* 027F3260 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 027F3264 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F3268 */ cpu->f[8] = fma(cpu->f[7], cpu->f[7], cpu->f[0]);
|
|
/* 027F326C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 027F3270 */ _t37 = cpu->r[11] + 0x000004F8u;
|
|
/* 027F3270 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 027F3274 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F3278 */ _t38 = cpu->r[10] + 0x00000504u;
|
|
/* 027F3278 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 027F327C */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F327C */ _t40 = _t39 & 0x00000001u;
|
|
/* 027F327C */ if (_t40) goto L_027F3280; else goto L_027F32B0;
|
|
L_027F3280: ; // 0x27f3280
|
|
/* 027F3280 */ _ft41 = sqrt(cpu->f[8]);
|
|
/* 027F3280 */ _ft42 = (double)(int32_t)0x00000001u;
|
|
/* 027F3280 */ cpu->f[0] = _ft42 / _ft41;
|
|
/* 027F3284 */ cpu->f[11] = cpu->f[0] * cpu->f[0];
|
|
/* 027F3288 */ cpu->f[13] = cpu->f[0] * cpu->f[30];
|
|
/* 027F328C */ cpu->f[11] = -fma(cpu->f[11], cpu->f[8], -(cpu->f[28]));
|
|
/* 027F3290 */ cpu->f[0] = cpu->f[11] * cpu->f[13];
|
|
/* 027F3294 */ /* nop */
|
|
/* 027F3298 */ _t43 = cpu->r[1] + 0x00000028u;
|
|
/* 027F3298 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 027F329C */ /* nop */
|
|
/* 027F32A0 */ cpu->f[7] = cpu->f[7] * cpu->f[0];
|
|
/* 027F32A4 */ /* nop */
|
|
/* 027F32A8 */ cpu->f[8] = cpu->f[8] * cpu->f[0];
|
|
/* 027F32AC */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 027F32AC */ rbrew_write_f32(cpu->mem, _t44, cpu->f[7]);
|
|
L_027F32B0: ; // 0x27f32b0
|
|
/* 027F32B0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F32B4 */ _t45 = cpu->r[12] + 0x00000508u;
|
|
/* 027F32B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 027F32B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[11]);
|
|
/* 027F32BC */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F32BC */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F32BC */ if (_t47) goto L_027F3744; else goto L_027F32C0;
|
|
L_027F32C0: ; // 0x27f32c0
|
|
/* 027F32C0 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F32C4 */ _t48 = cpu->r[30] + 0x00000100u;
|
|
/* 027F32C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 027F32C8 */ _t49 = cpu->r[10] + 0x00000508u;
|
|
/* 027F32C8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 027F32CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[12]);
|
|
/* 027F32D0 */ cpu->f[11] = cpu->f[31];
|
|
/* 027F32D4 */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F32D4 */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F32D4 */ if (_t51) goto L_027F32D8; else goto L_027F3310;
|
|
L_027F32D8: ; // 0x27f32d8
|
|
/* 027F32D8 */ cpu->f[11] = cpu->f[8] / cpu->f[13];
|
|
/* 027F32DC */ cpu->r[7] = 0x10110000u;
|
|
/* 027F32E0 */ _t52 = cpu->r[7] + 0x0000050Cu;
|
|
/* 027F32E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 027F32E4 */ _t53 = cpu->r[29] + 0x00000020u;
|
|
/* 027F32E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 027F32E8 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 027F32EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[9]);
|
|
/* 027F32F0 */ cpu->f[0] = cpu->f[8] + cpu->f[0];
|
|
/* 027F32F4 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F32F4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 027F32F4 */ if (_t55) goto L_027F32F8; else goto L_027F3300;
|
|
L_027F32F8: ; // 0x27f32f8
|
|
/* 027F32F8 */ cpu->f[11] = cpu->f[13] * cpu->f[9];
|
|
/* 027F32FC */ goto L_027F3310;
|
|
L_027F3300: ; // 0x27f3300
|
|
/* 027F3300 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 027F3304 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3304 */ _t57 = _t56 & 0x00000001u;
|
|
/* 027F3304 */ if (_t57) goto L_027F3308; else goto L_027F330C;
|
|
L_027F3308: ; // 0x27f3308
|
|
/* 027F3308 */ cpu->f[11] = cpu->f[0];
|
|
L_027F330C: ; // 0x27f330c
|
|
/* 027F330C */ cpu->f[11] = cpu->f[13] * cpu->f[11];
|
|
L_027F3310: ; // 0x27f3310
|
|
/* 027F3310 */ /* nop */
|
|
/* 027F3314 */ /* nop */
|
|
/* 027F3318 */ /* nop */
|
|
/* 027F331C */ _t58 = cpu->r[1] + 0x00000050u;
|
|
/* 027F331C */ cpu->r[7] = rbrew_read32(cpu->mem, _t58);
|
|
/* 027F3320 */ cpu->f[7] = cpu->f[7] * cpu->f[11];
|
|
/* 027F3324 */ _t59 = cpu->r[1] + 0x00000054u;
|
|
/* 027F3324 */ cpu->r[8] = rbrew_read32(cpu->mem, _t59);
|
|
/* 027F3328 */ _t60 = cpu->r[1] + 0x000000B0u;
|
|
/* 027F3328 */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 027F332C */ _t61 = cpu->r[1] + 0x00000058u;
|
|
/* 027F332C */ rbrew_write_f32(cpu->mem, _t61, cpu->f[7]);
|
|
/* 027F3330 */ _t62 = cpu->r[1] + 0x00000058u;
|
|
/* 027F3330 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 027F3334 */ _t63 = cpu->r[1] + 0x000000B4u;
|
|
/* 027F3334 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 027F3338 */ /* nop */
|
|
/* 027F333C */ _t64 = cpu->r[1] + 0x000000B8u;
|
|
/* 027F333C */ rbrew_write32(cpu->mem, _t64, cpu->r[9]);
|
|
/* 027F3340 */ /* nop */
|
|
/* 027F3344 */ _t65 = cpu->r[1] + 0x000000B8u;
|
|
/* 027F3344 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 027F3348 */ /* nop */
|
|
/* 027F334C */ /* nop */
|
|
/* 027F3350 */ _t66 = cpu->r[31] + 0x00000110u;
|
|
/* 027F3350 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 027F3354 */ _t67 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F3354 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027F3358 */ _t68 = cpu->r[1] + 0x00000060u;
|
|
/* 027F3358 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F335C */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 027F3360 */ _t69 = cpu->r[1] + 0x00000098u;
|
|
/* 027F3360 */ rbrew_write32(cpu->mem, _t69, cpu->r[12]);
|
|
/* 027F3364 */ _t70 = cpu->r[1] + 0x00000098u;
|
|
/* 027F3364 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 027F3368 */ _t71 = cpu->r[1] + 0x0000009Cu;
|
|
/* 027F3368 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 027F336C */ _t72 = cpu->r[1] + 0x0000009Cu;
|
|
/* 027F336C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 027F3370 */ _t73 = cpu->r[1] + 0x00000064u;
|
|
/* 027F3370 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[12]);
|
|
/* 027F3374 */ _t74 = cpu->r[1] + 0x00000064u;
|
|
/* 027F3374 */ cpu->r[7] = rbrew_read32(cpu->mem, _t74);
|
|
/* 027F3378 */ _t75 = cpu->r[30] + 0x00000108u;
|
|
/* 027F3378 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[11]);
|
|
/* 027F337C */ cpu->r[3] = cpu->r[29];
|
|
/* 027F3380 */ _t76 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F3380 */ rbrew_write32(cpu->mem, _t76, cpu->r[7]);
|
|
/* 027F3384 */ _t77 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F3384 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 027F3388 */ cpu->r[4] = cpu->r[1] + 0x000000BCu;
|
|
/* 027F338C */ _t78 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F338C */ rbrew_write_f32(cpu->mem, _t78, cpu->f[13]);
|
|
/* 027F3390 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F3394 */ _t79 = cpu->r[30] + 0x00000110u;
|
|
/* 027F3394 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 027F3398 */ Gambit_fn_027F2A54(cpu);
|
|
/* 027F339C */ /* nop */
|
|
/* 027F33A0 */ /* nop */
|
|
/* 027F33A4 */ _t80 = cpu->r[1] + 0x000000C4u;
|
|
/* 027F33A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 027F33A8 */ /* nop */
|
|
/* 027F33AC */ /* nop */
|
|
/* 027F33B0 */ _t81 = cpu->r[31] + 0x00000110u;
|
|
/* 027F33B0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 027F33B4 */ _t82 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F33B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F33B8 */ _t83 = cpu->r[1] + 0x00000068u;
|
|
/* 027F33B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 027F33BC */ cpu->f[13] = cpu->f[0] - cpu->f[7];
|
|
/* 027F33C0 */ _t84 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F33C0 */ rbrew_write32(cpu->mem, _t84, cpu->r[8]);
|
|
/* 027F33C4 */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F33C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 027F33C8 */ _t86 = cpu->r[1] + 0x00000008u;
|
|
/* 027F33C8 */ rbrew_write32(cpu->mem, _t86, cpu->r[0]);
|
|
/* 027F33CC */ _t87 = cpu->r[1] + 0x00000070u;
|
|
/* 027F33CC */ rbrew_write_f32(cpu->mem, _t87, cpu->f[13]);
|
|
/* 027F33D0 */ _t88 = cpu->r[1] + 0x00000070u;
|
|
/* 027F33D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t88);
|
|
/* 027F33D4 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 027F33D8 */ _t89 = cpu->r[1] + 0x00000008u;
|
|
/* 027F33D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 027F33DC */ _t90 = cpu->r[1] + 0x00000010u;
|
|
/* 027F33DC */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 027F33E0 */ cpu->f[10] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 027F33E4 */ _t91 = cpu->r[1] + 0x00000010u;
|
|
/* 027F33E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 027F33E8 */ cpu->f[8] = fma(cpu->f[8], cpu->f[8], cpu->f[10]);
|
|
/* 027F33EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 027F33F0 */ _t92 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F33F0 */ _t93 = _t92 & 0x00000001u;
|
|
/* 027F33F0 */ if (_t93) goto L_027F33F4; else goto L_027F3420;
|
|
L_027F33F4: ; // 0x27f33f4
|
|
/* 027F33F4 */ _ft94 = sqrt(cpu->f[8]);
|
|
/* 027F33F4 */ _ft95 = (double)(int32_t)0x00000001u;
|
|
/* 027F33F4 */ cpu->f[10] = _ft95 / _ft94;
|
|
/* 027F33F8 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 027F33FC */ cpu->f[12] = cpu->f[10] * cpu->f[30];
|
|
/* 027F3400 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[8], -(cpu->f[28]));
|
|
/* 027F3404 */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 027F3408 */ _t96 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3408 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 027F340C */ /* nop */
|
|
/* 027F3410 */ cpu->f[9] = cpu->f[9] * cpu->f[10];
|
|
/* 027F3414 */ /* nop */
|
|
/* 027F3418 */ _t97 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3418 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[9]);
|
|
/* 027F341C */ /* nop */
|
|
L_027F3420: ; // 0x27f3420
|
|
/* 027F3420 */ /* nop */
|
|
/* 027F3424 */ /* nop */
|
|
/* 027F3428 */ /* nop */
|
|
/* 027F342C */ /* nop */
|
|
/* 027F3430 */ _t98 = cpu->r[31] + 0x00000110u;
|
|
/* 027F3430 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 027F3434 */ _t99 = cpu->r[30] + 0x00000110u;
|
|
/* 027F3434 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 027F3438 */ _t100 = cpu->r[1] + 0x00000074u;
|
|
/* 027F3438 */ cpu->r[7] = rbrew_read32(cpu->mem, _t100);
|
|
/* 027F343C */ cpu->f[7] = cpu->f[8] - cpu->f[9];
|
|
/* 027F3440 */ _t101 = cpu->r[1] + 0x00000078u;
|
|
/* 027F3440 */ cpu->r[9] = rbrew_read32(cpu->mem, _t101);
|
|
/* 027F3444 */ _t102 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3444 */ rbrew_write32(cpu->mem, _t102, cpu->r[7]);
|
|
/* 027F3448 */ _t103 = cpu->r[1] + 0x0000007Cu;
|
|
/* 027F3448 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[7]);
|
|
/* 027F344C */ _t104 = cpu->r[1] + 0x0000007Cu;
|
|
/* 027F344C */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 027F3450 */ _t105 = cpu->r[1] + 0x00000018u;
|
|
/* 027F3450 */ rbrew_write32(cpu->mem, _t105, cpu->r[9]);
|
|
/* 027F3454 */ _t106 = cpu->r[1] + 0x00000018u;
|
|
/* 027F3454 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 027F3458 */ _t107 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3458 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 027F345C */ cpu->f[7] = cpu->f[7] * cpu->f[7];
|
|
/* 027F3460 */ _t108 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F3460 */ rbrew_write32(cpu->mem, _t108, cpu->r[0]);
|
|
/* 027F3464 */ _t109 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F3464 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 027F3468 */ cpu->f[10] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 027F346C */ cpu->f[29] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 027F3470 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[31]);
|
|
/* 027F3474 */ _t110 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3474 */ _t111 = _t110 & 0x00000001u;
|
|
/* 027F3474 */ if (_t111) goto L_027F34CC; else goto L_027F3478;
|
|
L_027F3478: ; // 0x27f3478
|
|
/* 027F3478 */ /* nop */
|
|
/* 027F347C */ cpu->r[5] = cpu->r[1] + 0x000000D4u;
|
|
/* 027F3480 */ /* nop */
|
|
/* 027F3484 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F3488 */ _t112 = cpu->r[29] + 0x00000024u;
|
|
/* 027F3488 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 027F348C */ /* nop */
|
|
/* 027F3490 */ _t113 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3490 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 027F3494 */ /* nop */
|
|
/* 027F3498 */ _t114 = cpu->r[12] + 0x00000510u;
|
|
/* 027F3498 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 027F349C */ cpu->f[27] = fma(cpu->f[8], cpu->f[9], cpu->f[10]);
|
|
/* 027F34A0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F34A4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F34A8 */ cpu->f[26] = cpu->f[7] * cpu->f[13];
|
|
/* 027F34AC */ Gambit_fn_02C692EC(cpu);
|
|
/* 027F34B0 */ cpu->r[3] = cpu->r[1] + 0x000000D4u;
|
|
/* 027F34B4 */ Gambit_fn_02C69350(cpu);
|
|
/* 027F34B8 */ cpu->f[2] = cpu->f[27];
|
|
/* 027F34BC */ Gambit_fn_02C89074(cpu);
|
|
/* 027F34C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[26]);
|
|
/* 027F34C4 */ _t115 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F34C4 */ _t116 = _t115 & 0x00000001u;
|
|
/* 027F34C4 */ if (_t116) goto L_027F34C8; else goto L_027F3718;
|
|
L_027F34C8: ; // 0x27f34c8
|
|
/* 027F34C8 */ goto L_027F3548;
|
|
L_027F34CC: ; // 0x27f34cc
|
|
/* 027F34CC */ _ft117 = sqrt(cpu->f[29]);
|
|
/* 027F34CC */ _ft118 = (double)(int32_t)0x00000001u;
|
|
/* 027F34CC */ cpu->f[8] = _ft118 / _ft117;
|
|
/* 027F34D0 */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 027F34D4 */ cpu->f[12] = cpu->f[8] * cpu->f[30];
|
|
/* 027F34D8 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[29], -(cpu->f[28]));
|
|
/* 027F34DC */ cpu->f[8] = cpu->f[11] * cpu->f[12];
|
|
/* 027F34E0 */ _t119 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F34E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 027F34E4 */ cpu->f[29] = cpu->f[29] * cpu->f[8];
|
|
/* 027F34E8 */ /* nop */
|
|
/* 027F34EC */ cpu->r[12] = 0x10110000u;
|
|
/* 027F34F0 */ cpu->f[9] = cpu->f[9] * cpu->f[8];
|
|
/* 027F34F4 */ cpu->r[5] = cpu->r[1] + 0x000000D4u;
|
|
/* 027F34F8 */ _t120 = cpu->r[29] + 0x00000024u;
|
|
/* 027F34F8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 027F34FC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F3500 */ /* nop */
|
|
/* 027F3504 */ /* nop */
|
|
/* 027F3508 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F350C */ /* nop */
|
|
/* 027F3510 */ /* nop */
|
|
/* 027F3514 */ _t121 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3514 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 027F3518 */ /* nop */
|
|
/* 027F351C */ _t122 = cpu->r[12] + 0x00000510u;
|
|
/* 027F351C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 027F3520 */ cpu->f[27] = fma(cpu->f[8], cpu->f[9], cpu->f[10]);
|
|
/* 027F3524 */ _t123 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F3524 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[9]);
|
|
/* 027F3528 */ cpu->f[26] = cpu->f[7] * cpu->f[13];
|
|
/* 027F352C */ Gambit_fn_02C692EC(cpu);
|
|
/* 027F3530 */ cpu->r[3] = cpu->r[1] + 0x000000D4u;
|
|
/* 027F3534 */ Gambit_fn_02C69350(cpu);
|
|
/* 027F3538 */ cpu->f[2] = cpu->f[27];
|
|
/* 027F353C */ Gambit_fn_02C89074(cpu);
|
|
/* 027F3540 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[26]);
|
|
/* 027F3544 */ _t124 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3544 */ _t125 = _t124 & 0x00000001u;
|
|
/* 027F3544 */ if (_t125) goto L_027F3548; else goto L_027F3718;
|
|
L_027F3548: ; // 0x27f3548
|
|
/* 027F3548 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F354C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F3550 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F3554 */ Gambit_fn_02C692EC(cpu);
|
|
/* 027F3558 */ _t126 = cpu->r[1] + 0x00000030u;
|
|
/* 027F3558 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 027F355C */ cpu->f[7] = cpu->f[10] * cpu->f[10];
|
|
/* 027F3560 */ _t127 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F3560 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 027F3564 */ cpu->f[8] = fma(cpu->f[10], cpu->f[10], cpu->f[7]);
|
|
/* 027F3568 */ _t128 = cpu->r[1] + 0x00000034u;
|
|
/* 027F3568 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 027F356C */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[8]);
|
|
/* 027F3570 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 027F3574 */ _t129 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3574 */ _t130 = _t129 & 0x00000001u;
|
|
/* 027F3574 */ if (_t130) goto L_027F3578; else goto L_027F35A4;
|
|
L_027F3578: ; // 0x27f3578
|
|
/* 027F3578 */ _ft131 = sqrt(cpu->f[11]);
|
|
/* 027F3578 */ _ft132 = (double)(int32_t)0x00000001u;
|
|
/* 027F3578 */ cpu->f[13] = _ft132 / _ft131;
|
|
/* 027F357C */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 027F3580 */ cpu->f[9] = cpu->f[13] * cpu->f[30];
|
|
/* 027F3584 */ cpu->f[7] = -fma(cpu->f[7], cpu->f[11], -(cpu->f[28]));
|
|
/* 027F3588 */ cpu->f[13] = cpu->f[7] * cpu->f[9];
|
|
/* 027F358C */ _t133 = cpu->r[1] + 0x00000034u;
|
|
/* 027F358C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 027F3590 */ /* nop */
|
|
/* 027F3594 */ cpu->f[12] = cpu->f[12] * cpu->f[13];
|
|
/* 027F3598 */ /* nop */
|
|
/* 027F359C */ _t134 = cpu->r[1] + 0x00000034u;
|
|
/* 027F359C */ rbrew_write_f32(cpu->mem, _t134, cpu->f[12]);
|
|
/* 027F35A0 */ /* nop */
|
|
L_027F35A4: ; // 0x27f35a4
|
|
/* 027F35A4 */ cpu->f[1] = cpu->f[26];
|
|
/* 027F35A8 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F35AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F35B0 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 027F35B4 */ Gambit_fn_0204EF20(cpu);
|
|
/* 027F35B8 */ _t135 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F35B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 027F35BC */ cpu->f[7] = cpu->f[12] * cpu->f[12];
|
|
/* 027F35C0 */ _t136 = cpu->r[1] + 0x00000038u;
|
|
/* 027F35C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 027F35C4 */ cpu->f[9] = fma(cpu->f[12], cpu->f[12], cpu->f[7]);
|
|
/* 027F35C8 */ _t137 = cpu->r[1] + 0x00000040u;
|
|
/* 027F35C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 027F35CC */ cpu->f[10] = fma(cpu->f[11], cpu->f[11], cpu->f[9]);
|
|
/* 027F35D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 027F35D4 */ _t138 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F35D4 */ _t139 = _t138 & 0x00000001u;
|
|
/* 027F35D4 */ if (_t139) goto L_027F3664; else goto L_027F35D8;
|
|
L_027F35D8: ; // 0x27f35d8
|
|
/* 027F35D8 */ /* nop */
|
|
/* 027F35DC */ /* nop */
|
|
/* 027F35E0 */ /* nop */
|
|
/* 027F35E4 */ _t140 = cpu->r[1] + 0x00000080u;
|
|
/* 027F35E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t140);
|
|
/* 027F35E8 */ cpu->f[7] = cpu->f[11] * cpu->f[29];
|
|
/* 027F35EC */ _t141 = cpu->r[1] + 0x00000084u;
|
|
/* 027F35EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t141);
|
|
/* 027F35F0 */ _t142 = cpu->r[1] + 0x000000C8u;
|
|
/* 027F35F0 */ rbrew_write32(cpu->mem, _t142, cpu->r[12]);
|
|
/* 027F35F4 */ _t143 = cpu->r[1] + 0x00000088u;
|
|
/* 027F35F4 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[7]);
|
|
/* 027F35F8 */ _t144 = cpu->r[1] + 0x00000088u;
|
|
/* 027F35F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t144);
|
|
/* 027F35FC */ _t145 = cpu->r[1] + 0x000000CCu;
|
|
/* 027F35FC */ rbrew_write32(cpu->mem, _t145, cpu->r[0]);
|
|
/* 027F3600 */ /* nop */
|
|
/* 027F3604 */ _t146 = cpu->r[1] + 0x000000D0u;
|
|
/* 027F3604 */ rbrew_write32(cpu->mem, _t146, cpu->r[9]);
|
|
/* 027F3608 */ /* nop */
|
|
/* 027F360C */ _t147 = cpu->r[1] + 0x000000D0u;
|
|
/* 027F360C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 027F3610 */ /* nop */
|
|
/* 027F3614 */ /* nop */
|
|
/* 027F3618 */ _t148 = cpu->r[1] + 0x0000008Cu;
|
|
/* 027F3618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 027F361C */ _t149 = cpu->r[31] + 0x00000110u;
|
|
/* 027F361C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 027F3620 */ _t150 = cpu->r[1] + 0x00000090u;
|
|
/* 027F3620 */ cpu->r[12] = rbrew_read32(cpu->mem, _t150);
|
|
/* 027F3624 */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 027F3628 */ _t151 = cpu->r[1] + 0x000000A4u;
|
|
/* 027F3628 */ rbrew_write32(cpu->mem, _t151, cpu->r[0]);
|
|
/* 027F362C */ _t152 = cpu->r[1] + 0x000000A4u;
|
|
/* 027F362C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 027F3630 */ _t153 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F3630 */ rbrew_write32(cpu->mem, _t153, cpu->r[12]);
|
|
/* 027F3634 */ _t154 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F3634 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 027F3638 */ _t155 = cpu->r[1] + 0x00000094u;
|
|
/* 027F3638 */ rbrew_write_f32(cpu->mem, _t155, cpu->f[8]);
|
|
/* 027F363C */ _t156 = cpu->r[1] + 0x00000094u;
|
|
/* 027F363C */ cpu->r[0] = rbrew_read32(cpu->mem, _t156);
|
|
/* 027F3640 */ _t157 = cpu->r[30] + 0x00000108u;
|
|
/* 027F3640 */ rbrew_write_f32(cpu->mem, _t157, cpu->f[12]);
|
|
/* 027F3644 */ _t158 = cpu->r[1] + 0x000000ACu;
|
|
/* 027F3644 */ rbrew_write32(cpu->mem, _t158, cpu->r[0]);
|
|
/* 027F3648 */ _t159 = cpu->r[1] + 0x000000ACu;
|
|
/* 027F3648 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 027F364C */ _t160 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F364C */ rbrew_write_f32(cpu->mem, _t160, cpu->f[0]);
|
|
/* 027F3650 */ _t161 = cpu->r[30] + 0x00000110u;
|
|
/* 027F3650 */ rbrew_write_f32(cpu->mem, _t161, cpu->f[8]);
|
|
/* 027F3654 */ _t162 = cpu->r[29] + 0x00000028u;
|
|
/* 027F3654 */ cpu->r[12] = rbrew_read32(cpu->mem, _t162);
|
|
/* 027F3658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 027F365C */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F365C */ _t164 = _t163 & 0x00000001u;
|
|
/* 027F365C */ if (_t164) goto L_027F3738; else goto L_027F3660;
|
|
L_027F3660: ; // 0x27f3660
|
|
/* 027F3660 */ goto L_027F372C;
|
|
L_027F3664: ; // 0x27f3664
|
|
/* 027F3664 */ _ft165 = sqrt(cpu->f[10]);
|
|
/* 027F3664 */ _ft166 = (double)(int32_t)0x00000001u;
|
|
/* 027F3664 */ cpu->f[12] = _ft166 / _ft165;
|
|
/* 027F3668 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 027F366C */ cpu->f[0] = cpu->f[12] * cpu->f[30];
|
|
/* 027F3670 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[28]));
|
|
/* 027F3674 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 027F3678 */ /* nop */
|
|
/* 027F367C */ /* nop */
|
|
/* 027F3680 */ _t167 = cpu->r[1] + 0x00000040u;
|
|
/* 027F3680 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 027F3684 */ /* nop */
|
|
/* 027F3688 */ /* nop */
|
|
/* 027F368C */ cpu->f[11] = cpu->f[11] * cpu->f[12];
|
|
/* 027F3690 */ /* nop */
|
|
/* 027F3694 */ _t168 = cpu->r[1] + 0x00000084u;
|
|
/* 027F3694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t168);
|
|
/* 027F3698 */ _t169 = cpu->r[1] + 0x00000080u;
|
|
/* 027F3698 */ cpu->r[12] = rbrew_read32(cpu->mem, _t169);
|
|
/* 027F369C */ cpu->f[7] = cpu->f[11] * cpu->f[29];
|
|
/* 027F36A0 */ _t170 = cpu->r[1] + 0x000000CCu;
|
|
/* 027F36A0 */ rbrew_write32(cpu->mem, _t170, cpu->r[0]);
|
|
/* 027F36A4 */ _t171 = cpu->r[1] + 0x000000C8u;
|
|
/* 027F36A4 */ rbrew_write32(cpu->mem, _t171, cpu->r[12]);
|
|
/* 027F36A8 */ _t172 = cpu->r[1] + 0x00000088u;
|
|
/* 027F36A8 */ rbrew_write_f32(cpu->mem, _t172, cpu->f[7]);
|
|
/* 027F36AC */ _t173 = cpu->r[1] + 0x00000088u;
|
|
/* 027F36AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t173);
|
|
/* 027F36B0 */ /* nop */
|
|
/* 027F36B4 */ _t174 = cpu->r[1] + 0x00000040u;
|
|
/* 027F36B4 */ rbrew_write_f32(cpu->mem, _t174, cpu->f[11]);
|
|
/* 027F36B8 */ _t175 = cpu->r[1] + 0x000000D0u;
|
|
/* 027F36B8 */ rbrew_write32(cpu->mem, _t175, cpu->r[9]);
|
|
/* 027F36BC */ /* nop */
|
|
/* 027F36C0 */ _t176 = cpu->r[1] + 0x000000D0u;
|
|
/* 027F36C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 027F36C4 */ /* nop */
|
|
/* 027F36C8 */ /* nop */
|
|
/* 027F36CC */ _t177 = cpu->r[31] + 0x00000110u;
|
|
/* 027F36CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 027F36D0 */ _t178 = cpu->r[1] + 0x0000008Cu;
|
|
/* 027F36D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t178);
|
|
/* 027F36D4 */ _t179 = cpu->r[1] + 0x00000090u;
|
|
/* 027F36D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t179);
|
|
/* 027F36D8 */ _t180 = cpu->r[1] + 0x000000A4u;
|
|
/* 027F36D8 */ rbrew_write32(cpu->mem, _t180, cpu->r[0]);
|
|
/* 027F36DC */ _t181 = cpu->r[1] + 0x000000A4u;
|
|
/* 027F36DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t181);
|
|
/* 027F36E0 */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 027F36E4 */ _t182 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F36E4 */ rbrew_write32(cpu->mem, _t182, cpu->r[12]);
|
|
/* 027F36E8 */ _t183 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F36E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 027F36EC */ _t184 = cpu->r[1] + 0x00000094u;
|
|
/* 027F36EC */ rbrew_write_f32(cpu->mem, _t184, cpu->f[8]);
|
|
/* 027F36F0 */ _t185 = cpu->r[1] + 0x00000094u;
|
|
/* 027F36F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t185);
|
|
/* 027F36F4 */ _t186 = cpu->r[30] + 0x00000108u;
|
|
/* 027F36F4 */ rbrew_write_f32(cpu->mem, _t186, cpu->f[12]);
|
|
/* 027F36F8 */ _t187 = cpu->r[1] + 0x000000ACu;
|
|
/* 027F36F8 */ rbrew_write32(cpu->mem, _t187, cpu->r[0]);
|
|
/* 027F36FC */ _t188 = cpu->r[1] + 0x000000ACu;
|
|
/* 027F36FC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 027F3700 */ _t189 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F3700 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[0]);
|
|
/* 027F3704 */ _t190 = cpu->r[30] + 0x00000110u;
|
|
/* 027F3704 */ rbrew_write_f32(cpu->mem, _t190, cpu->f[8]);
|
|
/* 027F3708 */ _t191 = cpu->r[29] + 0x00000028u;
|
|
/* 027F3708 */ cpu->r[12] = rbrew_read32(cpu->mem, _t191);
|
|
/* 027F370C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 027F3710 */ _t192 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3710 */ _t193 = _t192 & 0x00000001u;
|
|
/* 027F3710 */ if (_t193) goto L_027F3738; else goto L_027F3714;
|
|
L_027F3714: ; // 0x27f3714
|
|
/* 027F3714 */ goto L_027F372C;
|
|
L_027F3718: ; // 0x27f3718
|
|
/* 027F3718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F371C */ _t194 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F371C */ _t195 = _t194 & 0x00000001u;
|
|
/* 027F371C */ if (_t195) goto L_027F3738; else goto L_027F3720;
|
|
L_027F3720: ; // 0x27f3720
|
|
/* 027F3720 */ _t196 = cpu->r[29] + 0x00000028u;
|
|
/* 027F3720 */ cpu->r[12] = rbrew_read32(cpu->mem, _t196);
|
|
/* 027F3724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 027F3728 */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3728 */ _t198 = _t197 & 0x00000001u;
|
|
/* 027F3728 */ if (_t198) goto L_027F3738; else goto L_027F372C;
|
|
L_027F372C: ; // 0x27f372c
|
|
/* 027F372C */ cpu->r[3] = cpu->r[29];
|
|
/* 027F3730 */ cpu->r[4] = cpu->r[30];
|
|
/* 027F3734 */ Gambit_fn_027F2C2C(cpu);
|
|
L_027F3738: ; // 0x27f3738
|
|
/* 027F3738 */ cpu->r[3] = cpu->r[30] + 0x000000A0u;
|
|
/* 027F373C */ cpu->r[4] = cpu->r[30] + 0x00000108u;
|
|
/* 027F3740 */ Gambit_fn_021620C4(cpu);
|
|
L_027F3744: ; // 0x27f3744
|
|
/* 027F3744 */ _t199 = cpu->r[1] + 0x000000E4u;
|
|
/* 027F3744 */ cpu->r[29] = rbrew_read32(cpu->mem, _t199);
|
|
/* 027F3748 */ _t200 = cpu->r[1] + 0x00000118u;
|
|
/* 027F3748 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t200);
|
|
/* 027F374C */ _t201 = cpu->r[1] + 0x00000108u;
|
|
/* 027F374C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t201);
|
|
/* 027F3750 */ _t202 = cpu->r[1] + 0x00000110u;
|
|
/* 027F3750 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t202);
|
|
/* 027F3754 */ _t203 = cpu->r[1] + 0x00000128u;
|
|
/* 027F3754 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t203);
|
|
/* 027F3758 */ _t204 = cpu->r[1] + 0x00000100u;
|
|
/* 027F3758 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t204);
|
|
/* 027F375C */ _t205 = cpu->r[1] + 0x00000120u;
|
|
/* 027F375C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t205);
|
|
/* 027F3760 */ _t206 = cpu->r[1] + 0x00000148u;
|
|
/* 027F3760 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 027F3764 */ _t207 = cpu->r[1] + 0x000000ECu;
|
|
/* 027F3764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t207);
|
|
/* 027F3768 */ _t208 = cpu->r[1] + 0x00000140u;
|
|
/* 027F3768 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t208);
|
|
/* 027F376C */ _t209 = cpu->r[1] + 0x00000138u;
|
|
/* 027F376C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t209);
|
|
/* 027F3770 */ _t210 = cpu->r[1] + 0x000000F8u;
|
|
/* 027F3770 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 027F3774 */ _t211 = cpu->r[1] + 0x00000130u;
|
|
/* 027F3774 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t211);
|
|
/* 027F3778 */ _t212 = cpu->r[1] + 0x000000F0u;
|
|
/* 027F3778 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t212);
|
|
/* 027F377C */ _t213 = cpu->r[1] + 0x000000E8u;
|
|
/* 027F377C */ cpu->r[30] = rbrew_read32(cpu->mem, _t213);
|
|
/* 027F3780 */ _t214 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F3780 */ _t215 = _t214 & 0x00000001u;
|
|
/* 027F3780 */ if (_t215) goto L_027F3784; // else: addr-0 trap, fall-through
|
|
L_027F3784: ; // 0x27f3784
|
|
/* 027F3784 */ _t216 = cpu->r[1] + 0x00000154u;
|
|
/* 027F3784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t216);
|
|
/* 027F3788 */ cpu->lr = cpu->r[0];
|
|
/* 027F378C */ cpu->r[1] = cpu->r[1] + 0x00000150u;
|
|
/* 027F3790 */ return;
|
|
}
|
|
|
|
// fn_027F3794 @ 0x27f3794
|
|
void Gambit_fn_027F3794(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_027F3794: ; // 0x27f3794
|
|
/* 027F3794 */ cpu->r[0] = cpu->lr;
|
|
/* 027F3798 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F3798 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F3798 */ cpu->r[1] = _t0;
|
|
/* 027F379C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F379C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F37A0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F37A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F37A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F37A8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F37A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F37AC */ _t4 = cpu->r[30] + 0x00000044u;
|
|
/* 027F37AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F37B0 */ cpu->r[31] = cpu->r[0];
|
|
/* 027F37B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F37B4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F37B4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F37B4 */ if (_t6) goto L_027F3828; else goto L_027F37B8;
|
|
L_027F37B8: ; // 0x27f37b8
|
|
/* 027F37B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 027F37BC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F37BC */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F37BC */ if (_t8) goto L_027F37C0; else goto L_027F37DC;
|
|
L_027F37C0: ; // 0x27f37c0
|
|
/* 027F37C0 */ cpu->r[3] = cpu->r[30] + 0x00000048u;
|
|
/* 027F37C4 */ cpu->r[4] = cpu->r[31] + 0x00000070u;
|
|
/* 027F37C8 */ Gambit_fn_02C69510(cpu);
|
|
/* 027F37CC */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 027F37CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F37D0 */ cpu->r[31] = cpu->r[11];
|
|
/* 027F37D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F37D4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F37D4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F37D4 */ if (_t11) goto L_027F3818; else goto L_027F37D8;
|
|
L_027F37D8: ; // 0x27f37d8
|
|
/* 027F37D8 */ goto L_027F3814;
|
|
L_027F37DC: ; // 0x27f37dc
|
|
/* 027F37DC */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 027F37DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F37E0 */ cpu->r[12] = cpu->r[10];
|
|
/* 027F37E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F37E4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F37E4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F37E4 */ if (_t14) goto L_027F37EC; else goto L_027F37E8;
|
|
L_027F37E8: ; // 0x27f37e8
|
|
/* 027F37E8 */ _t15 = cpu->r[10] + 0x00000010u;
|
|
/* 027F37E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
L_027F37EC: ; // 0x27f37ec
|
|
/* 027F37EC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F37F0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F37F4 */ Gambit_fn_027F2478(cpu);
|
|
/* 027F37F8 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F37FC */ cpu->r[3] = cpu->r[12] + 0x00000070u;
|
|
/* 027F3800 */ cpu->r[5] = cpu->r[31] + 0x00000070u;
|
|
/* 027F3804 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F3808 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 027F3808 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F380C */ cpu->r[31] = cpu->r[11];
|
|
/* 027F380C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3810 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3810 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F3810 */ if (_t18) goto L_027F3818; else goto L_027F3814;
|
|
L_027F3814: ; // 0x27f3814
|
|
/* 027F3814 */ _t19 = cpu->r[11] + 0x00000010u;
|
|
/* 027F3814 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
L_027F3818: ; // 0x27f3818
|
|
/* 027F3818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F381C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F381C */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F381C */ if (_t21) goto L_027F3828; else goto L_027F3820;
|
|
L_027F3820: ; // 0x27f3820
|
|
/* 027F3820 */ _t22 = cpu->r[30] + 0x00000044u;
|
|
/* 027F3820 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F3824 */ goto L_027F37B8;
|
|
L_027F3828: ; // 0x27f3828
|
|
/* 027F3828 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F382C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 027F382C */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F3830 */ cpu->lr = cpu->r[0];
|
|
/* 027F3834 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F3838 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F383C */ return;
|
|
}
|
|
|
|
// fn_027F3798 @ 0x27f3798
|
|
void Gambit_fn_027F3798(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_027F3798: ; // 0x27f3798
|
|
/* 027F3798 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F3798 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F3798 */ cpu->r[1] = _t0;
|
|
/* 027F379C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F379C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F37A0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F37A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F37A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F37A8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F37A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F37AC */ _t4 = cpu->r[30] + 0x00000044u;
|
|
/* 027F37AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F37B0 */ cpu->r[31] = cpu->r[0];
|
|
/* 027F37B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F37B4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F37B4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F37B4 */ if (_t6) goto L_027F3828; else goto L_027F37B8;
|
|
L_027F37B8: ; // 0x27f37b8
|
|
/* 027F37B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 027F37BC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F37BC */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F37BC */ if (_t8) goto L_027F37C0; else goto L_027F37DC;
|
|
L_027F37C0: ; // 0x27f37c0
|
|
/* 027F37C0 */ cpu->r[3] = cpu->r[30] + 0x00000048u;
|
|
/* 027F37C4 */ cpu->r[4] = cpu->r[31] + 0x00000070u;
|
|
/* 027F37C8 */ Gambit_fn_02C69510(cpu);
|
|
/* 027F37CC */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 027F37CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F37D0 */ cpu->r[31] = cpu->r[11];
|
|
/* 027F37D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F37D4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F37D4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F37D4 */ if (_t11) goto L_027F3818; else goto L_027F37D8;
|
|
L_027F37D8: ; // 0x27f37d8
|
|
/* 027F37D8 */ goto L_027F3814;
|
|
L_027F37DC: ; // 0x27f37dc
|
|
/* 027F37DC */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 027F37DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F37E0 */ cpu->r[12] = cpu->r[10];
|
|
/* 027F37E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F37E4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F37E4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F37E4 */ if (_t14) goto L_027F37EC; else goto L_027F37E8;
|
|
L_027F37E8: ; // 0x27f37e8
|
|
/* 027F37E8 */ _t15 = cpu->r[10] + 0x00000010u;
|
|
/* 027F37E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
L_027F37EC: ; // 0x27f37ec
|
|
/* 027F37EC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F37F0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F37F4 */ Gambit_fn_027F2478(cpu);
|
|
/* 027F37F8 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F37FC */ cpu->r[3] = cpu->r[12] + 0x00000070u;
|
|
/* 027F3800 */ cpu->r[5] = cpu->r[31] + 0x00000070u;
|
|
/* 027F3804 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F3808 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 027F3808 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F380C */ cpu->r[31] = cpu->r[11];
|
|
/* 027F380C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3810 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3810 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F3810 */ if (_t18) goto L_027F3818; else goto L_027F3814;
|
|
L_027F3814: ; // 0x27f3814
|
|
/* 027F3814 */ _t19 = cpu->r[11] + 0x00000010u;
|
|
/* 027F3814 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
L_027F3818: ; // 0x27f3818
|
|
/* 027F3818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F381C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F381C */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F381C */ if (_t21) goto L_027F3828; else goto L_027F3820;
|
|
L_027F3820: ; // 0x27f3820
|
|
/* 027F3820 */ _t22 = cpu->r[30] + 0x00000044u;
|
|
/* 027F3820 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F3824 */ goto L_027F37B8;
|
|
L_027F3828: ; // 0x27f3828
|
|
/* 027F3828 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F382C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 027F382C */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F3830 */ cpu->lr = cpu->r[0];
|
|
/* 027F3834 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F3838 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F383C */ return;
|
|
}
|
|
|
|
// fn_027F3840 @ 0x27f3840
|
|
void Gambit_fn_027F3840(CPUState* cpu) {
|
|
L_027F3840: ; // 0x27f3840
|
|
/* 027F3840 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F3844 */ return;
|
|
}
|
|
|
|
// fn_027F3848 @ 0x27f3848
|
|
void Gambit_fn_027F3848(CPUState* cpu) {
|
|
L_027F3848: ; // 0x27f3848
|
|
/* 027F3848 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F384C */ return;
|
|
}
|
|
|
|
// fn_027F3850 @ 0x27f3850
|
|
void Gambit_fn_027F3850(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_027F3850: ; // 0x27f3850
|
|
/* 027F3850 */ cpu->r[0] = cpu->lr;
|
|
/* 027F3854 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 027F3854 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F3854 */ cpu->r[1] = _t0;
|
|
/* 027F3858 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3858 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F385C */ cpu->r[31] = cpu->r[4];
|
|
/* 027F3860 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3860 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F3864 */ cpu->r[5] = cpu->r[31];
|
|
/* 027F3868 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F386C */ cpu->r[30] = cpu->r[3];
|
|
/* 027F3870 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 027F3870 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F3874 */ Gambit_fn_027F2A54(cpu);
|
|
/* 027F3878 */ /* nop */
|
|
/* 027F387C */ /* nop */
|
|
/* 027F3880 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 027F3880 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027F3884 */ /* nop */
|
|
/* 027F3888 */ _t5 = cpu->r[31] + 0x00000110u;
|
|
/* 027F3888 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027F388C */ /* nop */
|
|
/* 027F3890 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3890 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F3894 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3894 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F3898 */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 027F3898 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 027F389C */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 027F38A0 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 027F38A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027F38A4 */ /* nop */
|
|
/* 027F38A8 */ _t10 = cpu->r[30] + 0x00000010u;
|
|
/* 027F38A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027F38AC */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027F38AC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[11]);
|
|
/* 027F38B0 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027F38B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F38B4 */ /* nop */
|
|
/* 027F38B8 */ _t13 = cpu->r[31] + 0x00000128u;
|
|
/* 027F38B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 027F38BC */ /* nop */
|
|
/* 027F38C0 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 027F38C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F38C4 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 027F38C4 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027F38C8 */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 027F38C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027F38CC */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 027F38CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F38D0 */ cpu->f[13] = cpu->f[0] * cpu->f[10];
|
|
/* 027F38D4 */ _t18 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F38D4 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
/* 027F38D8 */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 027F38D8 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 027F38DC */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F38DC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 027F38E0 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F38E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F38E4 */ /* nop */
|
|
/* 027F38E8 */ _t22 = cpu->r[1] + 0x00000040u;
|
|
/* 027F38E8 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 027F38EC */ _t23 = cpu->r[1] + 0x00000040u;
|
|
/* 027F38EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027F38F0 */ /* nop */
|
|
/* 027F38F4 */ cpu->f[12] = cpu->f[12] + cpu->f[0];
|
|
/* 027F38F8 */ /* nop */
|
|
/* 027F38FC */ /* nop */
|
|
/* 027F3900 */ _t24 = cpu->r[31] + 0x00000128u;
|
|
/* 027F3900 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 027F3904 */ _t25 = cpu->r[1] + 0x00000054u;
|
|
/* 027F3904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F3908 */ _t26 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3908 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F390C */ cpu->lr = cpu->r[0];
|
|
/* 027F3910 */ _t27 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F3914 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F3918 */ return;
|
|
}
|
|
|
|
// fn_027F3854 @ 0x27f3854
|
|
void Gambit_fn_027F3854(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_027F3854: ; // 0x27f3854
|
|
/* 027F3854 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 027F3854 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F3854 */ cpu->r[1] = _t0;
|
|
/* 027F3858 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3858 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F385C */ cpu->r[31] = cpu->r[4];
|
|
/* 027F3860 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3860 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F3864 */ cpu->r[5] = cpu->r[31];
|
|
/* 027F3868 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F386C */ cpu->r[30] = cpu->r[3];
|
|
/* 027F3870 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 027F3870 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F3874 */ Gambit_fn_027F2A54(cpu);
|
|
/* 027F3878 */ /* nop */
|
|
/* 027F387C */ /* nop */
|
|
/* 027F3880 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 027F3880 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 027F3884 */ /* nop */
|
|
/* 027F3888 */ _t5 = cpu->r[31] + 0x00000110u;
|
|
/* 027F3888 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 027F388C */ /* nop */
|
|
/* 027F3890 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3890 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F3894 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3894 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F3898 */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 027F3898 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 027F389C */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 027F38A0 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 027F38A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027F38A4 */ /* nop */
|
|
/* 027F38A8 */ _t10 = cpu->r[30] + 0x00000010u;
|
|
/* 027F38A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027F38AC */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027F38AC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[11]);
|
|
/* 027F38B0 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027F38B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F38B4 */ /* nop */
|
|
/* 027F38B8 */ _t13 = cpu->r[31] + 0x00000128u;
|
|
/* 027F38B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 027F38BC */ /* nop */
|
|
/* 027F38C0 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 027F38C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F38C4 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 027F38C4 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027F38C8 */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 027F38C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027F38CC */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 027F38CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F38D0 */ cpu->f[13] = cpu->f[0] * cpu->f[10];
|
|
/* 027F38D4 */ _t18 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F38D4 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
/* 027F38D8 */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 027F38D8 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 027F38DC */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F38DC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 027F38E0 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F38E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F38E4 */ /* nop */
|
|
/* 027F38E8 */ _t22 = cpu->r[1] + 0x00000040u;
|
|
/* 027F38E8 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 027F38EC */ _t23 = cpu->r[1] + 0x00000040u;
|
|
/* 027F38EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027F38F0 */ /* nop */
|
|
/* 027F38F4 */ cpu->f[12] = cpu->f[12] + cpu->f[0];
|
|
/* 027F38F8 */ /* nop */
|
|
/* 027F38FC */ /* nop */
|
|
/* 027F3900 */ _t24 = cpu->r[31] + 0x00000128u;
|
|
/* 027F3900 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 027F3904 */ _t25 = cpu->r[1] + 0x00000054u;
|
|
/* 027F3904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F3908 */ _t26 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3908 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F390C */ cpu->lr = cpu->r[0];
|
|
/* 027F3910 */ _t27 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F3914 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 027F3918 */ return;
|
|
}
|
|
|
|
// fn_027F391C @ 0x27f391c
|
|
void Gambit_fn_027F391C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0200D42C: ; // 0x200d42c
|
|
/* 0200D42C */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0200D430 */ _t0 = cpu->r[4] + cpu->r[0];
|
|
/* 0200D430 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0200D434 */ cpu->r[12] = cpu->r[4] + cpu->r[0];
|
|
/* 0200D438 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0200D438 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 0200D43C */ _t2 = cpu->r[12] + 0x00000010u;
|
|
/* 0200D43C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0200D440 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0200D440 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 0200D444 */ _t4 = cpu->r[12] + 0x00000020u;
|
|
/* 0200D444 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0200D448 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0200D448 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 0200D44C */ return;
|
|
L_0200D450: ; // 0x200d450
|
|
/* 0200D450 */ cpu->r[5] = 0x00000003u;
|
|
/* 0200D454 */ goto L_0200D42C;
|
|
L_027F391C: ; // 0x27f391c
|
|
/* 027F391C */ _t6 = cpu->r[3] + 0x00000044u;
|
|
/* 027F391C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F3920 */ cpu->r[12] = cpu->r[4];
|
|
/* 027F3924 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 027F3928 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3928 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F3928 */ if (_t8) goto L_027F392C; else goto L_027F3938;
|
|
L_027F392C: ; // 0x27f392c
|
|
/* 027F392C */ cpu->r[4] = cpu->r[3] + 0x00000048u;
|
|
/* 027F3930 */ cpu->r[3] = cpu->r[12] + 0x00000108u;
|
|
/* 027F3934 */ goto L_0200D450;
|
|
L_027F3938: ; // 0x27f3938
|
|
/* 027F3938 */ _t9 = cpu->r[12] + 0x00000110u;
|
|
/* 027F3938 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027F393C */ _t10 = cpu->r[12] + 0x0000011Cu;
|
|
/* 027F393C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027F3940 */ /* nop */
|
|
/* 027F3944 */ cpu->f[0] = cpu->f[0] + cpu->f[12];
|
|
/* 027F3948 */ /* nop */
|
|
/* 027F394C */ /* nop */
|
|
/* 027F3950 */ _t11 = cpu->r[12] + 0x00000110u;
|
|
/* 027F3950 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 027F3954 */ /* nop */
|
|
/* 027F3958 */ return;
|
|
}
|
|
|
|
// fn_027F395C @ 0x27f395c
|
|
void Gambit_fn_027F395C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _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, _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;
|
|
double _ft53, _ft54, _ft62, _ft63, _ft126, _ft127;
|
|
|
|
L_027F395C: ; // 0x27f395c
|
|
/* 027F395C */ _t0 = cpu->r[1] + 0xFFFFFF28u;
|
|
/* 027F395C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F395C */ cpu->r[1] = _t0;
|
|
/* 027F3960 */ cpu->r[0] = cpu->lr;
|
|
/* 027F3964 */ _t1 = cpu->r[1] + 0x000000B8u;
|
|
/* 027F3964 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 027F3968 */ /* nop */
|
|
/* 027F396C */ _t2 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F396C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 027F3970 */ _t3 = cpu->r[1] + 0x000000C8u;
|
|
/* 027F3970 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 027F3974 */ /* nop */
|
|
/* 027F3978 */ _t4 = cpu->r[1] + 0x000000C0u;
|
|
/* 027F3978 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 027F397C */ /* nop */
|
|
/* 027F3980 */ _t5 = cpu->r[1] + 0x000000B0u;
|
|
/* 027F3980 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 027F3984 */ _t6 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F3984 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 027F3988 */ _t7 = cpu->r[1] + 0x000000DCu;
|
|
/* 027F3988 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F398C */ _t8 = cpu->r[1] + 0x000000D0u;
|
|
/* 027F398C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 027F3990 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F3994 */ _t9 = cpu->r[1] + 0x000000A4u;
|
|
/* 027F3994 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 027F3998 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 027F3998 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F399C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F39A0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F39A0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F39A0 */ if (_t12) goto L_027F3D44; else goto L_027F39A4;
|
|
L_027F39A4: ; // 0x27f39a4
|
|
/* 027F39A4 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 027F39A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F39A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F39AC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F39AC */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F39AC */ if (_t15) goto L_027F3D44; else goto L_027F39B0;
|
|
L_027F39B0: ; // 0x27f39b0
|
|
/* 027F39B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F39B4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F39B4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F39B4 */ if (_t17) goto L_027F39BC; else goto L_027F39B8;
|
|
L_027F39B8: ; // 0x27f39b8
|
|
/* 027F39B8 */ cpu->r[31] = cpu->r[0];
|
|
L_027F39BC: ; // 0x27f39bc
|
|
/* 027F39BC */ cpu->r[4] = cpu->r[1] + 0x00000084u;
|
|
/* 027F39C0 */ cpu->r[5] = cpu->r[31];
|
|
/* 027F39C4 */ Gambit_fn_027F2A90(cpu);
|
|
/* 027F39C8 */ /* nop */
|
|
/* 027F39CC */ /* nop */
|
|
/* 027F39D0 */ _t18 = cpu->r[1] + 0x0000008Cu;
|
|
/* 027F39D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 027F39D4 */ /* nop */
|
|
/* 027F39D8 */ /* nop */
|
|
/* 027F39DC */ _t19 = cpu->r[31] + 0x00000110u;
|
|
/* 027F39DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 027F39E0 */ _t20 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F39E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F39E4 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 027F39E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F39E8 */ _t22 = cpu->r[1] + 0x00000060u;
|
|
/* 027F39E8 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 027F39EC */ _t23 = cpu->r[1] + 0x00000060u;
|
|
/* 027F39EC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027F39F0 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 027F39F4 */ _t24 = cpu->r[1] + 0x00000064u;
|
|
/* 027F39F4 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 027F39F8 */ _t25 = cpu->r[1] + 0x00000064u;
|
|
/* 027F39F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 027F39FC */ _t26 = cpu->r[1] + 0x00000074u;
|
|
/* 027F39FC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[10]);
|
|
/* 027F3A00 */ _t27 = cpu->r[1] + 0x00000074u;
|
|
/* 027F3A00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F3A04 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3A04 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[6]);
|
|
/* 027F3A08 */ _t29 = cpu->r[1] + 0x00000068u;
|
|
/* 027F3A08 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 027F3A0C */ _t30 = cpu->r[1] + 0x00000068u;
|
|
/* 027F3A0C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 027F3A10 */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 027F3A10 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 027F3A14 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F3A14 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[8]);
|
|
/* 027F3A18 */ /* nop */
|
|
/* 027F3A1C */ /* nop */
|
|
/* 027F3A20 */ cpu->r[8] = 0x10110000u;
|
|
/* 027F3A24 */ _t33 = cpu->r[30] + 0x00000110u;
|
|
/* 027F3A24 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 027F3A28 */ /* nop */
|
|
/* 027F3A2C */ _t34 = cpu->r[8] + 0x000004FCu;
|
|
/* 027F3A2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 027F3A30 */ /* nop */
|
|
/* 027F3A34 */ _t35 = cpu->r[31] + 0x00000110u;
|
|
/* 027F3A34 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 027F3A38 */ _t36 = cpu->r[1] + 0x00000078u;
|
|
/* 027F3A38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F3A3C */ _t37 = cpu->r[1] + 0x0000007Cu;
|
|
/* 027F3A3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F3A40 */ _t38 = cpu->r[1] + 0x00000060u;
|
|
/* 027F3A40 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 027F3A44 */ cpu->f[13] = cpu->f[7] - cpu->f[9];
|
|
/* 027F3A48 */ _t39 = cpu->r[1] + 0x00000060u;
|
|
/* 027F3A48 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 027F3A4C */ cpu->f[0] = cpu->f[0] * cpu->f[0];
|
|
/* 027F3A50 */ _t40 = cpu->r[1] + 0x00000064u;
|
|
/* 027F3A50 */ rbrew_write32(cpu->mem, _t40, cpu->r[12]);
|
|
/* 027F3A54 */ _t41 = cpu->r[1] + 0x00000064u;
|
|
/* 027F3A54 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 027F3A58 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F3A5C */ _t42 = cpu->r[1] + 0x00000080u;
|
|
/* 027F3A5C */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
/* 027F3A60 */ cpu->f[9] = fma(cpu->f[6], cpu->f[6], cpu->f[0]);
|
|
/* 027F3A64 */ _t43 = cpu->r[1] + 0x00000080u;
|
|
/* 027F3A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F3A68 */ _t44 = cpu->r[11] + 0x000004F8u;
|
|
/* 027F3A68 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 027F3A6C */ cpu->f[9] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 027F3A70 */ _t45 = cpu->r[1] + 0x00000068u;
|
|
/* 027F3A70 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 027F3A74 */ _t46 = cpu->r[1] + 0x00000068u;
|
|
/* 027F3A74 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 027F3A78 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F3A7C */ _t47 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3A7C */ rbrew_write_f32(cpu->mem, _t47, cpu->f[7]);
|
|
/* 027F3A80 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 027F3A84 */ _t48 = cpu->r[12] + 0x00000504u;
|
|
/* 027F3A84 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 027F3A88 */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3A88 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[10]);
|
|
/* 027F3A8C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3A8C */ rbrew_write_f32(cpu->mem, _t50, cpu->f[12]);
|
|
/* 027F3A90 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3A90 */ _t52 = _t51 & 0x00000001u;
|
|
/* 027F3A90 */ if (_t52) goto L_027F3A94; else goto L_027F3ACC;
|
|
L_027F3A94: ; // 0x27f3a94
|
|
/* 027F3A94 */ _ft53 = sqrt(cpu->f[9]);
|
|
/* 027F3A94 */ _ft54 = (double)(int32_t)0x00000001u;
|
|
/* 027F3A94 */ cpu->f[11] = _ft54 / _ft53;
|
|
/* 027F3A98 */ cpu->f[13] = cpu->f[11] * cpu->f[11];
|
|
/* 027F3A9C */ cpu->f[0] = cpu->f[11] * cpu->f[29];
|
|
/* 027F3AA0 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[9], -(cpu->f[30]));
|
|
/* 027F3AA4 */ cpu->f[11] = cpu->f[13] * cpu->f[0];
|
|
/* 027F3AA8 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F3AA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 027F3AAC */ /* nop */
|
|
/* 027F3AB0 */ cpu->f[0] = cpu->f[0] * cpu->f[11];
|
|
/* 027F3AB4 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3AB4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 027F3AB8 */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3AB8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 027F3ABC */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F3ABC */ rbrew_write_f32(cpu->mem, _t58, cpu->f[0]);
|
|
/* 027F3AC0 */ /* nop */
|
|
/* 027F3AC4 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3AC4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 027F3AC8 */ /* nop */
|
|
L_027F3ACC: ; // 0x27f3acc
|
|
/* 027F3ACC */ cpu->f[8] = cpu->f[7] * cpu->f[7];
|
|
/* 027F3AD0 */ cpu->f[9] = fma(cpu->f[12], cpu->f[12], cpu->f[8]);
|
|
/* 027F3AD4 */ cpu->f[7] = fma(cpu->f[10], cpu->f[10], cpu->f[9]);
|
|
/* 027F3AD8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 027F3ADC */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3ADC */ _t61 = _t60 & 0x00000001u;
|
|
/* 027F3ADC */ if (_t61) goto L_027F3AE0; else goto L_027F3B0C;
|
|
L_027F3AE0: ; // 0x27f3ae0
|
|
/* 027F3AE0 */ _ft62 = sqrt(cpu->f[7]);
|
|
/* 027F3AE0 */ _ft63 = (double)(int32_t)0x00000001u;
|
|
/* 027F3AE0 */ cpu->f[8] = _ft63 / _ft62;
|
|
/* 027F3AE4 */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 027F3AE8 */ cpu->f[10] = cpu->f[8] * cpu->f[29];
|
|
/* 027F3AEC */ cpu->f[9] = -fma(cpu->f[9], cpu->f[7], -(cpu->f[30]));
|
|
/* 027F3AF0 */ cpu->f[8] = cpu->f[9] * cpu->f[10];
|
|
/* 027F3AF4 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3AF4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 027F3AF8 */ /* nop */
|
|
/* 027F3AFC */ cpu->f[12] = cpu->f[12] * cpu->f[8];
|
|
/* 027F3B00 */ /* nop */
|
|
/* 027F3B04 */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3B04 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 027F3B08 */ /* nop */
|
|
L_027F3B0C: ; // 0x27f3b0c
|
|
/* 027F3B0C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027F3B10 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F3B14 */ cpu->r[5] = cpu->r[1] + 0x00000090u;
|
|
/* 027F3B18 */ Gambit_fn_02C692EC(cpu);
|
|
/* 027F3B1C */ /* nop */
|
|
/* 027F3B20 */ /* nop */
|
|
/* 027F3B24 */ /* nop */
|
|
/* 027F3B28 */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3B28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 027F3B2C */ /* nop */
|
|
/* 027F3B30 */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F3B30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 027F3B34 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F3B38 */ cpu->f[7] = fma(cpu->f[13], cpu->f[0], cpu->f[9]);
|
|
/* 027F3B3C */ _t68 = cpu->r[9] + 0x0000050Cu;
|
|
/* 027F3B3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 027F3B40 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F3B44 */ cpu->f[11] = cpu->f[7] + cpu->f[13];
|
|
/* 027F3B48 */ _t69 = cpu->r[12] + 0x00000508u;
|
|
/* 027F3B48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 027F3B4C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 027F3B50 */ _t70 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3B50 */ _t71 = _t70 & 0x00000001u;
|
|
/* 027F3B50 */ if (_t71) goto L_027F3C34; else goto L_027F3B54;
|
|
L_027F3B54: ; // 0x27f3b54
|
|
/* 027F3B54 */ _t72 = cpu->r[1] + 0x00000024u;
|
|
/* 027F3B54 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[31]);
|
|
/* 027F3B58 */ _t73 = cpu->r[1] + 0x00000020u;
|
|
/* 027F3B58 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[31]);
|
|
/* 027F3B5C */ _t74 = cpu->r[1] + 0x00000028u;
|
|
/* 027F3B5C */ rbrew_write_f32(cpu->mem, _t74, cpu->f[31]);
|
|
/* 027F3B60 */ _t75 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F3B60 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[13]);
|
|
/* 027F3B64 */ _t76 = cpu->r[31] + 0x000000C0u;
|
|
/* 027F3B64 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 027F3B68 */ _t77 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F3B68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 027F3B6C */ _t78 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F3B6C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 027F3B70 */ _t79 = cpu->r[1] + 0x00000030u;
|
|
/* 027F3B70 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[13]);
|
|
/* 027F3B74 */ _t80 = cpu->r[1] + 0x00000038u;
|
|
/* 027F3B74 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[8]);
|
|
/* 027F3B78 */ _t81 = cpu->r[1] + 0x00000034u;
|
|
/* 027F3B78 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[7]);
|
|
/* 027F3B7C */ _t82 = cpu->r[31] + 0x000000C4u;
|
|
/* 027F3B7C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 027F3B80 */ _t83 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F3B80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 027F3B84 */ _t84 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F3B84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 027F3B88 */ _t85 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F3B88 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[12]);
|
|
/* 027F3B8C */ _t86 = cpu->r[1] + 0x00000044u;
|
|
/* 027F3B8C */ rbrew_write_f32(cpu->mem, _t86, cpu->f[8]);
|
|
/* 027F3B90 */ _t87 = cpu->r[1] + 0x00000040u;
|
|
/* 027F3B90 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[0]);
|
|
/* 027F3B94 */ _t88 = cpu->r[31] + 0x000000C8u;
|
|
/* 027F3B94 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 027F3B98 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F3B98 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 027F3B9C */ _t90 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F3B9C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 027F3BA0 */ _t91 = cpu->r[1] + 0x00000050u;
|
|
/* 027F3BA0 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[12]);
|
|
/* 027F3BA4 */ _t92 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3BA4 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[11]);
|
|
/* 027F3BA8 */ _t93 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3BA8 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[10]);
|
|
/* 027F3BAC */ _t94 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F3BAC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 027F3BB0 */ _t95 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F3BB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 027F3BB4 */ _t96 = cpu->r[31] + 0x000000CCu;
|
|
/* 027F3BB4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 027F3BB8 */ _t97 = cpu->r[1] + 0x00000054u;
|
|
/* 027F3BB8 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[13]);
|
|
/* 027F3BBC */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 027F3BC0 */ _t98 = cpu->r[1] + 0x00000058u;
|
|
/* 027F3BC0 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[8]);
|
|
/* 027F3BC4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027F3BC8 */ _t99 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F3BC8 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[10]);
|
|
/* 027F3BCC */ Gambit_fn_0204D960(cpu);
|
|
/* 027F3BD0 */ _t100 = cpu->r[1] + 0x00000030u;
|
|
/* 027F3BD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 027F3BD4 */ _t101 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F3BD4 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[13]);
|
|
/* 027F3BD8 */ _t102 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F3BD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 027F3BDC */ _t103 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F3BDC */ rbrew_write_f32(cpu->mem, _t103, cpu->f[0]);
|
|
/* 027F3BE0 */ _t104 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3BE0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 027F3BE4 */ _t105 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F3BE4 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[7]);
|
|
/* 027F3BE8 */ _t106 = cpu->r[1] + 0x00000054u;
|
|
/* 027F3BE8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 027F3BEC */ _t107 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F3BEC */ rbrew_write_f32(cpu->mem, _t107, cpu->f[8]);
|
|
/* 027F3BF0 */ _t108 = cpu->r[1] + 0x00000034u;
|
|
/* 027F3BF0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 027F3BF4 */ _t109 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F3BF4 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[9]);
|
|
/* 027F3BF8 */ _t110 = cpu->r[1] + 0x00000040u;
|
|
/* 027F3BF8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 027F3BFC */ _t111 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F3BFC */ rbrew_write_f32(cpu->mem, _t111, cpu->f[10]);
|
|
/* 027F3C00 */ _t112 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3C00 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 027F3C04 */ _t113 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F3C04 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[11]);
|
|
/* 027F3C08 */ _t114 = cpu->r[1] + 0x00000058u;
|
|
/* 027F3C08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 027F3C0C */ _t115 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F3C0C */ rbrew_write_f32(cpu->mem, _t115, cpu->f[12]);
|
|
/* 027F3C10 */ _t116 = cpu->r[1] + 0x00000038u;
|
|
/* 027F3C10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 027F3C14 */ _t117 = cpu->r[31] + 0x000000C0u;
|
|
/* 027F3C14 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[13]);
|
|
/* 027F3C18 */ _t118 = cpu->r[1] + 0x00000044u;
|
|
/* 027F3C18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 027F3C1C */ _t119 = cpu->r[31] + 0x000000C4u;
|
|
/* 027F3C1C */ rbrew_write_f32(cpu->mem, _t119, cpu->f[0]);
|
|
/* 027F3C20 */ _t120 = cpu->r[1] + 0x00000050u;
|
|
/* 027F3C20 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 027F3C24 */ _t121 = cpu->r[31] + 0x000000C8u;
|
|
/* 027F3C24 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[7]);
|
|
/* 027F3C28 */ _t122 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F3C28 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 027F3C2C */ _t123 = cpu->r[31] + 0x000000CCu;
|
|
/* 027F3C2C */ rbrew_write_f32(cpu->mem, _t123, cpu->f[8]);
|
|
/* 027F3C30 */ goto L_027F3D44;
|
|
L_027F3C34: ; // 0x27f3c34
|
|
/* 027F3C34 */ cpu->f[12] = cpu->f[11] + cpu->f[11];
|
|
/* 027F3C38 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 027F3C3C */ _t124 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F3C3C */ _t125 = _t124 & 0x00000001u;
|
|
/* 027F3C3C */ if (_t125) goto L_027F3C40; else goto L_027F3C54;
|
|
L_027F3C40: ; // 0x27f3c40
|
|
/* 027F3C40 */ _ft126 = sqrt(cpu->f[12]);
|
|
/* 027F3C40 */ _ft127 = (double)(int32_t)0x00000001u;
|
|
/* 027F3C40 */ cpu->f[31] = _ft127 / _ft126;
|
|
/* 027F3C44 */ cpu->f[13] = cpu->f[31] * cpu->f[31];
|
|
/* 027F3C48 */ cpu->f[0] = cpu->f[31] * cpu->f[29];
|
|
/* 027F3C4C */ cpu->f[13] = -fma(cpu->f[13], cpu->f[12], -(cpu->f[30]));
|
|
/* 027F3C50 */ cpu->f[31] = cpu->f[13] * cpu->f[0];
|
|
L_027F3C54: ; // 0x27f3c54
|
|
/* 027F3C54 */ _t128 = cpu->r[1] + 0x00000098u;
|
|
/* 027F3C54 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 027F3C58 */ cpu->f[12] = cpu->f[12] * cpu->f[31];
|
|
/* 027F3C5C */ /* nop */
|
|
/* 027F3C60 */ cpu->f[10] = cpu->f[11] * cpu->f[31];
|
|
/* 027F3C64 */ /* nop */
|
|
/* 027F3C68 */ _t129 = cpu->r[1] + 0x00000028u;
|
|
/* 027F3C68 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[10]);
|
|
/* 027F3C6C */ cpu->f[12] = cpu->f[12] * cpu->f[29];
|
|
/* 027F3C70 */ /* nop */
|
|
/* 027F3C74 */ _t130 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F3C74 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[12]);
|
|
/* 027F3C78 */ _t131 = cpu->r[31] + 0x000000C0u;
|
|
/* 027F3C78 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 027F3C7C */ _t132 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F3C7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 027F3C80 */ _t133 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F3C80 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 027F3C84 */ _t134 = cpu->r[1] + 0x00000030u;
|
|
/* 027F3C84 */ rbrew_write_f32(cpu->mem, _t134, cpu->f[13]);
|
|
/* 027F3C88 */ _t135 = cpu->r[1] + 0x00000038u;
|
|
/* 027F3C88 */ rbrew_write_f32(cpu->mem, _t135, cpu->f[8]);
|
|
/* 027F3C8C */ _t136 = cpu->r[1] + 0x00000034u;
|
|
/* 027F3C8C */ rbrew_write_f32(cpu->mem, _t136, cpu->f[7]);
|
|
/* 027F3C90 */ _t137 = cpu->r[31] + 0x000000C4u;
|
|
/* 027F3C90 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 027F3C94 */ _t138 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F3C94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 027F3C98 */ _t139 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F3C98 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 027F3C9C */ _t140 = cpu->r[1] + 0x00000044u;
|
|
/* 027F3C9C */ rbrew_write_f32(cpu->mem, _t140, cpu->f[8]);
|
|
/* 027F3CA0 */ _t141 = cpu->r[1] + 0x00000040u;
|
|
/* 027F3CA0 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[0]);
|
|
/* 027F3CA4 */ _t142 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F3CA4 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[12]);
|
|
/* 027F3CA8 */ _t143 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F3CA8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 027F3CAC */ _t144 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F3CAC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 027F3CB0 */ _t145 = cpu->r[31] + 0x000000C8u;
|
|
/* 027F3CB0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 027F3CB4 */ _t146 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3CB4 */ rbrew_write_f32(cpu->mem, _t146, cpu->f[10]);
|
|
/* 027F3CB8 */ _t147 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3CB8 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[11]);
|
|
/* 027F3CBC */ _t148 = cpu->r[1] + 0x00000050u;
|
|
/* 027F3CBC */ rbrew_write_f32(cpu->mem, _t148, cpu->f[12]);
|
|
/* 027F3CC0 */ _t149 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F3CC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 027F3CC4 */ _t150 = cpu->r[31] + 0x000000CCu;
|
|
/* 027F3CC4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 027F3CC8 */ _t151 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F3CC8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 027F3CCC */ _t152 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F3CCC */ rbrew_write_f32(cpu->mem, _t152, cpu->f[10]);
|
|
/* 027F3CD0 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 027F3CD4 */ _t153 = cpu->r[1] + 0x00000054u;
|
|
/* 027F3CD4 */ rbrew_write_f32(cpu->mem, _t153, cpu->f[13]);
|
|
/* 027F3CD8 */ _t154 = cpu->r[1] + 0x00000058u;
|
|
/* 027F3CD8 */ rbrew_write_f32(cpu->mem, _t154, cpu->f[8]);
|
|
/* 027F3CDC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027F3CE0 */ Gambit_fn_0204D960(cpu);
|
|
/* 027F3CE4 */ _t155 = cpu->r[1] + 0x00000030u;
|
|
/* 027F3CE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 027F3CE8 */ _t156 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F3CE8 */ rbrew_write_f32(cpu->mem, _t156, cpu->f[13]);
|
|
/* 027F3CEC */ _t157 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F3CEC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 027F3CF0 */ _t158 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F3CF0 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[0]);
|
|
/* 027F3CF4 */ _t159 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3CF4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 027F3CF8 */ _t160 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F3CF8 */ rbrew_write_f32(cpu->mem, _t160, cpu->f[7]);
|
|
/* 027F3CFC */ _t161 = cpu->r[1] + 0x00000054u;
|
|
/* 027F3CFC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 027F3D00 */ _t162 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F3D00 */ rbrew_write_f32(cpu->mem, _t162, cpu->f[8]);
|
|
/* 027F3D04 */ _t163 = cpu->r[1] + 0x00000034u;
|
|
/* 027F3D04 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 027F3D08 */ _t164 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F3D08 */ rbrew_write_f32(cpu->mem, _t164, cpu->f[9]);
|
|
/* 027F3D0C */ _t165 = cpu->r[1] + 0x00000040u;
|
|
/* 027F3D0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 027F3D10 */ _t166 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F3D10 */ rbrew_write_f32(cpu->mem, _t166, cpu->f[10]);
|
|
/* 027F3D14 */ _t167 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3D14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 027F3D18 */ _t168 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F3D18 */ rbrew_write_f32(cpu->mem, _t168, cpu->f[11]);
|
|
/* 027F3D1C */ _t169 = cpu->r[1] + 0x00000058u;
|
|
/* 027F3D1C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 027F3D20 */ _t170 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F3D20 */ rbrew_write_f32(cpu->mem, _t170, cpu->f[12]);
|
|
/* 027F3D24 */ _t171 = cpu->r[1] + 0x00000038u;
|
|
/* 027F3D24 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 027F3D28 */ _t172 = cpu->r[31] + 0x000000C0u;
|
|
/* 027F3D28 */ rbrew_write_f32(cpu->mem, _t172, cpu->f[13]);
|
|
/* 027F3D2C */ _t173 = cpu->r[1] + 0x00000044u;
|
|
/* 027F3D2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 027F3D30 */ _t174 = cpu->r[31] + 0x000000C4u;
|
|
/* 027F3D30 */ rbrew_write_f32(cpu->mem, _t174, cpu->f[0]);
|
|
/* 027F3D34 */ _t175 = cpu->r[1] + 0x00000050u;
|
|
/* 027F3D34 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 027F3D38 */ _t176 = cpu->r[31] + 0x000000C8u;
|
|
/* 027F3D38 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[7]);
|
|
/* 027F3D3C */ _t177 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F3D3C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 027F3D40 */ _t178 = cpu->r[31] + 0x000000CCu;
|
|
/* 027F3D40 */ rbrew_write_f32(cpu->mem, _t178, cpu->f[8]);
|
|
L_027F3D44: ; // 0x27f3d44
|
|
/* 027F3D44 */ _t179 = cpu->r[1] + 0x000000D0u;
|
|
/* 027F3D44 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 027F3D48 */ _t180 = cpu->r[1] + 0x000000B0u;
|
|
/* 027F3D48 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 027F3D4C */ _t181 = cpu->r[1] + 0x000000C8u;
|
|
/* 027F3D4C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t181);
|
|
/* 027F3D50 */ _t182 = cpu->r[1] + 0x000000C0u;
|
|
/* 027F3D50 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 027F3D54 */ _t183 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F3D54 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t183);
|
|
/* 027F3D58 */ _t184 = cpu->r[1] + 0x000000B8u;
|
|
/* 027F3D58 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t184);
|
|
/* 027F3D5C */ _t185 = cpu->r[1] + 0x000000A4u;
|
|
/* 027F3D5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t185);
|
|
/* 027F3D60 */ _t186 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F3D60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t186);
|
|
/* 027F3D64 */ _t187 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F3D64 */ _t188 = _t187 & 0x00000001u;
|
|
/* 027F3D64 */ if (_t188) goto L_027F3D68; // else: addr-0 trap, fall-through
|
|
L_027F3D68: ; // 0x27f3d68
|
|
/* 027F3D68 */ _t189 = cpu->r[1] + 0x000000DCu;
|
|
/* 027F3D68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t189);
|
|
/* 027F3D6C */ cpu->lr = cpu->r[0];
|
|
/* 027F3D70 */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 027F3D74 */ return;
|
|
}
|
|
|
|
// fn_027F3D78 @ 0x27f3d78
|
|
void Gambit_fn_027F3D78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F3D78: ; // 0x27f3d78
|
|
/* 027F3D78 */ cpu->r[0] = cpu->lr;
|
|
/* 027F3D7C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F3D7C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F3D80 */ _t1 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 027F3D80 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F3D80 */ cpu->r[1] = _t1;
|
|
/* 027F3D84 */ _t2 = cpu->r[3] + 0x00000044u;
|
|
/* 027F3D84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F3D88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F3D8C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3D8C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F3D8C */ if (_t4) goto L_027F3E78; else goto L_027F3D90;
|
|
L_027F3D90: ; // 0x27f3d90
|
|
/* 027F3D90 */ _t5 = cpu->r[4] + 0x00000000u;
|
|
/* 027F3D90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F3D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F3D98 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3D98 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F3D98 */ if (_t7) goto L_027F3DA0; else goto L_027F3D9C;
|
|
L_027F3D9C: ; // 0x27f3d9c
|
|
/* 027F3D9C */ _t8 = cpu->r[12] + 0x00000010u;
|
|
/* 027F3D9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
L_027F3DA0: ; // 0x27f3da0
|
|
/* 027F3DA0 */ _t9 = cpu->r[12] + 0x000000B0u;
|
|
/* 027F3DA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027F3DA4 */ _t10 = cpu->r[12] + 0x000000A0u;
|
|
/* 027F3DA4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027F3DA8 */ _t11 = cpu->r[12] + 0x000000C0u;
|
|
/* 027F3DA8 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 027F3DAC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3DAC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 027F3DB0 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 027F3DB0 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 027F3DB4 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F3DB4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[4]);
|
|
/* 027F3DB8 */ _t15 = cpu->r[12] + 0x000000C4u;
|
|
/* 027F3DB8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027F3DBC */ _t16 = cpu->r[12] + 0x000000A4u;
|
|
/* 027F3DBC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027F3DC0 */ _t17 = cpu->r[12] + 0x000000B4u;
|
|
/* 027F3DC0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 027F3DC4 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 027F3DC4 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 027F3DC8 */ _t19 = cpu->r[1] + 0x00000028u;
|
|
/* 027F3DC8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[5]);
|
|
/* 027F3DCC */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 027F3DCC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 027F3DD0 */ _t21 = cpu->r[12] + 0x000000A8u;
|
|
/* 027F3DD0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 027F3DD4 */ _t22 = cpu->r[12] + 0x000000B8u;
|
|
/* 027F3DD4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 027F3DD8 */ _t23 = cpu->r[12] + 0x000000C8u;
|
|
/* 027F3DD8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027F3DDC */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 027F3DDC */ rbrew_write_f32(cpu->mem, _t24, cpu->f[10]);
|
|
/* 027F3DE0 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F3DE0 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 027F3DE4 */ _t26 = cpu->r[1] + 0x00000034u;
|
|
/* 027F3DE4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[6]);
|
|
/* 027F3DE8 */ _t27 = cpu->r[12] + 0x000000CCu;
|
|
/* 027F3DE8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 027F3DEC */ _t28 = cpu->r[12] + 0x000000ACu;
|
|
/* 027F3DEC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 027F3DF0 */ _t29 = cpu->r[12] + 0x000000BCu;
|
|
/* 027F3DF0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 027F3DF4 */ _t30 = cpu->r[1] + 0x00000038u;
|
|
/* 027F3DF4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[10]);
|
|
/* 027F3DF8 */ _t31 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F3DF8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[11]);
|
|
/* 027F3DFC */ /* nop */
|
|
/* 027F3E00 */ /* nop */
|
|
/* 027F3E04 */ _t32 = cpu->r[4] + 0x00000110u;
|
|
/* 027F3E04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 027F3E08 */ /* nop */
|
|
/* 027F3E0C */ /* nop */
|
|
/* 027F3E10 */ cpu->f[11] = cpu->f[13] - cpu->f[12];
|
|
/* 027F3E14 */ /* nop */
|
|
/* 027F3E18 */ /* nop */
|
|
/* 027F3E1C */ _t33 = cpu->r[4] + 0x00000064u;
|
|
/* 027F3E1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F3E20 */ /* nop */
|
|
/* 027F3E24 */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 027F3E24 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 027F3E28 */ /* nop */
|
|
/* 027F3E2C */ cpu->f[13] = fma(cpu->f[11], cpu->f[4], cpu->f[9]);
|
|
/* 027F3E30 */ /* nop */
|
|
/* 027F3E34 */ /* nop */
|
|
/* 027F3E38 */ _t35 = cpu->r[1] + 0x00000058u;
|
|
/* 027F3E38 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 027F3E3C */ cpu->f[12] = fma(cpu->f[11], cpu->f[5], cpu->f[0]);
|
|
/* 027F3E40 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3E40 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 027F3E44 */ /* nop */
|
|
/* 027F3E48 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3E48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F3E4C */ /* nop */
|
|
/* 027F3E50 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3E50 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 027F3E54 */ cpu->f[0] = fma(cpu->f[11], cpu->f[6], cpu->f[8]);
|
|
/* 027F3E58 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3E58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F3E5C */ _t40 = cpu->r[1] + 0x00000044u;
|
|
/* 027F3E5C */ rbrew_write32(cpu->mem, _t40, cpu->r[10]);
|
|
/* 027F3E60 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3E60 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 027F3E64 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3E64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F3E68 */ _t43 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3E68 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 027F3E6C */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 027F3E70 */ _t44 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3E70 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 027F3E74 */ Gambit_fn_021620C4(cpu);
|
|
L_027F3E78: ; // 0x27f3e78
|
|
/* 027F3E78 */ _t45 = cpu->r[1] + 0x00000064u;
|
|
/* 027F3E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F3E7C */ cpu->lr = cpu->r[0];
|
|
/* 027F3E80 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 027F3E84 */ return;
|
|
}
|
|
|
|
// fn_027F3D80 @ 0x27f3d80
|
|
void Gambit_fn_027F3D80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_027F3D80: ; // 0x27f3d80
|
|
/* 027F3D80 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 027F3D80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F3D80 */ cpu->r[1] = _t0;
|
|
/* 027F3D84 */ _t1 = cpu->r[3] + 0x00000044u;
|
|
/* 027F3D84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F3D88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F3D8C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3D8C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F3D8C */ if (_t3) goto L_027F3E78; else goto L_027F3D90;
|
|
L_027F3D90: ; // 0x27f3d90
|
|
/* 027F3D90 */ _t4 = cpu->r[4] + 0x00000000u;
|
|
/* 027F3D90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F3D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F3D98 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3D98 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F3D98 */ if (_t6) goto L_027F3DA0; else goto L_027F3D9C;
|
|
L_027F3D9C: ; // 0x27f3d9c
|
|
/* 027F3D9C */ _t7 = cpu->r[12] + 0x00000010u;
|
|
/* 027F3D9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
L_027F3DA0: ; // 0x27f3da0
|
|
/* 027F3DA0 */ _t8 = cpu->r[12] + 0x000000B0u;
|
|
/* 027F3DA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 027F3DA4 */ _t9 = cpu->r[12] + 0x000000A0u;
|
|
/* 027F3DA4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027F3DA8 */ _t10 = cpu->r[12] + 0x000000C0u;
|
|
/* 027F3DA8 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027F3DAC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3DAC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[12]);
|
|
/* 027F3DB0 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 027F3DB0 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 027F3DB4 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F3DB4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[4]);
|
|
/* 027F3DB8 */ _t14 = cpu->r[12] + 0x000000C4u;
|
|
/* 027F3DB8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 027F3DBC */ _t15 = cpu->r[12] + 0x000000A4u;
|
|
/* 027F3DBC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 027F3DC0 */ _t16 = cpu->r[12] + 0x000000B4u;
|
|
/* 027F3DC0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 027F3DC4 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 027F3DC4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 027F3DC8 */ _t18 = cpu->r[1] + 0x00000028u;
|
|
/* 027F3DC8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[5]);
|
|
/* 027F3DCC */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 027F3DCC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 027F3DD0 */ _t20 = cpu->r[12] + 0x000000A8u;
|
|
/* 027F3DD0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 027F3DD4 */ _t21 = cpu->r[12] + 0x000000B8u;
|
|
/* 027F3DD4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 027F3DD8 */ _t22 = cpu->r[12] + 0x000000C8u;
|
|
/* 027F3DD8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 027F3DDC */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 027F3DDC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[10]);
|
|
/* 027F3DE0 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F3DE0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[9]);
|
|
/* 027F3DE4 */ _t25 = cpu->r[1] + 0x00000034u;
|
|
/* 027F3DE4 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[6]);
|
|
/* 027F3DE8 */ _t26 = cpu->r[12] + 0x000000CCu;
|
|
/* 027F3DE8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F3DEC */ _t27 = cpu->r[12] + 0x000000ACu;
|
|
/* 027F3DEC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 027F3DF0 */ _t28 = cpu->r[12] + 0x000000BCu;
|
|
/* 027F3DF0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 027F3DF4 */ _t29 = cpu->r[1] + 0x00000038u;
|
|
/* 027F3DF4 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[10]);
|
|
/* 027F3DF8 */ _t30 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F3DF8 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[11]);
|
|
/* 027F3DFC */ /* nop */
|
|
/* 027F3E00 */ /* nop */
|
|
/* 027F3E04 */ _t31 = cpu->r[4] + 0x00000110u;
|
|
/* 027F3E04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 027F3E08 */ /* nop */
|
|
/* 027F3E0C */ /* nop */
|
|
/* 027F3E10 */ cpu->f[11] = cpu->f[13] - cpu->f[12];
|
|
/* 027F3E14 */ /* nop */
|
|
/* 027F3E18 */ /* nop */
|
|
/* 027F3E1C */ _t32 = cpu->r[4] + 0x00000064u;
|
|
/* 027F3E1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F3E20 */ /* nop */
|
|
/* 027F3E24 */ _t33 = cpu->r[1] + 0x00000040u;
|
|
/* 027F3E24 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 027F3E28 */ /* nop */
|
|
/* 027F3E2C */ cpu->f[13] = fma(cpu->f[11], cpu->f[4], cpu->f[9]);
|
|
/* 027F3E30 */ /* nop */
|
|
/* 027F3E34 */ /* nop */
|
|
/* 027F3E38 */ _t34 = cpu->r[1] + 0x00000058u;
|
|
/* 027F3E38 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 027F3E3C */ cpu->f[12] = fma(cpu->f[11], cpu->f[5], cpu->f[0]);
|
|
/* 027F3E40 */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3E40 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 027F3E44 */ /* nop */
|
|
/* 027F3E48 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3E48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F3E4C */ /* nop */
|
|
/* 027F3E50 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3E50 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 027F3E54 */ cpu->f[0] = fma(cpu->f[11], cpu->f[6], cpu->f[8]);
|
|
/* 027F3E58 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3E58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027F3E5C */ _t39 = cpu->r[1] + 0x00000044u;
|
|
/* 027F3E5C */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 027F3E60 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3E60 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 027F3E64 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 027F3E64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F3E68 */ _t42 = cpu->r[1] + 0x00000048u;
|
|
/* 027F3E68 */ rbrew_write32(cpu->mem, _t42, cpu->r[12]);
|
|
/* 027F3E6C */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 027F3E70 */ _t43 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F3E70 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 027F3E74 */ Gambit_fn_021620C4(cpu);
|
|
L_027F3E78: ; // 0x27f3e78
|
|
/* 027F3E78 */ _t44 = cpu->r[1] + 0x00000064u;
|
|
/* 027F3E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F3E7C */ cpu->lr = cpu->r[0];
|
|
/* 027F3E80 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 027F3E84 */ return;
|
|
}
|
|
|
|
// fn_027F3E88 @ 0x27f3e88
|
|
void Gambit_fn_027F3E88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027F29E4: ; // 0x27f29e4
|
|
/* 027F29E4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F29E8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F29E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F29EC */ cpu->r[10] = cpu->r[4];
|
|
/* 027F29F0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F29F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F29F0 */ cpu->r[1] = _t1;
|
|
/* 027F29F4 */ _t2 = cpu->r[3] + 0x00000044u;
|
|
/* 027F29F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F29F8 */ cpu->r[4] = cpu->r[5];
|
|
/* 027F29FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F2A00 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2A00 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F2A00 */ if (_t4) goto L_027F2A04; else goto L_027F2A20;
|
|
L_027F2A04: ; // 0x27f2a04
|
|
/* 027F2A04 */ cpu->r[3] = cpu->r[3] + 0x00000048u;
|
|
/* 027F2A08 */ cpu->r[4] = cpu->r[10];
|
|
/* 027F2A0C */ Gambit_fn_02C69510(cpu);
|
|
/* 027F2A10 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2A10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F2A14 */ cpu->lr = cpu->r[0];
|
|
/* 027F2A18 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A1C */ return;
|
|
L_027F2A20: ; // 0x27f2a20
|
|
/* 027F2A20 */ _t6 = cpu->r[4] + 0x00000000u;
|
|
/* 027F2A20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F2A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F2A28 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F2A28 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F2A28 */ if (_t8) goto L_027F2A30; else goto L_027F2A2C;
|
|
L_027F2A2C: ; // 0x27f2a2c
|
|
/* 027F2A2C */ _t9 = cpu->r[12] + 0x00000010u;
|
|
/* 027F2A2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
L_027F2A30: ; // 0x27f2a30
|
|
/* 027F2A30 */ Gambit_fn_027F2478(cpu);
|
|
/* 027F2A34 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F2A38 */ cpu->r[3] = cpu->r[12] + 0x000000A0u;
|
|
/* 027F2A3C */ cpu->r[5] = cpu->r[10];
|
|
/* 027F2A40 */ Gambit_fn_02C69544(cpu);
|
|
/* 027F2A44 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F2A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F2A48 */ cpu->lr = cpu->r[0];
|
|
/* 027F2A4C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F2A50 */ return;
|
|
L_027F3E88: ; // 0x27f3e88
|
|
/* 027F3E88 */ _t11 = cpu->r[3] + 0x00000044u;
|
|
/* 027F3E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F3E8C */ cpu->r[5] = cpu->r[4];
|
|
/* 027F3E90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 027F3E94 */ cpu->r[4] = cpu->r[5] + 0x000000A0u;
|
|
/* 027F3E98 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3E98 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F3E98 */ if (_t13) goto L_027F3E9C; else goto L_027F3EA4;
|
|
L_027F3E9C: ; // 0x27f3e9c
|
|
/* 027F3E9C */ cpu->r[3] = cpu->r[3] + 0x00000048u;
|
|
/* 027F3EA0 */ goto L_02C69510;
|
|
L_027F3EA4: ; // 0x27f3ea4
|
|
/* 027F3EA4 */ goto L_027F29E4;
|
|
L_02C69510: ; // 0x2c69510
|
|
/* 02C69510 */ /* nop */
|
|
/* 02C69514 */ /* nop */
|
|
/* 02C69518 */ /* nop */
|
|
/* 02C6951C */ /* nop */
|
|
/* 02C69520 */ /* nop */
|
|
/* 02C69524 */ /* nop */
|
|
/* 02C69528 */ /* nop */
|
|
/* 02C6952C */ /* nop */
|
|
/* 02C69530 */ /* nop */
|
|
/* 02C69534 */ /* nop */
|
|
/* 02C69538 */ /* nop */
|
|
/* 02C6953C */ /* nop */
|
|
/* 02C69540 */ return;
|
|
}
|
|
|
|
// fn_027F3EA8 @ 0x27f3ea8
|
|
void Gambit_fn_027F3EA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027F3EA8: ; // 0x27f3ea8
|
|
/* 027F3EA8 */ cpu->r[0] = cpu->lr;
|
|
/* 027F3EAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F3EAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F3EAC */ cpu->r[1] = _t0;
|
|
/* 027F3EB0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3EB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F3EB4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F3EB8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3EB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F3EBC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3EBC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F3EC0 */ Gambit_fn_027F2988(cpu);
|
|
/* 027F3EC4 */ _t4 = cpu->r[30] + 0x00000044u;
|
|
/* 027F3EC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F3EC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3ECC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3ECC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F3ECC */ if (_t6) goto L_027F3F34; else goto L_027F3ED0;
|
|
L_027F3ED0: ; // 0x27f3ed0
|
|
/* 027F3ED0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3ED4 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3ED8 */ Gambit_fn_027F3850(cpu);
|
|
/* 027F3EDC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3EE0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3EE4 */ Gambit_fn_027F2B18(cpu);
|
|
/* 027F3EE8 */ Gambit_fn_027F391C(cpu);
|
|
/* 027F3EEC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3EF0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3EF4 */ Gambit_fn_027F318C(cpu);
|
|
/* 027F3EF8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3EFC */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3F00 */ Gambit_fn_027F395C(cpu);
|
|
/* 027F3F04 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3F08 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3F0C */ Gambit_fn_027F3D78(cpu);
|
|
/* 027F3F10 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3F14 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3F18 */ Gambit_fn_027F3E88(cpu);
|
|
/* 027F3F1C */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 027F3F1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F3F20 */ cpu->r[31] = cpu->r[11];
|
|
/* 027F3F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3F24 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3F24 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F3F24 */ if (_t9) goto L_027F3F2C; else goto L_027F3F28;
|
|
L_027F3F28: ; // 0x27f3f28
|
|
/* 027F3F28 */ _t10 = cpu->r[11] + 0x00000010u;
|
|
/* 027F3F28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
L_027F3F2C: ; // 0x27f3f2c
|
|
/* 027F3F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3F30 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3F30 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F3F30 */ if (_t12) goto L_027F3F34; else goto L_027F3ED0;
|
|
L_027F3F34: ; // 0x27f3f34
|
|
/* 027F3F34 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3F34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F3F38 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3F38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F3F3C */ cpu->lr = cpu->r[0];
|
|
/* 027F3F40 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3F40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F3F44 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F3F48 */ return;
|
|
}
|
|
|
|
// fn_027F3EAC @ 0x27f3eac
|
|
void Gambit_fn_027F3EAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027F3EAC: ; // 0x27f3eac
|
|
/* 027F3EAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F3EAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F3EAC */ cpu->r[1] = _t0;
|
|
/* 027F3EB0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3EB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F3EB4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F3EB8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3EB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F3EBC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3EBC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F3EC0 */ Gambit_fn_027F2988(cpu);
|
|
/* 027F3EC4 */ _t4 = cpu->r[30] + 0x00000044u;
|
|
/* 027F3EC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F3EC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3ECC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3ECC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F3ECC */ if (_t6) goto L_027F3F34; else goto L_027F3ED0;
|
|
L_027F3ED0: ; // 0x27f3ed0
|
|
/* 027F3ED0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3ED4 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3ED8 */ Gambit_fn_027F3850(cpu);
|
|
/* 027F3EDC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3EE0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3EE4 */ Gambit_fn_027F2B18(cpu);
|
|
/* 027F3EE8 */ Gambit_fn_027F391C(cpu);
|
|
/* 027F3EEC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3EF0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3EF4 */ Gambit_fn_027F318C(cpu);
|
|
/* 027F3EF8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3EFC */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3F00 */ Gambit_fn_027F395C(cpu);
|
|
/* 027F3F04 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3F08 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3F0C */ Gambit_fn_027F3D78(cpu);
|
|
/* 027F3F10 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F3F14 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F3F18 */ Gambit_fn_027F3E88(cpu);
|
|
/* 027F3F1C */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 027F3F1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F3F20 */ cpu->r[31] = cpu->r[11];
|
|
/* 027F3F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3F24 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3F24 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F3F24 */ if (_t9) goto L_027F3F2C; else goto L_027F3F28;
|
|
L_027F3F28: ; // 0x27f3f28
|
|
/* 027F3F28 */ _t10 = cpu->r[11] + 0x00000010u;
|
|
/* 027F3F28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
L_027F3F2C: ; // 0x27f3f2c
|
|
/* 027F3F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3F30 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3F30 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F3F30 */ if (_t12) goto L_027F3F34; else goto L_027F3ED0;
|
|
L_027F3F34: ; // 0x27f3f34
|
|
/* 027F3F34 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 027F3F34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F3F38 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 027F3F38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F3F3C */ cpu->lr = cpu->r[0];
|
|
/* 027F3F40 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F3F40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F3F44 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F3F48 */ return;
|
|
}
|
|
|
|
// fn_027F3F4C @ 0x27f3f4c
|
|
void Gambit_fn_027F3F4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F3F4C: ; // 0x27f3f4c
|
|
/* 027F3F4C */ _t0 = cpu->r[1] + 0xFFFFFE30u;
|
|
/* 027F3F4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F3F4C */ cpu->r[1] = _t0;
|
|
/* 027F3F50 */ _t1 = cpu->r[1] + 0x000001B0u;
|
|
/* 027F3F50 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 027F3F54 */ /* nop */
|
|
/* 027F3F58 */ _t2 = cpu->r[1] + 0x000001C0u;
|
|
/* 027F3F58 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F3F5C */ /* nop */
|
|
/* 027F3F60 */ _t3 = cpu->r[1] + 0x00000148u;
|
|
/* 027F3F60 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027F3F64 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F3F68 */ _t4 = cpu->r[1] + 0x00000170u;
|
|
/* 027F3F68 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[26]);
|
|
/* 027F3F6C */ _t5 = cpu->r[1] + 0x00000144u;
|
|
/* 027F3F6C */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 027F3F70 */ /* nop */
|
|
/* 027F3F74 */ _t6 = cpu->r[1] + 0x000001B8u;
|
|
/* 027F3F74 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 027F3F78 */ _t7 = cpu->r[1] + 0x000001C8u;
|
|
/* 027F3F78 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 027F3F7C */ _t8 = cpu->r[1] + 0x0000014Cu;
|
|
/* 027F3F7C */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 027F3F80 */ _t9 = cpu->r[1] + 0x00000190u;
|
|
/* 027F3F80 */ rbrew_write_f64(cpu->mem, _t9, cpu->f[28]);
|
|
/* 027F3F84 */ cpu->r[0] = cpu->lr;
|
|
/* 027F3F88 */ _t10 = cpu->r[1] + 0x00000180u;
|
|
/* 027F3F88 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[27]);
|
|
/* 027F3F8C */ /* nop */
|
|
/* 027F3F90 */ _t11 = cpu->r[1] + 0x00000178u;
|
|
/* 027F3F90 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[26]);
|
|
/* 027F3F94 */ /* nop */
|
|
/* 027F3F98 */ _t12 = cpu->r[1] + 0x00000160u;
|
|
/* 027F3F98 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[25]);
|
|
/* 027F3F9C */ _t13 = cpu->r[1] + 0x00000198u;
|
|
/* 027F3F9C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[28]);
|
|
/* 027F3FA0 */ /* nop */
|
|
/* 027F3FA4 */ _t14 = cpu->r[1] + 0x00000188u;
|
|
/* 027F3FA4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[27]);
|
|
/* 027F3FA8 */ _t15 = cpu->r[1] + 0x00000168u;
|
|
/* 027F3FA8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[25]);
|
|
/* 027F3FAC */ _t16 = cpu->r[1] + 0x00000150u;
|
|
/* 027F3FAC */ rbrew_write_f64(cpu->mem, _t16, cpu->f[24]);
|
|
/* 027F3FB0 */ _t17 = cpu->r[1] + 0x000001A0u;
|
|
/* 027F3FB0 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[29]);
|
|
/* 027F3FB4 */ /* nop */
|
|
/* 027F3FB8 */ _t18 = cpu->r[1] + 0x000001D4u;
|
|
/* 027F3FB8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 027F3FBC */ /* nop */
|
|
/* 027F3FC0 */ _t19 = cpu->r[1] + 0x00000158u;
|
|
/* 027F3FC0 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[24]);
|
|
/* 027F3FC4 */ _t20 = cpu->r[1] + 0x000001A8u;
|
|
/* 027F3FC4 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[29]);
|
|
/* 027F3FC8 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F3FCC */ _t21 = cpu->r[29] + 0x00000044u;
|
|
/* 027F3FCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F3FD0 */ cpu->r[31] = cpu->r[0];
|
|
/* 027F3FD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F3FD4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3FD4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F3FD4 */ if (_t23) goto L_027F451C; else goto L_027F3FD8;
|
|
L_027F3FD8: ; // 0x27f3fd8
|
|
/* 027F3FD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 027F3FDC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3FDC */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F3FDC */ if (_t25) goto L_027F4280; else goto L_027F3FE0;
|
|
L_027F3FE0: ; // 0x27f3fe0
|
|
/* 027F3FE0 */ _t26 = cpu->r[31] + 0x00000014u;
|
|
/* 027F3FE0 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t26);
|
|
/* 027F3FE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu);
|
|
/* 027F3FE8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3FE8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F3FE8 */ if (_t28) goto L_027F44FC; else goto L_027F3FEC;
|
|
L_027F3FEC: ; // 0x27f3fec
|
|
/* 027F3FEC */ _t29 = cpu->r[31] + 0x00000016u;
|
|
/* 027F3FEC */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t29);
|
|
/* 027F3FF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 027F3FF4 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F3FF4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F3FF4 */ if (_t31) goto L_027F44FC; else goto L_027F3FF8;
|
|
L_027F3FF8: ; // 0x27f3ff8
|
|
/* 027F3FF8 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 027F3FF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F3FFC */ cpu->r[11] = cpu->r[5];
|
|
/* 027F3FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F4000 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4000 */ _t34 = _t33 & 0x00000001u;
|
|
/* 027F4000 */ if (_t34) goto L_027F4008; else goto L_027F4004;
|
|
L_027F4004: ; // 0x27f4004
|
|
/* 027F4004 */ _t35 = cpu->r[5] + 0x00000010u;
|
|
/* 027F4004 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
L_027F4008: ; // 0x27f4008
|
|
/* 027F4008 */ _t36 = cpu->r[11] + 0x000000B0u;
|
|
/* 027F4008 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 027F400C */ _t37 = cpu->r[11] + 0x000000A0u;
|
|
/* 027F400C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 027F4010 */ _t38 = cpu->r[11] + 0x000000C0u;
|
|
/* 027F4010 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 027F4014 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4014 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
/* 027F4018 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4018 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[6]);
|
|
/* 027F401C */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 027F401C */ rbrew_write_f32(cpu->mem, _t41, cpu->f[2]);
|
|
/* 027F4020 */ _t42 = cpu->r[11] + 0x000000C4u;
|
|
/* 027F4020 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 027F4024 */ _t43 = cpu->r[11] + 0x000000A4u;
|
|
/* 027F4024 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 027F4028 */ _t44 = cpu->r[11] + 0x000000B4u;
|
|
/* 027F4028 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 027F402C */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 027F402C */ rbrew_write_f32(cpu->mem, _t45, cpu->f[13]);
|
|
/* 027F4030 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4030 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[3]);
|
|
/* 027F4034 */ _t47 = cpu->r[1] + 0x00000018u;
|
|
/* 027F4034 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[6]);
|
|
/* 027F4038 */ _t48 = cpu->r[11] + 0x000000C8u;
|
|
/* 027F4038 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 027F403C */ _t49 = cpu->r[11] + 0x000000A8u;
|
|
/* 027F403C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 027F4040 */ _t50 = cpu->r[11] + 0x000000B8u;
|
|
/* 027F4040 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 027F4044 */ _t51 = cpu->r[1] + 0x00000020u;
|
|
/* 027F4044 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[9]);
|
|
/* 027F4048 */ _t52 = cpu->r[1] + 0x00000028u;
|
|
/* 027F4048 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[4]);
|
|
/* 027F404C */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 027F404C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[10]);
|
|
/* 027F4050 */ _t54 = cpu->r[11] + 0x000000CCu;
|
|
/* 027F4050 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 027F4054 */ _t55 = cpu->r[11] + 0x000000ACu;
|
|
/* 027F4054 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 027F4058 */ _t56 = cpu->r[11] + 0x000000BCu;
|
|
/* 027F4058 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 027F405C */ _t57 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F405C */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 027F4060 */ _t58 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4060 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[29]);
|
|
/* 027F4064 */ _t59 = cpu->r[1] + 0x00000030u;
|
|
/* 027F4064 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[6]);
|
|
/* 027F4068 */ _t60 = cpu->r[31] + 0x000000C0u;
|
|
/* 027F4068 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 027F406C */ _t61 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F406C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 027F4070 */ _t62 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F4070 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 027F4074 */ _t63 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F4074 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[10]);
|
|
/* 027F4078 */ _t64 = cpu->r[1] + 0x00000040u;
|
|
/* 027F4078 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[30]);
|
|
/* 027F407C */ _t65 = cpu->r[1] + 0x00000038u;
|
|
/* 027F407C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[7]);
|
|
/* 027F4080 */ _t66 = cpu->r[31] + 0x000000C4u;
|
|
/* 027F4080 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 027F4084 */ _t67 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F4084 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 027F4088 */ _t68 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F4088 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 027F408C */ _t69 = cpu->r[1] + 0x00000044u;
|
|
/* 027F408C */ rbrew_write_f32(cpu->mem, _t69, cpu->f[9]);
|
|
/* 027F4090 */ _t70 = cpu->r[1] + 0x00000048u;
|
|
/* 027F4090 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[11]);
|
|
/* 027F4094 */ _t71 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F4094 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[31]);
|
|
/* 027F4098 */ _t72 = cpu->r[31] + 0x000000C8u;
|
|
/* 027F4098 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 027F409C */ _t73 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F409C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 027F40A0 */ _t74 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F40A0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 027F40A4 */ _t75 = cpu->r[1] + 0x00000054u;
|
|
/* 027F40A4 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[6]);
|
|
/* 027F40A8 */ /* nop */
|
|
/* 027F40AC */ /* nop */
|
|
/* 027F40B0 */ /* nop */
|
|
/* 027F40B4 */ /* nop */
|
|
/* 027F40B8 */ /* nop */
|
|
/* 027F40BC */ /* nop */
|
|
/* 027F40C0 */ cpu->f[28] = cpu->f[12];
|
|
/* 027F40C4 */ /* nop */
|
|
/* 027F40C8 */ /* nop */
|
|
/* 027F40CC */ _t76 = cpu->r[1] + 0x00000050u;
|
|
/* 027F40CC */ rbrew_write_f32(cpu->mem, _t76, cpu->f[8]);
|
|
/* 027F40D0 */ /* nop */
|
|
/* 027F40D4 */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 027F40D4 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[5]);
|
|
/* 027F40D8 */ /* nop */
|
|
/* 027F40DC */ /* nop */
|
|
/* 027F40E0 */ cpu->f[26] = fma(cpu->f[30], cpu->f[2], cpu->f[12]);
|
|
/* 027F40E4 */ _t78 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F40E4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 027F40E8 */ /* nop */
|
|
/* 027F40EC */ cpu->f[27] = fma(cpu->f[30], cpu->f[4], cpu->f[28]);
|
|
/* 027F40F0 */ cpu->f[30] = fma(cpu->f[30], cpu->f[3], cpu->f[8]);
|
|
/* 027F40F4 */ _t79 = cpu->r[31] + 0x000000CCu;
|
|
/* 027F40F4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 027F40F8 */ /* nop */
|
|
/* 027F40FC */ _t80 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F40FC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 027F4100 */ /* nop */
|
|
/* 027F4104 */ _t81 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F4104 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[1]);
|
|
/* 027F4108 */ /* nop */
|
|
/* 027F410C */ /* nop */
|
|
/* 027F4110 */ /* nop */
|
|
/* 027F4114 */ cpu->f[13] = cpu->f[8];
|
|
/* 027F4118 */ cpu->f[8] = cpu->f[1];
|
|
/* 027F411C */ cpu->f[28] = fma(cpu->f[31], cpu->f[2], cpu->f[11]);
|
|
/* 027F4120 */ cpu->f[1] = fma(cpu->f[31], cpu->f[4], cpu->f[13]);
|
|
/* 027F4124 */ /* nop */
|
|
/* 027F4128 */ cpu->f[11] = fma(cpu->f[31], cpu->f[3], cpu->f[8]);
|
|
/* 027F412C */ /* nop */
|
|
/* 027F4130 */ /* nop */
|
|
/* 027F4134 */ _t82 = cpu->r[1] + 0x00000060u;
|
|
/* 027F4134 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[6]);
|
|
/* 027F4138 */ cpu->f[6] = cpu->f[13];
|
|
/* 027F413C */ /* nop */
|
|
/* 027F4140 */ _t83 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F4140 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[11]);
|
|
/* 027F4144 */ /* nop */
|
|
/* 027F4148 */ /* nop */
|
|
/* 027F414C */ _t84 = cpu->r[1] + 0x000000ACu;
|
|
/* 027F414C */ rbrew_write_f32(cpu->mem, _t84, cpu->f[1]);
|
|
/* 027F4150 */ cpu->f[31] = cpu->f[11];
|
|
/* 027F4154 */ _t85 = cpu->r[1] + 0x0000009Cu;
|
|
/* 027F4154 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[30]);
|
|
/* 027F4158 */ /* nop */
|
|
/* 027F415C */ _t86 = cpu->r[1] + 0x00000064u;
|
|
/* 027F415C */ rbrew_write_f32(cpu->mem, _t86, cpu->f[7]);
|
|
/* 027F4160 */ cpu->f[13] = cpu->f[7] - cpu->f[29];
|
|
/* 027F4164 */ /* nop */
|
|
/* 027F4168 */ cpu->f[30] = fma(cpu->f[5], cpu->f[2], cpu->f[6]);
|
|
/* 027F416C */ /* nop */
|
|
/* 027F4170 */ cpu->f[1] = cpu->f[8];
|
|
/* 027F4174 */ /* nop */
|
|
/* 027F4178 */ /* nop */
|
|
/* 027F417C */ /* nop */
|
|
/* 027F4180 */ cpu->f[10] = cpu->f[12];
|
|
/* 027F4184 */ /* nop */
|
|
/* 027F4188 */ /* nop */
|
|
/* 027F418C */ cpu->f[0] = fma(cpu->f[5], cpu->f[3], cpu->f[31]);
|
|
/* 027F4190 */ /* nop */
|
|
/* 027F4194 */ _t87 = cpu->r[1] + 0x00000098u;
|
|
/* 027F4194 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[26]);
|
|
/* 027F4198 */ /* nop */
|
|
/* 027F419C */ _t88 = cpu->r[1] + 0x000000B4u;
|
|
/* 027F419C */ rbrew_write_f32(cpu->mem, _t88, cpu->f[0]);
|
|
/* 027F41A0 */ cpu->f[12] = cpu->f[7];
|
|
/* 027F41A4 */ _t89 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F41A4 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[27]);
|
|
/* 027F41A8 */ cpu->f[9] = fma(cpu->f[13], cpu->f[2], cpu->f[9]);
|
|
/* 027F41AC */ _t90 = cpu->r[1] + 0x000000B0u;
|
|
/* 027F41AC */ rbrew_write_f32(cpu->mem, _t90, cpu->f[30]);
|
|
/* 027F41B0 */ cpu->f[0] = fma(cpu->f[13], cpu->f[4], cpu->f[12]);
|
|
/* 027F41B4 */ _t91 = cpu->r[1] + 0x000000A4u;
|
|
/* 027F41B4 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[28]);
|
|
/* 027F41B8 */ cpu->f[11] = fma(cpu->f[13], cpu->f[3], cpu->f[10]);
|
|
/* 027F41BC */ _t92 = cpu->r[1] + 0x000000BCu;
|
|
/* 027F41BC */ rbrew_write_f32(cpu->mem, _t92, cpu->f[9]);
|
|
/* 027F41C0 */ cpu->f[7] = fma(cpu->f[5], cpu->f[4], cpu->f[1]);
|
|
/* 027F41C4 */ _t93 = cpu->r[1] + 0x000000C4u;
|
|
/* 027F41C4 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[0]);
|
|
/* 027F41C8 */ cpu->r[6] = 0x00000003u;
|
|
/* 027F41CC */ _t94 = cpu->r[1] + 0x000000C0u;
|
|
/* 027F41CC */ rbrew_write_f32(cpu->mem, _t94, cpu->f[11]);
|
|
/* 027F41D0 */ cpu->r[11] = cpu->r[1] + 0x00000094u;
|
|
/* 027F41D4 */ cpu->r[5] = cpu->r[1] + 0x000000C4u;
|
|
/* 027F41D8 */ _t95 = cpu->r[1] + 0x000000B8u;
|
|
/* 027F41D8 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[7]);
|
|
/* 027F41DC */ cpu->ctr = cpu->r[6];
|
|
/* 027F41E0 */ _t96 = cpu->r[1] + 0x00000130u;
|
|
/* 027F41E0 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[13]);
|
|
L_027F41E4: ; // 0x27f41e4
|
|
/* 027F41E4 */ _t97 = cpu->r[11] + 0x00000004u;
|
|
/* 027F41E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t97);
|
|
/* 027F41E8 */ _t98 = cpu->r[5] + 0x00000004u;
|
|
/* 027F41E8 */ rbrew_write32(cpu->mem, _t98, cpu->r[8]);
|
|
/* 027F41EC */ _t99 = cpu->r[11] + 0x00000008u;
|
|
/* 027F41EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t99);
|
|
/* 027F41F0 */ _t100 = cpu->r[5] + 0x00000008u;
|
|
/* 027F41F0 */ rbrew_write32(cpu->mem, _t100, cpu->r[10]);
|
|
/* 027F41F4 */ _t101 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F41F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t101);
|
|
/* 027F41F8 */ _t102 = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F41F8 */ rbrew_write32(cpu->mem, _t102, cpu->r[12]);
|
|
/* 027F41FC */ _t103 = cpu->r[11] + 0x00000010u;
|
|
/* 027F41FC */ cpu->r[4] = rbrew_read32(cpu->mem, _t103);
|
|
/* 027F41FC */ cpu->r[11] = _t103;
|
|
/* 027F4200 */ _t104 = cpu->r[5] + 0x00000010u;
|
|
/* 027F4200 */ rbrew_write32(cpu->mem, _t104, cpu->r[4]);
|
|
/* 027F4200 */ cpu->r[5] = _t104;
|
|
/* 027F4204 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F4204 */ _t105 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F4204 */ _t106 = _t105 >> (0x00000002u & 31u);
|
|
/* 027F4204 */ _t107 = _t106 & 0x00000001u;
|
|
/* 027F4204 */ if (_t107) goto L_027F41E4; else goto L_027F4208;
|
|
L_027F4208: ; // 0x27f4208
|
|
/* 027F4208 */ _t108 = cpu->r[1] + 0x000000E0u;
|
|
/* 027F4208 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 027F420C */ _t109 = cpu->r[1] + 0x000000D8u;
|
|
/* 027F420C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 027F4210 */ _t110 = cpu->r[1] + 0x00000070u;
|
|
/* 027F4210 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[8]);
|
|
/* 027F4214 */ _t111 = cpu->r[1] + 0x000000F4u;
|
|
/* 027F4214 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 027F4218 */ _t112 = cpu->r[1] + 0x0000007Cu;
|
|
/* 027F4218 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[13]);
|
|
/* 027F421C */ _t113 = cpu->r[1] + 0x00000094u;
|
|
/* 027F421C */ rbrew_write_f32(cpu->mem, _t113, cpu->f[12]);
|
|
/* 027F4220 */ _t114 = cpu->r[1] + 0x000000DCu;
|
|
/* 027F4220 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 027F4224 */ _t115 = cpu->r[1] + 0x000000CCu;
|
|
/* 027F4224 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 027F4228 */ _t116 = cpu->r[1] + 0x000000D0u;
|
|
/* 027F4228 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 027F422C */ _t117 = cpu->r[1] + 0x000000C8u;
|
|
/* 027F422C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 027F4230 */ _t118 = cpu->r[1] + 0x00000088u;
|
|
/* 027F4230 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[8]);
|
|
/* 027F4234 */ _t119 = cpu->r[1] + 0x00000068u;
|
|
/* 027F4234 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[6]);
|
|
/* 027F4238 */ _t120 = cpu->r[1] + 0x000000F0u;
|
|
/* 027F4238 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 027F423C */ _t121 = cpu->r[1] + 0x0000008Cu;
|
|
/* 027F423C */ rbrew_write_f32(cpu->mem, _t121, cpu->f[10]);
|
|
/* 027F4240 */ _t122 = cpu->r[1] + 0x00000084u;
|
|
/* 027F4240 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[6]);
|
|
/* 027F4244 */ _t123 = cpu->r[1] + 0x000000E4u;
|
|
/* 027F4244 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 027F4248 */ _t124 = cpu->r[1] + 0x000000ECu;
|
|
/* 027F4248 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 027F424C */ _t125 = cpu->r[1] + 0x00000080u;
|
|
/* 027F424C */ rbrew_write_f32(cpu->mem, _t125, cpu->f[0]);
|
|
/* 027F4250 */ _t126 = cpu->r[1] + 0x00000074u;
|
|
/* 027F4250 */ rbrew_write_f32(cpu->mem, _t126, cpu->f[9]);
|
|
/* 027F4254 */ _t127 = cpu->r[1] + 0x00000078u;
|
|
/* 027F4254 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[11]);
|
|
/* 027F4258 */ _t128 = cpu->r[1] + 0x000000E8u;
|
|
/* 027F4258 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 027F425C */ _t129 = cpu->r[1] + 0x000000D4u;
|
|
/* 027F425C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 027F4260 */ _t130 = cpu->r[1] + 0x00000090u;
|
|
/* 027F4260 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[11]);
|
|
/* 027F4264 */ cpu->r[5] = cpu->r[1] + 0x00000068u;
|
|
/* 027F4268 */ _t131 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F4268 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[7]);
|
|
/* 027F426C */ _t132 = cpu->r[31] + 0x00000068u;
|
|
/* 027F426C */ cpu->r[6] = rbrew_read32(cpu->mem, _t132);
|
|
/* 027F4270 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F4274 */ cpu->r[4] = cpu->r[31] + 0x00000014u;
|
|
/* 027F4278 */ Gambit_fn_02980840(cpu);
|
|
/* 027F427C */ goto L_027F44FC;
|
|
L_027F4280: ; // 0x27f4280
|
|
/* 027F4280 */ cpu->r[4] = cpu->r[1] + 0x000000F8u;
|
|
/* 027F4284 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F4288 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F428C */ Gambit_fn_027F2860(cpu);
|
|
/* 027F4290 */ _t133 = cpu->r[1] + 0x00000108u;
|
|
/* 027F4290 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 027F4294 */ _t134 = cpu->r[1] + 0x0000010Cu;
|
|
/* 027F4294 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 027F4298 */ _t135 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4298 */ rbrew_write_f32(cpu->mem, _t135, cpu->f[9]);
|
|
/* 027F429C */ _t136 = cpu->r[1] + 0x00000018u;
|
|
/* 027F429C */ rbrew_write_f32(cpu->mem, _t136, cpu->f[0]);
|
|
/* 027F42A0 */ _t137 = cpu->r[1] + 0x00000104u;
|
|
/* 027F42A0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 027F42A4 */ _t138 = cpu->r[1] + 0x000000F8u;
|
|
/* 027F42A4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 027F42A8 */ _t139 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F42A8 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[8]);
|
|
/* 027F42AC */ _t140 = cpu->r[1] + 0x00000008u;
|
|
/* 027F42AC */ rbrew_write_f32(cpu->mem, _t140, cpu->f[7]);
|
|
/* 027F42B0 */ _t141 = cpu->r[1] + 0x00000114u;
|
|
/* 027F42B0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 027F42B4 */ _t142 = cpu->r[1] + 0x0000011Cu;
|
|
/* 027F42B4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 027F42B8 */ _t143 = cpu->r[1] + 0x00000030u;
|
|
/* 027F42B8 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[9]);
|
|
/* 027F42BC */ _t144 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F42BC */ rbrew_write_f32(cpu->mem, _t144, cpu->f[30]);
|
|
/* 027F42C0 */ _t145 = cpu->r[1] + 0x00000120u;
|
|
/* 027F42C0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 027F42C4 */ _t146 = cpu->r[1] + 0x00000110u;
|
|
/* 027F42C4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 027F42C8 */ _t147 = cpu->r[1] + 0x00000024u;
|
|
/* 027F42C8 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[7]);
|
|
/* 027F42CC */ _t148 = cpu->r[1] + 0x000000FCu;
|
|
/* 027F42CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t148);
|
|
/* 027F42D0 */ _t149 = cpu->r[1] + 0x00000100u;
|
|
/* 027F42D0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 027F42D4 */ _t150 = cpu->r[1] + 0x00000124u;
|
|
/* 027F42D4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 027F42D8 */ _t151 = cpu->r[1] + 0x00000020u;
|
|
/* 027F42D8 */ rbrew_write_f32(cpu->mem, _t151, cpu->f[6]);
|
|
/* 027F42DC */ /* nop */
|
|
/* 027F42E0 */ _t152 = cpu->r[1] + 0x00000014u;
|
|
/* 027F42E0 */ rbrew_write_f32(cpu->mem, _t152, cpu->f[13]);
|
|
/* 027F42E4 */ /* nop */
|
|
/* 027F42E8 */ _t153 = cpu->r[1] + 0x00000118u;
|
|
/* 027F42E8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 027F42EC */ _t154 = cpu->r[1] + 0x00000034u;
|
|
/* 027F42EC */ rbrew_write_f32(cpu->mem, _t154, cpu->f[28]);
|
|
/* 027F42F0 */ _t155 = cpu->r[1] + 0x00000010u;
|
|
/* 027F42F0 */ rbrew_write_f32(cpu->mem, _t155, cpu->f[29]);
|
|
/* 027F42F4 */ _t156 = cpu->r[1] + 0x00000028u;
|
|
/* 027F42F4 */ rbrew_write_f32(cpu->mem, _t156, cpu->f[31]);
|
|
/* 027F42F8 */ _t157 = cpu->r[31] + 0x000000C0u;
|
|
/* 027F42F8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 027F42FC */ _t158 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F42FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t158);
|
|
/* 027F4300 */ _t159 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F4300 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 027F4304 */ _t160 = cpu->r[1] + 0x00000038u;
|
|
/* 027F4304 */ rbrew_write_f32(cpu->mem, _t160, cpu->f[10]);
|
|
/* 027F4308 */ _t161 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F4308 */ rbrew_write_f32(cpu->mem, _t161, cpu->f[11]);
|
|
/* 027F430C */ /* nop */
|
|
/* 027F4310 */ _t162 = cpu->r[1] + 0x00000040u;
|
|
/* 027F4310 */ rbrew_write_f32(cpu->mem, _t162, cpu->f[1]);
|
|
/* 027F4314 */ _t163 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F4314 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 027F4318 */ _t164 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F4318 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 027F431C */ _t165 = cpu->r[31] + 0x000000C4u;
|
|
/* 027F431C */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 027F4320 */ _t166 = cpu->r[1] + 0x00000048u;
|
|
/* 027F4320 */ rbrew_write_f32(cpu->mem, _t166, cpu->f[13]);
|
|
/* 027F4324 */ _t167 = cpu->r[1] + 0x00000044u;
|
|
/* 027F4324 */ rbrew_write_f32(cpu->mem, _t167, cpu->f[12]);
|
|
/* 027F4328 */ /* nop */
|
|
/* 027F432C */ _t168 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F432C */ rbrew_write_f32(cpu->mem, _t168, cpu->f[25]);
|
|
/* 027F4330 */ _t169 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F4330 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 027F4334 */ /* nop */
|
|
/* 027F4338 */ _t170 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F4338 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 027F433C */ /* nop */
|
|
/* 027F4340 */ /* nop */
|
|
/* 027F4344 */ /* nop */
|
|
/* 027F4348 */ _t171 = cpu->r[31] + 0x000000C8u;
|
|
/* 027F4348 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 027F434C */ cpu->f[26] = fma(cpu->f[1], cpu->f[31], cpu->f[13]);
|
|
/* 027F4350 */ _t172 = cpu->r[1] + 0x00000058u;
|
|
/* 027F4350 */ rbrew_write_f32(cpu->mem, _t172, cpu->f[27]);
|
|
/* 027F4354 */ /* nop */
|
|
/* 027F4358 */ _t173 = cpu->r[1] + 0x00000054u;
|
|
/* 027F4358 */ rbrew_write_f32(cpu->mem, _t173, cpu->f[6]);
|
|
/* 027F435C */ /* nop */
|
|
/* 027F4360 */ /* nop */
|
|
/* 027F4364 */ cpu->f[6] = fma(cpu->f[1], cpu->f[29], cpu->f[9]);
|
|
/* 027F4368 */ _t174 = cpu->r[1] + 0x00000050u;
|
|
/* 027F4368 */ rbrew_write_f32(cpu->mem, _t174, cpu->f[0]);
|
|
/* 027F436C */ cpu->f[7] = fma(cpu->f[1], cpu->f[30], cpu->f[11]);
|
|
/* 027F4370 */ _t175 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F4370 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 027F4374 */ /* nop */
|
|
/* 027F4378 */ /* nop */
|
|
/* 027F437C */ _t176 = cpu->r[31] + 0x000000CCu;
|
|
/* 027F437C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 027F4380 */ /* nop */
|
|
/* 027F4384 */ /* nop */
|
|
/* 027F4388 */ cpu->f[11] = cpu->f[9];
|
|
/* 027F438C */ _t177 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F438C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 027F4390 */ /* nop */
|
|
/* 027F4394 */ /* nop */
|
|
/* 027F4398 */ /* nop */
|
|
/* 027F439C */ _t178 = cpu->r[1] + 0x0000009Cu;
|
|
/* 027F439C */ rbrew_write_f32(cpu->mem, _t178, cpu->f[7]);
|
|
/* 027F43A0 */ cpu->f[9] = fma(cpu->f[25], cpu->f[31], cpu->f[10]);
|
|
/* 027F43A4 */ /* nop */
|
|
/* 027F43A8 */ cpu->f[0] = cpu->f[13];
|
|
/* 027F43AC */ cpu->f[13] = fma(cpu->f[25], cpu->f[29], cpu->f[11]);
|
|
/* 027F43B0 */ _t179 = cpu->r[1] + 0x00000060u;
|
|
/* 027F43B0 */ rbrew_write_f32(cpu->mem, _t179, cpu->f[5]);
|
|
/* 027F43B4 */ /* nop */
|
|
/* 027F43B8 */ _t180 = cpu->r[1] + 0x00000064u;
|
|
/* 027F43B8 */ rbrew_write_f32(cpu->mem, _t180, cpu->f[1]);
|
|
/* 027F43BC */ cpu->f[5] = fma(cpu->f[25], cpu->f[30], cpu->f[0]);
|
|
/* 027F43C0 */ _t181 = cpu->r[1] + 0x0000005Cu;
|
|
/* 027F43C0 */ rbrew_write_f32(cpu->mem, _t181, cpu->f[24]);
|
|
/* 027F43C4 */ /* nop */
|
|
/* 027F43C8 */ _t182 = cpu->r[1] + 0x000000A0u;
|
|
/* 027F43C8 */ rbrew_write_f32(cpu->mem, _t182, cpu->f[26]);
|
|
/* 027F43CC */ /* nop */
|
|
/* 027F43D0 */ _t183 = cpu->r[1] + 0x000000A4u;
|
|
/* 027F43D0 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[13]);
|
|
/* 027F43D4 */ cpu->f[7] = cpu->f[11];
|
|
/* 027F43D8 */ _t184 = cpu->r[1] + 0x00000098u;
|
|
/* 027F43D8 */ rbrew_write_f32(cpu->mem, _t184, cpu->f[6]);
|
|
/* 027F43DC */ /* nop */
|
|
/* 027F43E0 */ /* nop */
|
|
/* 027F43E4 */ /* nop */
|
|
/* 027F43E8 */ /* nop */
|
|
/* 027F43EC */ cpu->f[8] = fma(cpu->f[27], cpu->f[29], cpu->f[7]);
|
|
/* 027F43F0 */ _t185 = cpu->r[1] + 0x000000ACu;
|
|
/* 027F43F0 */ rbrew_write_f32(cpu->mem, _t185, cpu->f[9]);
|
|
/* 027F43F4 */ /* nop */
|
|
/* 027F43F8 */ cpu->f[13] = fma(cpu->f[27], cpu->f[30], cpu->f[13]);
|
|
/* 027F43FC */ cpu->f[9] = fma(cpu->f[27], cpu->f[31], cpu->f[6]);
|
|
/* 027F4400 */ _t186 = cpu->r[1] + 0x000000B0u;
|
|
/* 027F4400 */ rbrew_write_f32(cpu->mem, _t186, cpu->f[8]);
|
|
/* 027F4404 */ /* nop */
|
|
/* 027F4408 */ /* nop */
|
|
/* 027F440C */ cpu->f[8] = cpu->f[11];
|
|
/* 027F4410 */ /* nop */
|
|
/* 027F4414 */ cpu->f[6] = cpu->f[1] - cpu->f[28];
|
|
/* 027F4418 */ /* nop */
|
|
/* 027F441C */ /* nop */
|
|
/* 027F4420 */ /* nop */
|
|
/* 027F4424 */ _t187 = cpu->r[1] + 0x000000A8u;
|
|
/* 027F4424 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[5]);
|
|
/* 027F4428 */ cpu->f[7] = cpu->f[0];
|
|
/* 027F442C */ _t188 = cpu->r[1] + 0x000000B4u;
|
|
/* 027F442C */ rbrew_write_f32(cpu->mem, _t188, cpu->f[13]);
|
|
/* 027F4430 */ cpu->f[12] = fma(cpu->f[6], cpu->f[29], cpu->f[8]);
|
|
/* 027F4434 */ _t189 = cpu->r[1] + 0x000000B8u;
|
|
/* 027F4434 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[9]);
|
|
/* 027F4438 */ cpu->f[0] = cpu->f[11];
|
|
/* 027F443C */ _t190 = cpu->r[1] + 0x0000013Cu;
|
|
/* 027F443C */ rbrew_write_f32(cpu->mem, _t190, cpu->f[6]);
|
|
/* 027F4440 */ cpu->f[11] = fma(cpu->f[6], cpu->f[30], cpu->f[7]);
|
|
/* 027F4444 */ _t191 = cpu->r[1] + 0x000000BCu;
|
|
/* 027F4444 */ rbrew_write_f32(cpu->mem, _t191, cpu->f[12]);
|
|
/* 027F4448 */ cpu->r[0] = 0x00000003u;
|
|
/* 027F444C */ cpu->f[7] = fma(cpu->f[6], cpu->f[31], cpu->f[0]);
|
|
/* 027F4450 */ cpu->r[11] = cpu->r[1] + 0x000000C4u;
|
|
/* 027F4454 */ cpu->r[9] = cpu->r[1] + 0x00000094u;
|
|
/* 027F4458 */ _t192 = cpu->r[1] + 0x000000C0u;
|
|
/* 027F4458 */ rbrew_write_f32(cpu->mem, _t192, cpu->f[11]);
|
|
/* 027F445C */ cpu->ctr = cpu->r[0];
|
|
/* 027F4460 */ _t193 = cpu->r[1] + 0x000000C4u;
|
|
/* 027F4460 */ rbrew_write_f32(cpu->mem, _t193, cpu->f[7]);
|
|
L_027F4464: ; // 0x27f4464
|
|
/* 027F4464 */ _t194 = cpu->r[9] + 0x00000004u;
|
|
/* 027F4464 */ cpu->r[5] = rbrew_read32(cpu->mem, _t194);
|
|
/* 027F4468 */ _t195 = cpu->r[11] + 0x00000004u;
|
|
/* 027F4468 */ rbrew_write32(cpu->mem, _t195, cpu->r[5]);
|
|
/* 027F446C */ _t196 = cpu->r[9] + 0x00000008u;
|
|
/* 027F446C */ cpu->r[6] = rbrew_read32(cpu->mem, _t196);
|
|
/* 027F4470 */ _t197 = cpu->r[11] + 0x00000008u;
|
|
/* 027F4470 */ rbrew_write32(cpu->mem, _t197, cpu->r[6]);
|
|
/* 027F4474 */ _t198 = cpu->r[9] + 0x0000000Cu;
|
|
/* 027F4474 */ cpu->r[8] = rbrew_read32(cpu->mem, _t198);
|
|
/* 027F4478 */ _t199 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F4478 */ rbrew_write32(cpu->mem, _t199, cpu->r[8]);
|
|
/* 027F447C */ _t200 = cpu->r[9] + 0x00000010u;
|
|
/* 027F447C */ cpu->r[0] = rbrew_read32(cpu->mem, _t200);
|
|
/* 027F447C */ cpu->r[9] = _t200;
|
|
/* 027F4480 */ _t201 = cpu->r[11] + 0x00000010u;
|
|
/* 027F4480 */ rbrew_write32(cpu->mem, _t201, cpu->r[0]);
|
|
/* 027F4480 */ cpu->r[11] = _t201;
|
|
/* 027F4484 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F4484 */ _t202 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F4484 */ _t203 = _t202 >> (0x00000002u & 31u);
|
|
/* 027F4484 */ _t204 = _t203 & 0x00000001u;
|
|
/* 027F4484 */ if (_t204) goto L_027F4464; else goto L_027F4488;
|
|
L_027F4488: ; // 0x27f4488
|
|
/* 027F4488 */ _t205 = cpu->r[1] + 0x000000C8u;
|
|
/* 027F4488 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 027F448C */ _t206 = cpu->r[1] + 0x000000CCu;
|
|
/* 027F448C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 027F4490 */ _t207 = cpu->r[1] + 0x00000068u;
|
|
/* 027F4490 */ rbrew_write_f32(cpu->mem, _t207, cpu->f[7]);
|
|
/* 027F4494 */ _t208 = cpu->r[1] + 0x000000D8u;
|
|
/* 027F4494 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t208);
|
|
/* 027F4498 */ _t209 = cpu->r[1] + 0x00000078u;
|
|
/* 027F4498 */ rbrew_write_f32(cpu->mem, _t209, cpu->f[0]);
|
|
/* 027F449C */ _t210 = cpu->r[1] + 0x0000007Cu;
|
|
/* 027F449C */ rbrew_write_f32(cpu->mem, _t210, cpu->f[8]);
|
|
/* 027F44A0 */ _t211 = cpu->r[1] + 0x000000D0u;
|
|
/* 027F44A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t211);
|
|
/* 027F44A4 */ _t212 = cpu->r[1] + 0x000000E0u;
|
|
/* 027F44A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t212);
|
|
/* 027F44A8 */ _t213 = cpu->r[1] + 0x000000E8u;
|
|
/* 027F44A8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t213);
|
|
/* 027F44AC */ _t214 = cpu->r[1] + 0x00000088u;
|
|
/* 027F44AC */ rbrew_write_f32(cpu->mem, _t214, cpu->f[0]);
|
|
/* 027F44B0 */ _t215 = cpu->r[1] + 0x000000F4u;
|
|
/* 027F44B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t215);
|
|
/* 027F44B4 */ _t216 = cpu->r[1] + 0x000000DCu;
|
|
/* 027F44B4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 027F44B8 */ _t217 = cpu->r[1] + 0x00000094u;
|
|
/* 027F44B8 */ rbrew_write_f32(cpu->mem, _t217, cpu->f[13]);
|
|
/* 027F44BC */ _t218 = cpu->r[1] + 0x00000070u;
|
|
/* 027F44BC */ rbrew_write_f32(cpu->mem, _t218, cpu->f[12]);
|
|
/* 027F44C0 */ _t219 = cpu->r[1] + 0x000000ECu;
|
|
/* 027F44C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t219);
|
|
/* 027F44C4 */ _t220 = cpu->r[1] + 0x00000090u;
|
|
/* 027F44C4 */ rbrew_write_f32(cpu->mem, _t220, cpu->f[7]);
|
|
/* 027F44C8 */ _t221 = cpu->r[1] + 0x00000074u;
|
|
/* 027F44C8 */ rbrew_write_f32(cpu->mem, _t221, cpu->f[12]);
|
|
/* 027F44CC */ _t222 = cpu->r[1] + 0x000000F0u;
|
|
/* 027F44CC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t222);
|
|
/* 027F44D0 */ _t223 = cpu->r[1] + 0x0000008Cu;
|
|
/* 027F44D0 */ rbrew_write_f32(cpu->mem, _t223, cpu->f[6]);
|
|
/* 027F44D4 */ _t224 = cpu->r[1] + 0x00000084u;
|
|
/* 027F44D4 */ rbrew_write_f32(cpu->mem, _t224, cpu->f[12]);
|
|
/* 027F44D8 */ _t225 = cpu->r[1] + 0x000000E4u;
|
|
/* 027F44D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 027F44DC */ _t226 = cpu->r[1] + 0x000000D4u;
|
|
/* 027F44DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t226);
|
|
/* 027F44E0 */ _t227 = cpu->r[1] + 0x00000080u;
|
|
/* 027F44E0 */ rbrew_write_f32(cpu->mem, _t227, cpu->f[10]);
|
|
/* 027F44E4 */ cpu->r[5] = cpu->r[1] + 0x00000068u;
|
|
/* 027F44E8 */ _t228 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F44E8 */ rbrew_write_f32(cpu->mem, _t228, cpu->f[11]);
|
|
/* 027F44EC */ _t229 = cpu->r[31] + 0x00000068u;
|
|
/* 027F44EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t229);
|
|
/* 027F44F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F44F4 */ cpu->r[4] = cpu->r[31] + 0x00000014u;
|
|
/* 027F44F8 */ Gambit_fn_02980840(cpu);
|
|
L_027F44FC: ; // 0x27f44fc
|
|
/* 027F44FC */ _t230 = cpu->r[31] + 0x00000004u;
|
|
/* 027F44FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t230);
|
|
/* 027F4500 */ cpu->r[31] = cpu->r[6];
|
|
/* 027F4500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F4504 */ _t231 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4504 */ _t232 = _t231 & 0x00000001u;
|
|
/* 027F4504 */ if (_t232) goto L_027F450C; else goto L_027F4508;
|
|
L_027F4508: ; // 0x27f4508
|
|
/* 027F4508 */ _t233 = cpu->r[6] + 0x00000010u;
|
|
/* 027F4508 */ cpu->r[31] = rbrew_read32(cpu->mem, _t233);
|
|
L_027F450C: ; // 0x27f450c
|
|
/* 027F450C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F4510 */ _t234 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4510 */ _t235 = _t234 & 0x00000001u;
|
|
/* 027F4510 */ if (_t235) goto L_027F451C; else goto L_027F4514;
|
|
L_027F4514: ; // 0x27f4514
|
|
/* 027F4514 */ _t236 = cpu->r[29] + 0x00000044u;
|
|
/* 027F4514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t236);
|
|
/* 027F4518 */ goto L_027F3FD8;
|
|
L_027F451C: ; // 0x27f451c
|
|
/* 027F451C */ _t237 = cpu->r[1] + 0x00000144u;
|
|
/* 027F451C */ cpu->r[29] = rbrew_read32(cpu->mem, _t237);
|
|
/* 027F4520 */ _t238 = cpu->r[1] + 0x00000178u;
|
|
/* 027F4520 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t238);
|
|
/* 027F4524 */ _t239 = cpu->r[1] + 0x00000168u;
|
|
/* 027F4524 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t239);
|
|
/* 027F4528 */ _t240 = cpu->r[1] + 0x00000170u;
|
|
/* 027F4528 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t240);
|
|
/* 027F452C */ _t241 = cpu->r[1] + 0x00000188u;
|
|
/* 027F452C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t241);
|
|
/* 027F4530 */ _t242 = cpu->r[1] + 0x00000160u;
|
|
/* 027F4530 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t242);
|
|
/* 027F4534 */ _t243 = cpu->r[1] + 0x00000180u;
|
|
/* 027F4534 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t243);
|
|
/* 027F4538 */ _t244 = cpu->r[1] + 0x00000198u;
|
|
/* 027F4538 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t244);
|
|
/* 027F453C */ _t245 = cpu->r[1] + 0x0000014Cu;
|
|
/* 027F453C */ cpu->r[31] = rbrew_read32(cpu->mem, _t245);
|
|
/* 027F4540 */ _t246 = cpu->r[1] + 0x00000190u;
|
|
/* 027F4540 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t246);
|
|
/* 027F4544 */ _t247 = cpu->r[1] + 0x000001A8u;
|
|
/* 027F4544 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t247);
|
|
/* 027F4548 */ _t248 = cpu->r[1] + 0x000001C8u;
|
|
/* 027F4548 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t248);
|
|
/* 027F454C */ _t249 = cpu->r[1] + 0x000001A0u;
|
|
/* 027F454C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t249);
|
|
/* 027F4550 */ _t250 = cpu->r[1] + 0x000001C0u;
|
|
/* 027F4550 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t250);
|
|
/* 027F4554 */ _t251 = cpu->r[1] + 0x000001B8u;
|
|
/* 027F4554 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 027F4558 */ _t252 = cpu->r[1] + 0x00000158u;
|
|
/* 027F4558 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t252);
|
|
/* 027F455C */ _t253 = cpu->r[1] + 0x000001B0u;
|
|
/* 027F455C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t253);
|
|
/* 027F4560 */ _t254 = cpu->r[1] + 0x00000150u;
|
|
/* 027F4560 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t254);
|
|
/* 027F4564 */ _t255 = cpu->r[1] + 0x00000148u;
|
|
/* 027F4564 */ cpu->r[30] = rbrew_read32(cpu->mem, _t255);
|
|
/* 027F4568 */ _t256 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F4568 */ _t257 = _t256 & 0x00000001u;
|
|
/* 027F4568 */ if (_t257) goto L_027F456C; // else: addr-0 trap, fall-through
|
|
L_027F456C: ; // 0x27f456c
|
|
/* 027F456C */ _t258 = cpu->r[1] + 0x000001D4u;
|
|
/* 027F456C */ cpu->r[0] = rbrew_read32(cpu->mem, _t258);
|
|
/* 027F4570 */ cpu->lr = cpu->r[0];
|
|
/* 027F4574 */ cpu->r[1] = cpu->r[1] + 0x000001D0u;
|
|
/* 027F4578 */ return;
|
|
}
|
|
|
|
// fn_027F457C @ 0x27f457c
|
|
void Gambit_fn_027F457C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027F457C: ; // 0x27f457c
|
|
/* 027F457C */ cpu->r[0] = cpu->lr;
|
|
/* 027F4580 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F4580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4580 */ cpu->r[1] = _t0;
|
|
/* 027F4584 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F4588 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4588 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F458C */ cpu->r[30] = cpu->r[3];
|
|
/* 027F4590 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F4594 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4594 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F4598 */ Gambit_fn_027F2938(cpu);
|
|
/* 027F459C */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45A0 */ Gambit_fn_027F3848(cpu);
|
|
/* 027F45A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F45A8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F45A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F45A8 */ if (_t5) goto L_027F45B4; else goto L_027F45AC;
|
|
L_027F45AC: ; // 0x27f45ac
|
|
/* 027F45AC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45B0 */ Gambit_fn_027F3794(cpu);
|
|
L_027F45B4: ; // 0x27f45b4
|
|
/* 027F45B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45B8 */ Gambit_fn_027F3EA8(cpu);
|
|
/* 027F45BC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45C0 */ Gambit_fn_027F3840(cpu);
|
|
/* 027F45C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F45C8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F45C8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F45C8 */ if (_t7) goto L_027F45CC; else goto L_027F45D8;
|
|
L_027F45CC: ; // 0x27f45cc
|
|
/* 027F45CC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45D0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F45D4 */ Gambit_fn_027F3F4C(cpu);
|
|
L_027F45D8: ; // 0x27f45d8
|
|
/* 027F45D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45DC */ Gambit_fn_027F26F4(cpu);
|
|
/* 027F45E0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027F45E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F45E4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F45E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F45E8 */ cpu->lr = cpu->r[0];
|
|
/* 027F45EC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F45EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F45F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F45F4 */ return;
|
|
}
|
|
|
|
// fn_027F4580 @ 0x27f4580
|
|
void Gambit_fn_027F4580(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027F4580: ; // 0x27f4580
|
|
/* 027F4580 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F4580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4580 */ cpu->r[1] = _t0;
|
|
/* 027F4584 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F4588 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4588 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F458C */ cpu->r[30] = cpu->r[3];
|
|
/* 027F4590 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F4594 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4594 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F4598 */ Gambit_fn_027F2938(cpu);
|
|
/* 027F459C */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45A0 */ Gambit_fn_027F3848(cpu);
|
|
/* 027F45A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F45A8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F45A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F45A8 */ if (_t5) goto L_027F45B4; else goto L_027F45AC;
|
|
L_027F45AC: ; // 0x27f45ac
|
|
/* 027F45AC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45B0 */ Gambit_fn_027F3794(cpu);
|
|
L_027F45B4: ; // 0x27f45b4
|
|
/* 027F45B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45B8 */ Gambit_fn_027F3EA8(cpu);
|
|
/* 027F45BC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45C0 */ Gambit_fn_027F3840(cpu);
|
|
/* 027F45C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F45C8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F45C8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F45C8 */ if (_t7) goto L_027F45CC; else goto L_027F45D8;
|
|
L_027F45CC: ; // 0x27f45cc
|
|
/* 027F45CC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45D0 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F45D4 */ Gambit_fn_027F3F4C(cpu);
|
|
L_027F45D8: ; // 0x27f45d8
|
|
/* 027F45D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F45DC */ Gambit_fn_027F26F4(cpu);
|
|
/* 027F45E0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027F45E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F45E4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F45E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F45E8 */ cpu->lr = cpu->r[0];
|
|
/* 027F45EC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F45EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F45F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F45F4 */ return;
|
|
}
|
|
|
|
// fn_027F45F8 @ 0x27f45f8
|
|
void Gambit_fn_027F45F8(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_027F45F8: ; // 0x27f45f8
|
|
/* 027F45F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F45FC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F45FC */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F45FC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F45FC */ goto L_027F4600;
|
|
L_027F4600: ; // 0x27f4600
|
|
/* 027F4600 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F4600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4604 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4604 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F4604 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F4604 */ goto L_027F4608;
|
|
L_027F4608: ; // 0x27f4608
|
|
/* 027F4608 */ 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_027F460C @ 0x27f460c
|
|
void Gambit_fn_027F460C(CPUState* cpu) {
|
|
L_027F460C: ; // 0x27f460c
|
|
/* 027F460C */ return;
|
|
}
|
|
|
|
// fn_027F4610 @ 0x27f4610
|
|
void Gambit_fn_027F4610(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_027F4610: ; // 0x27f4610
|
|
/* 027F4610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4614 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4614 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F4614 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F4614 */ goto L_027F4618;
|
|
L_027F4618: ; // 0x27f4618
|
|
/* 027F4618 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F4618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F461C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F461C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F461C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F461C */ goto L_027F4620;
|
|
L_027F4620: ; // 0x27f4620
|
|
/* 027F4620 */ 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_027F4624 @ 0x27f4624
|
|
void Gambit_fn_027F4624(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F4624: ; // 0x27f4624
|
|
/* 027F4624 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027F4624 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F4628 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 027F4628 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F462C */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 027F4630 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F4634 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 027F4634 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027F4638 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F4638 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027F463C */ return;
|
|
}
|
|
|
|
// fn_027F4640 @ 0x27f4640
|
|
void Gambit_fn_027F4640(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_027F4640: ; // 0x27f4640
|
|
/* 027F4640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4644 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4644 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F4644 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F4644 */ goto L_027F4648;
|
|
L_027F4648: ; // 0x27f4648
|
|
/* 027F4648 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F4648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F464C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F464C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F464C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F464C */ goto L_027F4650;
|
|
L_027F4650: ; // 0x27f4650
|
|
/* 027F4650 */ 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_027F4654 @ 0x27f4654
|
|
void Gambit_fn_027F4654(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_027F4654: ; // 0x27f4654
|
|
/* 027F4654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4658 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4658 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F4658 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F4658 */ goto L_027F465C;
|
|
L_027F465C: ; // 0x27f465c
|
|
/* 027F465C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F465C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4660 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4660 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F4660 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F4660 */ goto L_027F4664;
|
|
L_027F4664: ; // 0x27f4664
|
|
/* 027F4664 */ 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_027F4668 @ 0x27f4668
|
|
void Gambit_fn_027F4668(CPUState* cpu) {
|
|
L_027F4668: ; // 0x27f4668
|
|
/* 027F4668 */ return;
|
|
}
|
|
|
|
// fn_027F466C @ 0x27f466c
|
|
void Gambit_fn_027F466C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_027F466C: ; // 0x27f466c
|
|
/* 027F466C */ cpu->r[0] = cpu->lr;
|
|
/* 027F4670 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F4670 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4670 */ cpu->r[1] = _t0;
|
|
/* 027F4674 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4674 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F4678 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4678 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F467C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 027F467C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027F4680 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F4684 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4684 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F4688 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4688 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F4688 */ if (_t6) goto L_027F468C; else goto L_027F469C;
|
|
L_027F468C: ; // 0x27f468c
|
|
/* 027F468C */ cpu->r[3] = 0x00000018u;
|
|
/* 027F4690 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F4694 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F4698 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4698 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F4698 */ if (_t8) goto L_027F46FC; else goto L_027F469C;
|
|
L_027F469C: ; // 0x27f469c
|
|
/* 027F469C */ cpu->r[11] = 0x10110000u;
|
|
/* 027F46A0 */ cpu->r[11] = cpu->r[11] + 0x00000558u;
|
|
/* 027F46A4 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F46A8 */ _t9 = cpu->r[31] + 0x00000014u;
|
|
/* 027F46A8 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 027F46AC */ cpu->r[29] = cpu->r[31] + 0x00000004u;
|
|
/* 027F46AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F46B0 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 027F46B0 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 027F46B4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F46B4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F46B4 */ if (_t12) goto L_027F46B8; else goto L_027F46C8;
|
|
L_027F46B8: ; // 0x27f46b8
|
|
/* 027F46B8 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F46BC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F46C0 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F46C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F46C4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F46C4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F46C4 */ if (_t14) goto L_027F46F4; else goto L_027F46C8;
|
|
L_027F46C8: ; // 0x27f46c8
|
|
/* 027F46C8 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F46C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F46CC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F46CC */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F46CC */ if (_t16) goto L_027F46D0; else goto L_027F46E0;
|
|
L_027F46D0: ; // 0x27f46d0
|
|
/* 027F46D0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F46D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F46D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F46DC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F46DC */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F46DC */ if (_t18) goto L_027F46EC; else goto L_027F46E0;
|
|
L_027F46E0: ; // 0x27f46e0
|
|
/* 027F46E0 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 027F46E0 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 027F46E4 */ _t20 = cpu->r[3] + 0x00000008u;
|
|
/* 027F46E4 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 027F46E8 */ _t21 = cpu->r[3] + 0x00000000u;
|
|
/* 027F46E8 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
L_027F46EC: ; // 0x27f46ec
|
|
/* 027F46EC */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 027F46F0 */ _t22 = cpu->r[29] + 0x0000000Cu;
|
|
/* 027F46F0 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
L_027F46F4: ; // 0x27f46f4
|
|
/* 027F46F4 */ cpu->r[0] = 0x00000008u;
|
|
/* 027F46F8 */ _t23 = cpu->r[31] + 0x00000010u;
|
|
/* 027F46F8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
L_027F46FC: ; // 0x27f46fc
|
|
/* 027F46FC */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F46FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F4700 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F4704 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4708 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4708 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F470C */ cpu->lr = cpu->r[0];
|
|
/* 027F4710 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4710 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F4714 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F4718 */ return;
|
|
}
|
|
|
|
// fn_027F4670 @ 0x27f4670
|
|
void Gambit_fn_027F4670(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_027F4670: ; // 0x27f4670
|
|
/* 027F4670 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F4670 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4670 */ cpu->r[1] = _t0;
|
|
/* 027F4674 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4674 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F4678 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4678 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F467C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 027F467C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027F4680 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F4684 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4684 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F4688 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4688 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F4688 */ if (_t6) goto L_027F468C; else goto L_027F469C;
|
|
L_027F468C: ; // 0x27f468c
|
|
/* 027F468C */ cpu->r[3] = 0x00000018u;
|
|
/* 027F4690 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F4694 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F4698 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4698 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F4698 */ if (_t8) goto L_027F46FC; else goto L_027F469C;
|
|
L_027F469C: ; // 0x27f469c
|
|
/* 027F469C */ cpu->r[11] = 0x10110000u;
|
|
/* 027F46A0 */ cpu->r[11] = cpu->r[11] + 0x00000558u;
|
|
/* 027F46A4 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F46A8 */ _t9 = cpu->r[31] + 0x00000014u;
|
|
/* 027F46A8 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 027F46AC */ cpu->r[29] = cpu->r[31] + 0x00000004u;
|
|
/* 027F46AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F46B0 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 027F46B0 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 027F46B4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F46B4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F46B4 */ if (_t12) goto L_027F46B8; else goto L_027F46C8;
|
|
L_027F46B8: ; // 0x27f46b8
|
|
/* 027F46B8 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F46BC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F46C0 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F46C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F46C4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F46C4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F46C4 */ if (_t14) goto L_027F46F4; else goto L_027F46C8;
|
|
L_027F46C8: ; // 0x27f46c8
|
|
/* 027F46C8 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F46C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F46CC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F46CC */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F46CC */ if (_t16) goto L_027F46D0; else goto L_027F46E0;
|
|
L_027F46D0: ; // 0x27f46d0
|
|
/* 027F46D0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F46D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F46D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F46DC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F46DC */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F46DC */ if (_t18) goto L_027F46EC; else goto L_027F46E0;
|
|
L_027F46E0: ; // 0x27f46e0
|
|
/* 027F46E0 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 027F46E0 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 027F46E4 */ _t20 = cpu->r[3] + 0x00000008u;
|
|
/* 027F46E4 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 027F46E8 */ _t21 = cpu->r[3] + 0x00000000u;
|
|
/* 027F46E8 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
L_027F46EC: ; // 0x27f46ec
|
|
/* 027F46EC */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 027F46F0 */ _t22 = cpu->r[29] + 0x0000000Cu;
|
|
/* 027F46F0 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
L_027F46F4: ; // 0x27f46f4
|
|
/* 027F46F4 */ cpu->r[0] = 0x00000008u;
|
|
/* 027F46F8 */ _t23 = cpu->r[31] + 0x00000010u;
|
|
/* 027F46F8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
L_027F46FC: ; // 0x27f46fc
|
|
/* 027F46FC */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F46FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F4700 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F4704 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4708 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4708 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F470C */ cpu->lr = cpu->r[0];
|
|
/* 027F4710 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4710 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F4714 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F4718 */ return;
|
|
}
|
|
|
|
// fn_027F471C @ 0x27f471c
|
|
void Gambit_fn_027F471C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F471C: ; // 0x27f471c
|
|
/* 027F471C */ cpu->r[0] = cpu->lr;
|
|
/* 027F4720 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 027F4720 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4720 */ cpu->r[1] = _t0;
|
|
/* 027F4724 */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 027F4724 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F4728 */ cpu->r[5] = 0x00000004u;
|
|
/* 027F472C */ /* nop */
|
|
/* 027F4730 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F4734 */ cpu->r[3] = 0x00000018u;
|
|
/* 027F4738 */ Gambit_fn_02801AC8(cpu);
|
|
/* 027F473C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4740 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4740 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F4740 */ if (_t3) goto L_027F4748; else goto L_027F4744;
|
|
L_027F4744: ; // 0x27f4744
|
|
/* 027F4744 */ Gambit_fn_027F466C(cpu);
|
|
L_027F4748: ; // 0x27f4748
|
|
/* 027F4748 */ _t4 = cpu->r[27] + 0x00000000u;
|
|
/* 027F4748 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F474C */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 027F474C */ rbrew_write32(cpu->mem, _t5, cpu->r[5]);
|
|
/* 027F4750 */ _t6 = cpu->r[27] + 0x00000000u;
|
|
/* 027F4750 */ cpu->r[20] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F4754 */ _t7 = cpu->r[20] + 0x0000001Cu;
|
|
/* 027F4754 */ cpu->r[19] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F4758 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F475C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 027F4760 */ cpu->r[18] = 0x00000000u;
|
|
/* 027F4764 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F4764 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F4764 */ if (_t9) goto L_027F4768; else goto L_027F499C;
|
|
L_027F4768: ; // 0x27f4768
|
|
/* 027F4768 */ cpu->r[31] = 0x10110000u;
|
|
/* 027F476C */ cpu->r[29] = 0x00080000u;
|
|
/* 027F4770 */ cpu->r[25] = 0x00000000u;
|
|
/* 027F4774 */ cpu->r[26] = 0x10110000u;
|
|
/* 027F4778 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027F477C */ _t10 = cpu->r[31] + 0x00007399u;
|
|
/* 027F477C */ cpu->r[31] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027F4780 */ cpu->r[26] = cpu->r[26] + 0x00000540u;
|
|
L_027F4784: ; // 0x27f4784
|
|
/* 027F4784 */ cpu->r[3] = cpu->r[20];
|
|
/* 027F4788 */ cpu->r[4] = cpu->r[18];
|
|
/* 027F478C */ Gambit_fn_0297FC7C(cpu);
|
|
/* 027F4790 */ _t11 = cpu->r[20] + 0x0000001Cu;
|
|
/* 027F4790 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F4794 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[6]);
|
|
/* 027F4798 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F479C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F479C */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F479C */ if (_t13) goto L_027F47A0; else goto L_027F47A8;
|
|
L_027F47A0: ; // 0x27f47a0
|
|
/* 027F47A0 */ _t14 = cpu->r[20] + 0x00000024u;
|
|
/* 027F47A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F47A4 */ _t15 = cpu->r[7] + cpu->r[25];
|
|
/* 027F47A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
L_027F47A8: ; // 0x27f47a8
|
|
/* 027F47A8 */ _t16 = cpu->r[6] + 0x00000000u;
|
|
/* 027F47A8 */ cpu->r[21] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F47AC */ _t17 = cpu->r[21] + 0x00000088u;
|
|
/* 027F47AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F47B0 */ _t18 = cpu->r[8] + 0x000000B4u;
|
|
/* 027F47B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F47B4 */ cpu->ctr = cpu->r[10];
|
|
/* 027F47B8 */ cpu->r[3] = cpu->r[21];
|
|
/* 027F47BC */ cpu->r[24] = 0x00000000u;
|
|
/* 027F47C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F47C4 */ cpu->r[17] = cpu->r[3];
|
|
/* 027F47C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 027F47C8 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F47C8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F47C8 */ if (_t20) goto L_027F47CC; else goto L_027F498C;
|
|
L_027F47CC: ; // 0x27f47cc
|
|
/* 027F47CC */ cpu->r[23] = 0x00000000u;
|
|
/* 027F47D0 */ cpu->r[28] = cpu->r[31];
|
|
/* 027F47D4 */ cpu->r[22] = 0xFFFFFFFFu;
|
|
L_027F47D8: ; // 0x27f47d8
|
|
/* 027F47D8 */ _t21 = cpu->r[27] + 0x00000008u;
|
|
/* 027F47D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F47DC */ cpu->r[9] = 0x00000000u;
|
|
/* 027F47E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F47E4 */ cpu->r[16] = cpu->r[9];
|
|
/* 027F47E8 */ cpu->r[10] = cpu->r[9];
|
|
/* 027F47EC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F47EC */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F47EC */ if (_t23) goto L_027F489C; else goto L_027F47F0;
|
|
L_027F47F0: ; // 0x27f47f0
|
|
/* 027F47F0 */ _t24 = cpu->r[21] + 0x00000088u;
|
|
/* 027F47F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F47F4 */ _t25 = cpu->r[12] + 0x000000C4u;
|
|
/* 027F47F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F47F8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F47FC */ cpu->r[3] = cpu->r[21];
|
|
/* 027F4800 */ cpu->r[5] = cpu->r[24];
|
|
/* 027F4804 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4808 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F480C */ _t26 = cpu->r[27] + 0x00000008u;
|
|
/* 027F480C */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F4810 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4810 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F4814 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4814 */ rbrew_write32(cpu->mem, _t28, cpu->r[26]);
|
|
/* 027F4818 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4818 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 027F481C */ _t30 = cpu->r[4] + 0x00000014u;
|
|
/* 027F481C */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F4820 */ cpu->r[10] = 0x00000001u;
|
|
/* 027F4824 */ cpu->ctr = cpu->r[5];
|
|
/* 027F4828 */ cpu->r[9] = cpu->r[10];
|
|
/* 027F482C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4830 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4834 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4834 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F4838 */ _t32 = cpu->r[6] + 0x00000014u;
|
|
/* 027F4838 */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F483C */ cpu->ctr = cpu->r[7];
|
|
/* 027F4840 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4844 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4848 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4848 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F484C */ _t34 = cpu->r[9] + 0x00000014u;
|
|
/* 027F484C */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F4850 */ cpu->ctr = cpu->r[10];
|
|
/* 027F4854 */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4854 */ cpu->r[15] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F4858 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F485C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4860 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4860 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F4864 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[15], cpu->r[11]);
|
|
/* 027F4868 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4868 */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F4868 */ if (_t38) goto L_027F489C; else goto L_027F486C;
|
|
L_027F486C: ; // 0x27f486c
|
|
/* 027F486C */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 027F486C */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F4870 */ cpu->ctr = cpu->r[29];
|
|
/* 027F4874 */ cpu->r[12] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_027F4878: ; // 0x27f4878
|
|
/* 027F4878 */ _t40 = cpu->r[10] + 0x00000000u;
|
|
/* 027F4878 */ cpu->r[4] = rbrew_read8(cpu->mem, _t40);
|
|
/* 027F487C */ _t41 = cpu->r[12] + 0x00000001u;
|
|
/* 027F487C */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 027F487C */ cpu->r[12] = _t41;
|
|
/* 027F4880 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F4884 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4884 */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F4884 */ if (_t43) goto L_027F4888; else goto L_027F4898;
|
|
L_027F4888: ; // 0x27f4888
|
|
/* 027F4888 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[28]);
|
|
/* 027F488C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F488C */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F488C */ if (_t45) goto L_027F489C; else goto L_027F4890;
|
|
L_027F4890: ; // 0x27f4890
|
|
/* 027F4890 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 027F4894 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F4894 */ _t46 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F4894 */ _t47 = _t46 >> (0x00000002u & 31u);
|
|
/* 027F4894 */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F4894 */ if (_t48) goto L_027F4878; else goto L_027F4898;
|
|
L_027F4898: ; // 0x27f4898
|
|
/* 027F4898 */ cpu->r[16] = 0x00000001u;
|
|
L_027F489C: ; // 0x27f489c
|
|
/* 027F489C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 027F48A0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F48A0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 027F48A0 */ if (_t50) goto L_027F48A4; else goto L_027F4980;
|
|
L_027F48A4: ; // 0x27f48a4
|
|
/* 027F48A4 */ _t51 = cpu->r[21] + 0x00000088u;
|
|
/* 027F48A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F48A8 */ _t52 = cpu->r[12] + 0x000000C4u;
|
|
/* 027F48A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F48AC */ cpu->ctr = cpu->r[0];
|
|
/* 027F48B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F48B4 */ cpu->r[5] = cpu->r[24];
|
|
/* 027F48B8 */ cpu->r[3] = cpu->r[21];
|
|
/* 027F48BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F48C0 */ _t53 = cpu->r[27] + 0x00000004u;
|
|
/* 027F48C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F48C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F48C8 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 027F48C8 */ rbrew_write32(cpu->mem, _t54, cpu->r[26]);
|
|
/* 027F48CC */ cpu->r[3] = cpu->r[20];
|
|
/* 027F48D0 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 027F48D0 */ rbrew_write32(cpu->mem, _t55, cpu->r[8]);
|
|
/* 027F48D4 */ Gambit_fn_02980A18(cpu);
|
|
/* 027F48D8 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 027F48DC */ _t56 = cpu->r[1] + 0x00000034u;
|
|
/* 027F48DC */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 027F48E0 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 027F48E4 */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 027F48E4 */ rbrew_write32(cpu->mem, _t57, cpu->r[3]);
|
|
/* 027F48E8 */ cpu->r[3] = cpu->r[20];
|
|
/* 027F48EC */ Gambit_fn_02980AB0(cpu);
|
|
/* 027F48F0 */ _t58 = cpu->r[1] + 0x00000018u;
|
|
/* 027F48F0 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 027F48F4 */ _t59 = cpu->r[1] + 0x00000018u;
|
|
/* 027F48F4 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t59);
|
|
/* 027F48F8 */ _t60 = cpu->r[1] + 0x00000028u;
|
|
/* 027F48F8 */ rbrew_write32(cpu->mem, _t60, cpu->r[3]);
|
|
/* 027F48FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu);
|
|
/* 027F4900 */ _t61 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4900 */ rbrew_write32(cpu->mem, _t61, cpu->r[4]);
|
|
/* 027F4904 */ _t62 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4904 */ rbrew_write32(cpu->mem, _t62, cpu->r[4]);
|
|
/* 027F4908 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4908 */ _t64 = _t63 & 0x00000001u;
|
|
/* 027F4908 */ if (_t64) goto L_027F4980; else goto L_027F490C;
|
|
L_027F490C: ; // 0x27f490c
|
|
/* 027F490C */ _t65 = cpu->r[1] + 0x0000001Au;
|
|
/* 027F490C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t65);
|
|
/* 027F4910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0xFFFFFFFFu);
|
|
/* 027F4914 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4914 */ _t67 = _t66 & 0x00000001u;
|
|
/* 027F4914 */ if (_t67) goto L_027F4980; else goto L_027F4918;
|
|
L_027F4918: ; // 0x27f4918
|
|
/* 027F4918 */ _t68 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4918 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t68);
|
|
/* 027F491C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 027F4920 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4920 */ _t70 = _t69 & 0x00000001u;
|
|
/* 027F4920 */ if (_t70) goto L_027F4980; else goto L_027F4924;
|
|
L_027F4924: ; // 0x27f4924
|
|
/* 027F4924 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F4928 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F492C */ cpu->r[16] = cpu->r[3];
|
|
/* 027F492C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 027F4930 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4930 */ _t72 = _t71 & 0x00000001u;
|
|
/* 027F4930 */ if (_t72) goto L_027F4954; else goto L_027F4934;
|
|
L_027F4934: ; // 0x27f4934
|
|
/* 027F4934 */ cpu->r[3] = cpu->r[16];
|
|
/* 027F4938 */ cpu->r[4] = 0x00000010u;
|
|
/* 027F493C */ Gambit_fn_02C89380(cpu);
|
|
/* 027F4940 */ _t73 = cpu->r[16] + 0x0000000Cu;
|
|
/* 027F4940 */ rbrew_write32(cpu->mem, _t73, cpu->r[23]);
|
|
/* 027F4944 */ _t74 = cpu->r[16] + 0x00000004u;
|
|
/* 027F4944 */ rbrew_write16(cpu->mem, _t74, (uint16_t)cpu->r[22]);
|
|
/* 027F4948 */ _t75 = cpu->r[16] + 0x00000000u;
|
|
/* 027F4948 */ rbrew_write16(cpu->mem, _t75, (uint16_t)cpu->r[22]);
|
|
/* 027F494C */ _t76 = cpu->r[16] + 0x00000008u;
|
|
/* 027F494C */ rbrew_write32(cpu->mem, _t76, cpu->r[23]);
|
|
/* 027F4950 */ _t77 = cpu->r[16] + 0x00000002u;
|
|
/* 027F4950 */ rbrew_write16(cpu->mem, _t77, (uint16_t)cpu->r[22]);
|
|
L_027F4954: ; // 0x27f4954
|
|
/* 027F4954 */ _t78 = cpu->r[1] + 0x00000018u;
|
|
/* 027F4954 */ cpu->r[8] = rbrew_read32(cpu->mem, _t78);
|
|
/* 027F4958 */ _t79 = cpu->r[16] + 0x00000000u;
|
|
/* 027F4958 */ rbrew_write32(cpu->mem, _t79, cpu->r[8]);
|
|
/* 027F495C */ _t80 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F495C */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 027F4960 */ _t81 = cpu->r[16] + 0x00000004u;
|
|
/* 027F4960 */ rbrew_write32(cpu->mem, _t81, cpu->r[9]);
|
|
/* 027F4964 */ _t82 = cpu->r[30] + 0x00000010u;
|
|
/* 027F4964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F4968 */ cpu->r[3] = cpu->r[30] + 0x00000004u;
|
|
/* 027F496C */ cpu->r[4] = cpu->r[16] + cpu->r[0];
|
|
/* 027F4970 */ Gambit_fn_02801EBC(cpu);
|
|
/* 027F4974 */ _t83 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F4974 */ cpu->r[4] = rbrew_read32(cpu->mem, _t83);
|
|
/* 027F4978 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 027F497C */ _t84 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F497C */ rbrew_write32(cpu->mem, _t84, cpu->r[4]);
|
|
L_027F4980: ; // 0x27f4980
|
|
/* 027F4980 */ cpu->r[17] = cpu->r[17] + 0xFFFFFFFFu;
|
|
/* 027F4980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 027F4984 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 027F4988 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4988 */ _t86 = _t85 & 0x00000001u;
|
|
/* 027F4988 */ if (_t86) goto L_027F498C; else goto L_027F47D8;
|
|
L_027F498C: ; // 0x27f498c
|
|
/* 027F498C */ cpu->r[19] = cpu->r[19] + 0xFFFFFFFFu;
|
|
/* 027F498C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 027F4990 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 027F4994 */ cpu->r[25] = cpu->r[25] + 0x00000004u;
|
|
/* 027F4998 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4998 */ _t88 = _t87 & 0x00000001u;
|
|
/* 027F4998 */ if (_t88) goto L_027F499C; else goto L_027F4784;
|
|
L_027F499C: ; // 0x27f499c
|
|
/* 027F499C */ _t89 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F499C */ cpu->r[5] = rbrew_read32(cpu->mem, _t89);
|
|
/* 027F49A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F49A4 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F49A4 */ _t91 = _t90 & 0x00000001u;
|
|
/* 027F49A4 */ if (_t91) goto L_027F49A8; else goto L_027F49C4;
|
|
L_027F49A8: ; // 0x27f49a8
|
|
/* 027F49A8 */ _t92 = cpu->r[30] + 0x00000014u;
|
|
/* 027F49A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92);
|
|
/* 027F49AC */ _t93 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F49AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 027F49B0 */ cpu->ctr = cpu->r[0];
|
|
/* 027F49B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F49B8 */ cpu->r[4] = 0x00000003u;
|
|
/* 027F49BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F49C0 */ cpu->r[30] = 0x00000000u;
|
|
L_027F49C4: ; // 0x27f49c4
|
|
/* 027F49C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F49C8 */ /* nop */
|
|
/* 027F49CC */ _t94 = cpu->r[1] + 0x00000084u;
|
|
/* 027F49CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 027F49D0 */ cpu->lr = cpu->r[0];
|
|
/* 027F49D4 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 027F49D8 */ return;
|
|
}
|
|
|
|
// fn_027F4720 @ 0x27f4720
|
|
void Gambit_fn_027F4720(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F4720: ; // 0x27f4720
|
|
/* 027F4720 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 027F4720 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4720 */ cpu->r[1] = _t0;
|
|
/* 027F4724 */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 027F4724 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F4728 */ cpu->r[5] = 0x00000004u;
|
|
/* 027F472C */ /* nop */
|
|
/* 027F4730 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F4734 */ cpu->r[3] = 0x00000018u;
|
|
/* 027F4738 */ Gambit_fn_02801AC8(cpu);
|
|
/* 027F473C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4740 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4740 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F4740 */ if (_t3) goto L_027F4748; else goto L_027F4744;
|
|
L_027F4744: ; // 0x27f4744
|
|
/* 027F4744 */ Gambit_fn_027F466C(cpu);
|
|
L_027F4748: ; // 0x27f4748
|
|
/* 027F4748 */ _t4 = cpu->r[27] + 0x00000000u;
|
|
/* 027F4748 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F474C */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 027F474C */ rbrew_write32(cpu->mem, _t5, cpu->r[5]);
|
|
/* 027F4750 */ _t6 = cpu->r[27] + 0x00000000u;
|
|
/* 027F4750 */ cpu->r[20] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F4754 */ _t7 = cpu->r[20] + 0x0000001Cu;
|
|
/* 027F4754 */ cpu->r[19] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F4758 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F475C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 027F4760 */ cpu->r[18] = 0x00000000u;
|
|
/* 027F4764 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F4764 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F4764 */ if (_t9) goto L_027F4768; else goto L_027F499C;
|
|
L_027F4768: ; // 0x27f4768
|
|
/* 027F4768 */ cpu->r[31] = 0x10110000u;
|
|
/* 027F476C */ cpu->r[29] = 0x00080000u;
|
|
/* 027F4770 */ cpu->r[25] = 0x00000000u;
|
|
/* 027F4774 */ cpu->r[26] = 0x10110000u;
|
|
/* 027F4778 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027F477C */ _t10 = cpu->r[31] + 0x00007399u;
|
|
/* 027F477C */ cpu->r[31] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027F4780 */ cpu->r[26] = cpu->r[26] + 0x00000540u;
|
|
L_027F4784: ; // 0x27f4784
|
|
/* 027F4784 */ cpu->r[3] = cpu->r[20];
|
|
/* 027F4788 */ cpu->r[4] = cpu->r[18];
|
|
/* 027F478C */ Gambit_fn_0297FC7C(cpu);
|
|
/* 027F4790 */ _t11 = cpu->r[20] + 0x0000001Cu;
|
|
/* 027F4790 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F4794 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[6]);
|
|
/* 027F4798 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F479C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F479C */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F479C */ if (_t13) goto L_027F47A0; else goto L_027F47A8;
|
|
L_027F47A0: ; // 0x27f47a0
|
|
/* 027F47A0 */ _t14 = cpu->r[20] + 0x00000024u;
|
|
/* 027F47A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F47A4 */ _t15 = cpu->r[7] + cpu->r[25];
|
|
/* 027F47A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t15);
|
|
L_027F47A8: ; // 0x27f47a8
|
|
/* 027F47A8 */ _t16 = cpu->r[6] + 0x00000000u;
|
|
/* 027F47A8 */ cpu->r[21] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F47AC */ _t17 = cpu->r[21] + 0x00000088u;
|
|
/* 027F47AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F47B0 */ _t18 = cpu->r[8] + 0x000000B4u;
|
|
/* 027F47B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F47B4 */ cpu->ctr = cpu->r[10];
|
|
/* 027F47B8 */ cpu->r[3] = cpu->r[21];
|
|
/* 027F47BC */ cpu->r[24] = 0x00000000u;
|
|
/* 027F47C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F47C4 */ cpu->r[17] = cpu->r[3];
|
|
/* 027F47C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 027F47C8 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F47C8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F47C8 */ if (_t20) goto L_027F47CC; else goto L_027F498C;
|
|
L_027F47CC: ; // 0x27f47cc
|
|
/* 027F47CC */ cpu->r[23] = 0x00000000u;
|
|
/* 027F47D0 */ cpu->r[28] = cpu->r[31];
|
|
/* 027F47D4 */ cpu->r[22] = 0xFFFFFFFFu;
|
|
L_027F47D8: ; // 0x27f47d8
|
|
/* 027F47D8 */ _t21 = cpu->r[27] + 0x00000008u;
|
|
/* 027F47D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F47DC */ cpu->r[9] = 0x00000000u;
|
|
/* 027F47E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F47E4 */ cpu->r[16] = cpu->r[9];
|
|
/* 027F47E8 */ cpu->r[10] = cpu->r[9];
|
|
/* 027F47EC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F47EC */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F47EC */ if (_t23) goto L_027F489C; else goto L_027F47F0;
|
|
L_027F47F0: ; // 0x27f47f0
|
|
/* 027F47F0 */ _t24 = cpu->r[21] + 0x00000088u;
|
|
/* 027F47F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F47F4 */ _t25 = cpu->r[12] + 0x000000C4u;
|
|
/* 027F47F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F47F8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F47FC */ cpu->r[3] = cpu->r[21];
|
|
/* 027F4800 */ cpu->r[5] = cpu->r[24];
|
|
/* 027F4804 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4808 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F480C */ _t26 = cpu->r[27] + 0x00000008u;
|
|
/* 027F480C */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F4810 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4810 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F4814 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4814 */ rbrew_write32(cpu->mem, _t28, cpu->r[26]);
|
|
/* 027F4818 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4818 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 027F481C */ _t30 = cpu->r[4] + 0x00000014u;
|
|
/* 027F481C */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F4820 */ cpu->r[10] = 0x00000001u;
|
|
/* 027F4824 */ cpu->ctr = cpu->r[5];
|
|
/* 027F4828 */ cpu->r[9] = cpu->r[10];
|
|
/* 027F482C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4830 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4834 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4834 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F4838 */ _t32 = cpu->r[6] + 0x00000014u;
|
|
/* 027F4838 */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F483C */ cpu->ctr = cpu->r[7];
|
|
/* 027F4840 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4844 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4848 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4848 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F484C */ _t34 = cpu->r[9] + 0x00000014u;
|
|
/* 027F484C */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F4850 */ cpu->ctr = cpu->r[10];
|
|
/* 027F4854 */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4854 */ cpu->r[15] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F4858 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F485C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4860 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4860 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F4864 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[15], cpu->r[11]);
|
|
/* 027F4868 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4868 */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F4868 */ if (_t38) goto L_027F489C; else goto L_027F486C;
|
|
L_027F486C: ; // 0x27f486c
|
|
/* 027F486C */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 027F486C */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F4870 */ cpu->ctr = cpu->r[29];
|
|
/* 027F4874 */ cpu->r[12] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_027F4878: ; // 0x27f4878
|
|
/* 027F4878 */ _t40 = cpu->r[10] + 0x00000000u;
|
|
/* 027F4878 */ cpu->r[4] = rbrew_read8(cpu->mem, _t40);
|
|
/* 027F487C */ _t41 = cpu->r[12] + 0x00000001u;
|
|
/* 027F487C */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 027F487C */ cpu->r[12] = _t41;
|
|
/* 027F4880 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 027F4884 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4884 */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F4884 */ if (_t43) goto L_027F4888; else goto L_027F4898;
|
|
L_027F4888: ; // 0x27f4888
|
|
/* 027F4888 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[28]);
|
|
/* 027F488C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F488C */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F488C */ if (_t45) goto L_027F489C; else goto L_027F4890;
|
|
L_027F4890: ; // 0x27f4890
|
|
/* 027F4890 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 027F4894 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F4894 */ _t46 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F4894 */ _t47 = _t46 >> (0x00000002u & 31u);
|
|
/* 027F4894 */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F4894 */ if (_t48) goto L_027F4878; else goto L_027F4898;
|
|
L_027F4898: ; // 0x27f4898
|
|
/* 027F4898 */ cpu->r[16] = 0x00000001u;
|
|
L_027F489C: ; // 0x27f489c
|
|
/* 027F489C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 027F48A0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F48A0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 027F48A0 */ if (_t50) goto L_027F48A4; else goto L_027F4980;
|
|
L_027F48A4: ; // 0x27f48a4
|
|
/* 027F48A4 */ _t51 = cpu->r[21] + 0x00000088u;
|
|
/* 027F48A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F48A8 */ _t52 = cpu->r[12] + 0x000000C4u;
|
|
/* 027F48A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F48AC */ cpu->ctr = cpu->r[0];
|
|
/* 027F48B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F48B4 */ cpu->r[5] = cpu->r[24];
|
|
/* 027F48B8 */ cpu->r[3] = cpu->r[21];
|
|
/* 027F48BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F48C0 */ _t53 = cpu->r[27] + 0x00000004u;
|
|
/* 027F48C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F48C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F48C8 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 027F48C8 */ rbrew_write32(cpu->mem, _t54, cpu->r[26]);
|
|
/* 027F48CC */ cpu->r[3] = cpu->r[20];
|
|
/* 027F48D0 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 027F48D0 */ rbrew_write32(cpu->mem, _t55, cpu->r[8]);
|
|
/* 027F48D4 */ Gambit_fn_02980A18(cpu);
|
|
/* 027F48D8 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 027F48DC */ _t56 = cpu->r[1] + 0x00000034u;
|
|
/* 027F48DC */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 027F48E0 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 027F48E4 */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 027F48E4 */ rbrew_write32(cpu->mem, _t57, cpu->r[3]);
|
|
/* 027F48E8 */ cpu->r[3] = cpu->r[20];
|
|
/* 027F48EC */ Gambit_fn_02980AB0(cpu);
|
|
/* 027F48F0 */ _t58 = cpu->r[1] + 0x00000018u;
|
|
/* 027F48F0 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 027F48F4 */ _t59 = cpu->r[1] + 0x00000018u;
|
|
/* 027F48F4 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t59);
|
|
/* 027F48F8 */ _t60 = cpu->r[1] + 0x00000028u;
|
|
/* 027F48F8 */ rbrew_write32(cpu->mem, _t60, cpu->r[3]);
|
|
/* 027F48FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu);
|
|
/* 027F4900 */ _t61 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4900 */ rbrew_write32(cpu->mem, _t61, cpu->r[4]);
|
|
/* 027F4904 */ _t62 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4904 */ rbrew_write32(cpu->mem, _t62, cpu->r[4]);
|
|
/* 027F4908 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4908 */ _t64 = _t63 & 0x00000001u;
|
|
/* 027F4908 */ if (_t64) goto L_027F4980; else goto L_027F490C;
|
|
L_027F490C: ; // 0x27f490c
|
|
/* 027F490C */ _t65 = cpu->r[1] + 0x0000001Au;
|
|
/* 027F490C */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t65);
|
|
/* 027F4910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0xFFFFFFFFu);
|
|
/* 027F4914 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4914 */ _t67 = _t66 & 0x00000001u;
|
|
/* 027F4914 */ if (_t67) goto L_027F4980; else goto L_027F4918;
|
|
L_027F4918: ; // 0x27f4918
|
|
/* 027F4918 */ _t68 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4918 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t68);
|
|
/* 027F491C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 027F4920 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4920 */ _t70 = _t69 & 0x00000001u;
|
|
/* 027F4920 */ if (_t70) goto L_027F4980; else goto L_027F4924;
|
|
L_027F4924: ; // 0x27f4924
|
|
/* 027F4924 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F4928 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F492C */ cpu->r[16] = cpu->r[3];
|
|
/* 027F492C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 027F4930 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4930 */ _t72 = _t71 & 0x00000001u;
|
|
/* 027F4930 */ if (_t72) goto L_027F4954; else goto L_027F4934;
|
|
L_027F4934: ; // 0x27f4934
|
|
/* 027F4934 */ cpu->r[3] = cpu->r[16];
|
|
/* 027F4938 */ cpu->r[4] = 0x00000010u;
|
|
/* 027F493C */ Gambit_fn_02C89380(cpu);
|
|
/* 027F4940 */ _t73 = cpu->r[16] + 0x0000000Cu;
|
|
/* 027F4940 */ rbrew_write32(cpu->mem, _t73, cpu->r[23]);
|
|
/* 027F4944 */ _t74 = cpu->r[16] + 0x00000004u;
|
|
/* 027F4944 */ rbrew_write16(cpu->mem, _t74, (uint16_t)cpu->r[22]);
|
|
/* 027F4948 */ _t75 = cpu->r[16] + 0x00000000u;
|
|
/* 027F4948 */ rbrew_write16(cpu->mem, _t75, (uint16_t)cpu->r[22]);
|
|
/* 027F494C */ _t76 = cpu->r[16] + 0x00000008u;
|
|
/* 027F494C */ rbrew_write32(cpu->mem, _t76, cpu->r[23]);
|
|
/* 027F4950 */ _t77 = cpu->r[16] + 0x00000002u;
|
|
/* 027F4950 */ rbrew_write16(cpu->mem, _t77, (uint16_t)cpu->r[22]);
|
|
L_027F4954: ; // 0x27f4954
|
|
/* 027F4954 */ _t78 = cpu->r[1] + 0x00000018u;
|
|
/* 027F4954 */ cpu->r[8] = rbrew_read32(cpu->mem, _t78);
|
|
/* 027F4958 */ _t79 = cpu->r[16] + 0x00000000u;
|
|
/* 027F4958 */ rbrew_write32(cpu->mem, _t79, cpu->r[8]);
|
|
/* 027F495C */ _t80 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F495C */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 027F4960 */ _t81 = cpu->r[16] + 0x00000004u;
|
|
/* 027F4960 */ rbrew_write32(cpu->mem, _t81, cpu->r[9]);
|
|
/* 027F4964 */ _t82 = cpu->r[30] + 0x00000010u;
|
|
/* 027F4964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F4968 */ cpu->r[3] = cpu->r[30] + 0x00000004u;
|
|
/* 027F496C */ cpu->r[4] = cpu->r[16] + cpu->r[0];
|
|
/* 027F4970 */ Gambit_fn_02801EBC(cpu);
|
|
/* 027F4974 */ _t83 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F4974 */ cpu->r[4] = rbrew_read32(cpu->mem, _t83);
|
|
/* 027F4978 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 027F497C */ _t84 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F497C */ rbrew_write32(cpu->mem, _t84, cpu->r[4]);
|
|
L_027F4980: ; // 0x27f4980
|
|
/* 027F4980 */ cpu->r[17] = cpu->r[17] + 0xFFFFFFFFu;
|
|
/* 027F4980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 027F4984 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 027F4988 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4988 */ _t86 = _t85 & 0x00000001u;
|
|
/* 027F4988 */ if (_t86) goto L_027F498C; else goto L_027F47D8;
|
|
L_027F498C: ; // 0x27f498c
|
|
/* 027F498C */ cpu->r[19] = cpu->r[19] + 0xFFFFFFFFu;
|
|
/* 027F498C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 027F4990 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 027F4994 */ cpu->r[25] = cpu->r[25] + 0x00000004u;
|
|
/* 027F4998 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4998 */ _t88 = _t87 & 0x00000001u;
|
|
/* 027F4998 */ if (_t88) goto L_027F499C; else goto L_027F4784;
|
|
L_027F499C: ; // 0x27f499c
|
|
/* 027F499C */ _t89 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F499C */ cpu->r[5] = rbrew_read32(cpu->mem, _t89);
|
|
/* 027F49A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F49A4 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F49A4 */ _t91 = _t90 & 0x00000001u;
|
|
/* 027F49A4 */ if (_t91) goto L_027F49A8; else goto L_027F49C4;
|
|
L_027F49A8: ; // 0x27f49a8
|
|
/* 027F49A8 */ _t92 = cpu->r[30] + 0x00000014u;
|
|
/* 027F49A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92);
|
|
/* 027F49AC */ _t93 = cpu->r[7] + 0x0000000Cu;
|
|
/* 027F49AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 027F49B0 */ cpu->ctr = cpu->r[0];
|
|
/* 027F49B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F49B8 */ cpu->r[4] = 0x00000003u;
|
|
/* 027F49BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F49C0 */ cpu->r[30] = 0x00000000u;
|
|
L_027F49C4: ; // 0x27f49c4
|
|
/* 027F49C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F49C8 */ /* nop */
|
|
/* 027F49CC */ _t94 = cpu->r[1] + 0x00000084u;
|
|
/* 027F49CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 027F49D0 */ cpu->lr = cpu->r[0];
|
|
/* 027F49D4 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 027F49D8 */ return;
|
|
}
|
|
|
|
// fn_027F49DC @ 0x27f49dc
|
|
void Gambit_fn_027F49DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_027F49DC: ; // 0x27f49dc
|
|
/* 027F49DC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F49DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F49DC */ cpu->r[1] = _t0;
|
|
/* 027F49E0 */ /* nop */
|
|
/* 027F49E4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F49E8 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 027F49E8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 027F49EC */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 027F49EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F49F0 */ /* nop */
|
|
/* 027F49F4 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 027F49F4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 027F49F8 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F49FC */ _t4 = cpu->r[27] + 0x00000010u;
|
|
/* 027F49FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F4A00 */ cpu->r[0] = cpu->r[27] + 0x00000004u;
|
|
/* 027F4A04 */ _t5 = cpu->r[27] + 0x00000008u;
|
|
/* 027F4A04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F4A08 */ cpu->r[30] = cpu->r[0] - cpu->r[29];
|
|
/* 027F4A0C */ cpu->r[31] = cpu->r[12] - cpu->r[29];
|
|
/* 027F4A10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 027F4A14 */ cpu->f[31] = cpu->f[1];
|
|
/* 027F4A18 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4A18 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F4A18 */ if (_t7) goto L_027F4A80; else goto L_027F4A1C;
|
|
L_027F4A1C: ; // 0x27f4a1c
|
|
/* 027F4A1C */ _t8 = cpu->r[27] + 0x00000000u;
|
|
/* 027F4A1C */ cpu->r[28] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F4A20 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 027F4A20 */ cpu->r[26] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t9);
|
|
/* 027F4A24 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F4A28 */ cpu->r[4] = cpu->r[26];
|
|
/* 027F4A2C */ Gambit_fn_0297FC7C(cpu);
|
|
/* 027F4A30 */ _t10 = cpu->r[28] + 0x0000001Cu;
|
|
/* 027F4A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F4A34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 027F4A38 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F4A3C */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F4A3C */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F4A3C */ if (_t12) goto L_027F4A40; else goto L_027F4A4C;
|
|
L_027F4A40: ; // 0x27f4a40
|
|
/* 027F4A40 */ _t13 = cpu->r[28] + 0x00000024u;
|
|
/* 027F4A40 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F4A44 */ cpu->r[5] = rbrew_rlwinm(cpu->r[26], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F4A48 */ _t14 = cpu->r[5] + cpu->r[7];
|
|
/* 027F4A48 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
L_027F4A4C: ; // 0x27f4a4c
|
|
/* 027F4A4C */ _t15 = cpu->r[6] + 0x00000000u;
|
|
/* 027F4A4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4A50 */ _t16 = cpu->r[3] + 0x00000088u;
|
|
/* 027F4A50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F4A54 */ _t17 = cpu->r[8] + 0x00000114u;
|
|
/* 027F4A54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F4A58 */ _t18 = cpu->r[31] + 0x00000002u;
|
|
/* 027F4A58 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t18);
|
|
/* 027F4A5C */ cpu->ctr = cpu->r[10];
|
|
/* 027F4A60 */ _t19 = cpu->r[31] + 0x00000004u;
|
|
/* 027F4A60 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t19);
|
|
/* 027F4A64 */ cpu->f[1] = cpu->f[31];
|
|
/* 027F4A68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4A6C */ cpu->r[9] = cpu->r[31] + cpu->r[29];
|
|
/* 027F4A70 */ _t20 = cpu->r[9] + 0x00000004u;
|
|
/* 027F4A70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F4A74 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 027F4A78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 027F4A7C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4A7C */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F4A7C */ if (_t22) goto L_027F4A80; else goto L_027F4A1C;
|
|
L_027F4A80: ; // 0x27f4a80
|
|
/* 027F4A80 */ /* nop */
|
|
/* 027F4A84 */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 027F4A84 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 027F4A88 */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 027F4A88 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 027F4A8C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F4A8C */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F4A8C */ if (_t26) goto L_027F4A90; // else: addr-0 trap, fall-through
|
|
L_027F4A90: ; // 0x27f4a90
|
|
/* 027F4A90 */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4A90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F4A94 */ cpu->lr = cpu->r[0];
|
|
/* 027F4A98 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F4A9C */ return;
|
|
}
|
|
|
|
// fn_027F4AA0 @ 0x27f4aa0
|
|
void Gambit_fn_027F4AA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027F4AA0: ; // 0x27f4aa0
|
|
/* 027F4AA0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F4AA4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F4AA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F4AA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4AAC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F4AAC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F4AAC */ cpu->r[1] = _t1;
|
|
/* 027F4AB0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4AB0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F4AB0 */ if (_t3) goto L_027F4AB4; else goto L_027F4AC4;
|
|
L_027F4AB4: ; // 0x27f4ab4
|
|
/* 027F4AB4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F4AB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F4ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4AC0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4AC0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F4AC0 */ if (_t5) goto L_027F4AD4; else goto L_027F4AC4;
|
|
L_027F4AC4: ; // 0x27f4ac4
|
|
/* 027F4AC4 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F4AC8 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 027F4AC8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F4ACC */ _t7 = cpu->r[3] + 0x00000008u;
|
|
/* 027F4ACC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F4AD0 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 027F4AD0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_027F4AD4: ; // 0x27f4ad4
|
|
/* 027F4AD4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4AD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F4AD8 */ cpu->lr = cpu->r[0];
|
|
/* 027F4ADC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4AE0 */ return;
|
|
}
|
|
|
|
// fn_027F4AAC @ 0x27f4aac
|
|
void Gambit_fn_027F4AAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_027F4AAC: ; // 0x27f4aac
|
|
/* 027F4AAC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F4AAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4AAC */ cpu->r[1] = _t0;
|
|
/* 027F4AB0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4AB0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F4AB0 */ if (_t2) goto L_027F4AB4; else goto L_027F4AC4;
|
|
L_027F4AB4: ; // 0x27f4ab4
|
|
/* 027F4AB4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F4AB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F4ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4AC0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4AC0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F4AC0 */ if (_t4) goto L_027F4AD4; else goto L_027F4AC4;
|
|
L_027F4AC4: ; // 0x27f4ac4
|
|
/* 027F4AC4 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F4AC8 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 027F4AC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F4ACC */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 027F4ACC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F4AD0 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 027F4AD0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_027F4AD4: ; // 0x27f4ad4
|
|
/* 027F4AD4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4AD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F4AD8 */ cpu->lr = cpu->r[0];
|
|
/* 027F4ADC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4AE0 */ return;
|
|
}
|
|
|
|
// fn_027F4AE4 @ 0x27f4ae4
|
|
void Gambit_fn_027F4AE4(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_027F4AE4: ; // 0x27f4ae4
|
|
/* 027F4AE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4AE8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4AE8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F4AE8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F4AE8 */ goto L_027F4AEC;
|
|
L_027F4AEC: ; // 0x27f4aec
|
|
/* 027F4AEC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F4AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4AF0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4AF0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F4AF0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F4AF0 */ goto L_027F4AF4;
|
|
L_027F4AF4: ; // 0x27f4af4
|
|
/* 027F4AF4 */ 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_027F4AF8 @ 0x27f4af8
|
|
void Gambit_fn_027F4AF8(CPUState* cpu) {
|
|
L_027F4AF8: ; // 0x27f4af8
|
|
/* 027F4AF8 */ return;
|
|
}
|
|
|
|
// fn_027F4AFC @ 0x27f4afc
|
|
void Gambit_fn_027F4AFC(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_027F4AFC: ; // 0x27f4afc
|
|
/* 027F4AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4B00 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4B00 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F4B00 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F4B00 */ goto L_027F4B04;
|
|
L_027F4B04: ; // 0x27f4b04
|
|
/* 027F4B04 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F4B04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4B08 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4B08 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F4B08 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F4B08 */ goto L_027F4B0C;
|
|
L_027F4B0C: ; // 0x27f4b0c
|
|
/* 027F4B0C */ 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_027F4B10 @ 0x27f4b10
|
|
void Gambit_fn_027F4B10(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_027F4B10: ; // 0x27f4b10
|
|
/* 027F4B10 */ cpu->r[0] = cpu->lr;
|
|
/* 027F4B14 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 027F4B14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4B14 */ cpu->r[1] = _t0;
|
|
/* 027F4B18 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F4B1C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4B1C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F4B20 */ cpu->r[9] = cpu->r[9] + 0x00000568u;
|
|
/* 027F4B24 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4B24 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F4B28 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F4B2C */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 027F4B2C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 027F4B30 */ cpu->r[28] = cpu->r[6];
|
|
/* 027F4B34 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 027F4B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027F4B38 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F4B3C */ cpu->r[3] = cpu->r[4];
|
|
/* 027F4B40 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 027F4B44 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F4B44 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F4B48 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F4B4C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4B4C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 027F4B50 */ cpu->r[0] = cpu->r[0] + 0x000005CCu;
|
|
/* 027F4B54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4B58 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4B58 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F4B5C */ Gambit_fn_027C6C00(cpu);
|
|
/* 027F4B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4B64 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F4B68 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4B68 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F4B68 */ if (_t9) goto L_027F4B9C; else goto L_027F4B6C;
|
|
L_027F4B6C: ; // 0x27f4b6c
|
|
/* 027F4B6C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027F4B70 */ Gambit_fn_02A010C4(cpu);
|
|
/* 027F4B74 */ _t10 = cpu->r[28] + 0x00000014u;
|
|
/* 027F4B74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F4B78 */ cpu->r[5] = cpu->r[31];
|
|
/* 027F4B7C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F4B80 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 027F4B80 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 027F4B84 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F4B88 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 027F4B88 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 027F4B8C */ Gambit_fn_0297FBAC(cpu);
|
|
/* 027F4B90 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F4B94 */ _t13 = cpu->r[12] + 0x000005C8u;
|
|
/* 027F4B94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 027F4B98 */ _t14 = cpu->r[3] + 0x000002A8u;
|
|
/* 027F4B98 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
L_027F4B9C: ; // 0x27f4b9c
|
|
/* 027F4B9C */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 027F4B9C */ cpu->r[28] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4BA0 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4BA0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F4BA4 */ _t17 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F4BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F4BA8 */ _t18 = cpu->r[1] + 0x00000030u;
|
|
/* 027F4BA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F4BAC */ cpu->lr = cpu->r[0];
|
|
/* 027F4BB0 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4BB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F4BB4 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F4BB8 */ return;
|
|
}
|
|
|
|
// fn_027F4B14 @ 0x27f4b14
|
|
void Gambit_fn_027F4B14(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_027F4B14: ; // 0x27f4b14
|
|
/* 027F4B14 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 027F4B14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4B14 */ cpu->r[1] = _t0;
|
|
/* 027F4B18 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F4B1C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4B1C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F4B20 */ cpu->r[9] = cpu->r[9] + 0x00000568u;
|
|
/* 027F4B24 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4B24 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F4B28 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F4B2C */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 027F4B2C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 027F4B30 */ cpu->r[28] = cpu->r[6];
|
|
/* 027F4B34 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 027F4B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027F4B38 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F4B3C */ cpu->r[3] = cpu->r[4];
|
|
/* 027F4B40 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 027F4B44 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F4B44 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F4B48 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F4B4C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4B4C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 027F4B50 */ cpu->r[0] = cpu->r[0] + 0x000005CCu;
|
|
/* 027F4B54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4B58 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4B58 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F4B5C */ Gambit_fn_027C6C00(cpu);
|
|
/* 027F4B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4B64 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F4B68 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4B68 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F4B68 */ if (_t9) goto L_027F4B9C; else goto L_027F4B6C;
|
|
L_027F4B6C: ; // 0x27f4b6c
|
|
/* 027F4B6C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 027F4B70 */ Gambit_fn_02A010C4(cpu);
|
|
/* 027F4B74 */ _t10 = cpu->r[28] + 0x00000014u;
|
|
/* 027F4B74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F4B78 */ cpu->r[5] = cpu->r[31];
|
|
/* 027F4B7C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F4B80 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 027F4B80 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 027F4B84 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F4B88 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 027F4B88 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 027F4B8C */ Gambit_fn_0297FBAC(cpu);
|
|
/* 027F4B90 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F4B94 */ _t13 = cpu->r[12] + 0x000005C8u;
|
|
/* 027F4B94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 027F4B98 */ _t14 = cpu->r[3] + 0x000002A8u;
|
|
/* 027F4B98 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
L_027F4B9C: ; // 0x27f4b9c
|
|
/* 027F4B9C */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 027F4B9C */ cpu->r[28] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4BA0 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4BA0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F4BA4 */ _t17 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F4BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F4BA8 */ _t18 = cpu->r[1] + 0x00000030u;
|
|
/* 027F4BA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F4BAC */ cpu->lr = cpu->r[0];
|
|
/* 027F4BB0 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4BB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F4BB4 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F4BB8 */ return;
|
|
}
|
|
|
|
// fn_027F4BBC @ 0x27f4bbc
|
|
void Gambit_fn_027F4BBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_027F4BBC: ; // 0x27f4bbc
|
|
/* 027F4BBC */ cpu->r[0] = cpu->lr;
|
|
/* 027F4BC0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027F4BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4BC0 */ cpu->r[1] = _t0;
|
|
/* 027F4BC4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027F4BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F4BC8 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F4BCC */ cpu->r[12] = 0x10110000u;
|
|
/* 027F4BD0 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 027F4BD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F4BD4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F4BD8 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F4BDC */ cpu->r[5] = 0x00000000u;
|
|
/* 027F4BE0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4BE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F4BE4 */ cpu->r[12] = cpu->r[12] + 0x000005E4u;
|
|
/* 027F4BE8 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4BE8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F4BEC */ cpu->r[0] = 0x10110000u;
|
|
/* 027F4BF0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4BF0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 027F4BF4 */ cpu->r[0] = cpu->r[0] + 0x00000568u;
|
|
/* 027F4BF8 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F4BFC */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 027F4BFC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F4C00 */ Gambit_fn_027C6C00(cpu);
|
|
/* 027F4C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4C08 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F4C0C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4C0C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F4C0C */ if (_t8) goto L_027F4C58; else goto L_027F4C10;
|
|
L_027F4C10: ; // 0x27f4c10
|
|
/* 027F4C10 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4C14 */ Gambit_fn_0298CA18(cpu);
|
|
/* 027F4C18 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4C1C */ cpu->r[5] = cpu->r[31];
|
|
/* 027F4C20 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F4C24 */ Gambit_fn_0297FC30(cpu);
|
|
/* 027F4C28 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4C2C */ cpu->r[4] = cpu->r[29];
|
|
/* 027F4C30 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4C34 */ Gambit_fn_0295C0A8(cpu);
|
|
/* 027F4C38 */ _t9 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F4C38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F4C3C */ _t10 = cpu->r[9] + 0x00000054u;
|
|
/* 027F4C3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F4C40 */ cpu->ctr = cpu->r[11];
|
|
/* 027F4C44 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F4C48 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4C48 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027F4C4C */ cpu->r[3] = cpu->r[31] + 0x00000090u;
|
|
/* 027F4C50 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F4C54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_027F4C58: ; // 0x27f4c58
|
|
/* 027F4C58 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4C58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F4C5C */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4C5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F4C60 */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 027F4C60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4C64 */ cpu->lr = cpu->r[0];
|
|
/* 027F4C68 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 027F4C68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F4C6C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F4C70 */ return;
|
|
}
|
|
|
|
// fn_027F4BC0 @ 0x27f4bc0
|
|
void Gambit_fn_027F4BC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_027F4BC0: ; // 0x27f4bc0
|
|
/* 027F4BC0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027F4BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4BC0 */ cpu->r[1] = _t0;
|
|
/* 027F4BC4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027F4BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F4BC8 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F4BCC */ cpu->r[12] = 0x10110000u;
|
|
/* 027F4BD0 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 027F4BD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F4BD4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F4BD8 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F4BDC */ cpu->r[5] = 0x00000000u;
|
|
/* 027F4BE0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4BE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F4BE4 */ cpu->r[12] = cpu->r[12] + 0x000005E4u;
|
|
/* 027F4BE8 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4BE8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F4BEC */ cpu->r[0] = 0x10110000u;
|
|
/* 027F4BF0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4BF0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 027F4BF4 */ cpu->r[0] = cpu->r[0] + 0x00000568u;
|
|
/* 027F4BF8 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F4BFC */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 027F4BFC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F4C00 */ Gambit_fn_027C6C00(cpu);
|
|
/* 027F4C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F4C08 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F4C0C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4C0C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F4C0C */ if (_t8) goto L_027F4C58; else goto L_027F4C10;
|
|
L_027F4C10: ; // 0x27f4c10
|
|
/* 027F4C10 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4C14 */ Gambit_fn_0298CA18(cpu);
|
|
/* 027F4C18 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4C1C */ cpu->r[5] = cpu->r[31];
|
|
/* 027F4C20 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F4C24 */ Gambit_fn_0297FC30(cpu);
|
|
/* 027F4C28 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4C2C */ cpu->r[4] = cpu->r[29];
|
|
/* 027F4C30 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4C34 */ Gambit_fn_0295C0A8(cpu);
|
|
/* 027F4C38 */ _t9 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F4C38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F4C3C */ _t10 = cpu->r[9] + 0x00000054u;
|
|
/* 027F4C3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F4C40 */ cpu->ctr = cpu->r[11];
|
|
/* 027F4C44 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F4C48 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4C48 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027F4C4C */ cpu->r[3] = cpu->r[31] + 0x00000090u;
|
|
/* 027F4C50 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F4C54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_027F4C58: ; // 0x27f4c58
|
|
/* 027F4C58 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4C58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F4C5C */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4C5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F4C60 */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 027F4C60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4C64 */ cpu->lr = cpu->r[0];
|
|
/* 027F4C68 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 027F4C68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F4C6C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F4C70 */ return;
|
|
}
|
|
|
|
// fn_027F4C74 @ 0x27f4c74
|
|
void Gambit_fn_027F4C74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F4C74: ; // 0x27f4c74
|
|
/* 027F4C74 */ cpu->r[0] = cpu->lr;
|
|
/* 027F4C78 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F4C78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4C78 */ cpu->r[1] = _t0;
|
|
/* 027F4C7C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4C7C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F4C80 */ cpu->r[30] = cpu->r[5];
|
|
/* 027F4C84 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4C84 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027F4C88 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4C88 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F4C8C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4C8C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027F4C90 */ cpu->r[7] = 0x00000000u;
|
|
/* 027F4C94 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4C94 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F4C98 */ cpu->r[29] = cpu->r[4];
|
|
/* 027F4C9C */ cpu->r[0] = cpu->r[3];
|
|
/* 027F4CA0 */ _t6 = cpu->r[29] + 0x00000004u;
|
|
/* 027F4CA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F4CA4 */ cpu->r[4] = cpu->r[0];
|
|
/* 027F4CA8 */ cpu->r[28] = cpu->r[6];
|
|
/* 027F4CAC */ Gambit_fn_0297F968(cpu);
|
|
/* 027F4CB0 */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 027F4CB0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t7);
|
|
/* 027F4CB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F4CB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4CBC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4CBC */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F4CBC */ if (_t9) goto L_027F4CD4; else goto L_027F4CC0;
|
|
L_027F4CC0: ; // 0x27f4cc0
|
|
/* 027F4CC0 */ cpu->r[6] = cpu->r[30];
|
|
/* 027F4CC4 */ cpu->r[5] = cpu->r[28];
|
|
/* 027F4CC8 */ cpu->r[4] = cpu->r[29];
|
|
/* 027F4CCC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4CD0 */ Gambit_fn_027F4B10(cpu);
|
|
L_027F4CD4: ; // 0x27f4cd4
|
|
/* 027F4CD4 */ _t10 = cpu->r[30] + 0x00000019u;
|
|
/* 027F4CD4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027F4CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4CDC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4CDC */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F4CDC */ if (_t12) goto L_027F4CF4; else goto L_027F4CE0;
|
|
L_027F4CE0: ; // 0x27f4ce0
|
|
/* 027F4CE0 */ cpu->r[6] = cpu->r[30];
|
|
/* 027F4CE4 */ cpu->r[5] = cpu->r[28];
|
|
/* 027F4CE8 */ cpu->r[4] = cpu->r[29];
|
|
/* 027F4CEC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4CF0 */ Gambit_fn_027F4BBC(cpu);
|
|
L_027F4CF4: ; // 0x27f4cf4
|
|
/* 027F4CF4 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4CF4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F4CF8 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4CF8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F4CFC */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4CFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4D00 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4D04 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4D04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F4D08 */ cpu->lr = cpu->r[0];
|
|
/* 027F4D0C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4D0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F4D10 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F4D14 */ return;
|
|
}
|
|
|
|
// fn_027F4C78 @ 0x27f4c78
|
|
void Gambit_fn_027F4C78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F4C78: ; // 0x27f4c78
|
|
/* 027F4C78 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F4C78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4C78 */ cpu->r[1] = _t0;
|
|
/* 027F4C7C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4C7C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F4C80 */ cpu->r[30] = cpu->r[5];
|
|
/* 027F4C84 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4C84 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027F4C88 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4C88 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F4C8C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4C8C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027F4C90 */ cpu->r[7] = 0x00000000u;
|
|
/* 027F4C94 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4C94 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F4C98 */ cpu->r[29] = cpu->r[4];
|
|
/* 027F4C9C */ cpu->r[0] = cpu->r[3];
|
|
/* 027F4CA0 */ _t6 = cpu->r[29] + 0x00000004u;
|
|
/* 027F4CA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F4CA4 */ cpu->r[4] = cpu->r[0];
|
|
/* 027F4CA8 */ cpu->r[28] = cpu->r[6];
|
|
/* 027F4CAC */ Gambit_fn_0297F968(cpu);
|
|
/* 027F4CB0 */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 027F4CB0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t7);
|
|
/* 027F4CB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F4CB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4CBC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4CBC */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F4CBC */ if (_t9) goto L_027F4CD4; else goto L_027F4CC0;
|
|
L_027F4CC0: ; // 0x27f4cc0
|
|
/* 027F4CC0 */ cpu->r[6] = cpu->r[30];
|
|
/* 027F4CC4 */ cpu->r[5] = cpu->r[28];
|
|
/* 027F4CC8 */ cpu->r[4] = cpu->r[29];
|
|
/* 027F4CCC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4CD0 */ Gambit_fn_027F4B10(cpu);
|
|
L_027F4CD4: ; // 0x27f4cd4
|
|
/* 027F4CD4 */ _t10 = cpu->r[30] + 0x00000019u;
|
|
/* 027F4CD4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027F4CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4CDC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4CDC */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F4CDC */ if (_t12) goto L_027F4CF4; else goto L_027F4CE0;
|
|
L_027F4CE0: ; // 0x27f4ce0
|
|
/* 027F4CE0 */ cpu->r[6] = cpu->r[30];
|
|
/* 027F4CE4 */ cpu->r[5] = cpu->r[28];
|
|
/* 027F4CE8 */ cpu->r[4] = cpu->r[29];
|
|
/* 027F4CEC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4CF0 */ Gambit_fn_027F4BBC(cpu);
|
|
L_027F4CF4: ; // 0x27f4cf4
|
|
/* 027F4CF4 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4CF4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F4CF8 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4CF8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F4CFC */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4CFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4D00 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4D04 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4D04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F4D08 */ cpu->lr = cpu->r[0];
|
|
/* 027F4D0C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4D0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F4D10 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F4D14 */ return;
|
|
}
|
|
|
|
// fn_027F4D18 @ 0x27f4d18
|
|
void Gambit_fn_027F4D18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027F4D18: ; // 0x27f4d18
|
|
/* 027F4D18 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027F4D18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4D18 */ cpu->r[1] = _t0;
|
|
/* 027F4D1C */ /* nop */
|
|
/* 027F4D20 */ cpu->r[0] = cpu->lr;
|
|
/* 027F4D24 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4D24 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F4D28 */ cpu->r[29] = cpu->r[6];
|
|
/* 027F4D2C */ cpu->r[31] = cpu->r[5];
|
|
/* 027F4D30 */ _t2 = cpu->r[31] + 0x00000004u;
|
|
/* 027F4D30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F4D34 */ _t3 = cpu->r[9] + 0x00000014u;
|
|
/* 027F4D34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F4D38 */ cpu->r[26] = cpu->r[3];
|
|
/* 027F4D3C */ cpu->r[28] = cpu->r[4];
|
|
/* 027F4D40 */ cpu->ctr = cpu->r[10];
|
|
/* 027F4D44 */ _t4 = cpu->r[28] + 0x00000004u;
|
|
/* 027F4D44 */ cpu->r[27] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F4D48 */ cpu->r[30] = cpu->r[7];
|
|
/* 027F4D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4D54 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027F4D54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F4D58 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F4D5C */ cpu->r[8] = cpu->r[30];
|
|
/* 027F4D60 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4D64 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F4D68 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4D68 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 027F4D6C */ cpu->r[7] = cpu->r[29];
|
|
/* 027F4D70 */ cpu->r[6] = cpu->r[26];
|
|
/* 027F4D74 */ cpu->r[3] = cpu->r[27];
|
|
/* 027F4D78 */ Gambit_fn_0297F9F0(cpu);
|
|
/* 027F4D7C */ _t7 = cpu->r[29] + 0x00000018u;
|
|
/* 027F4D7C */ cpu->r[11] = rbrew_read8(cpu->mem, _t7);
|
|
/* 027F4D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F4D84 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4D88 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4D88 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F4D88 */ if (_t9) goto L_027F4DA0; else goto L_027F4D8C;
|
|
L_027F4D8C: ; // 0x27f4d8c
|
|
/* 027F4D8C */ cpu->r[6] = cpu->r[29];
|
|
/* 027F4D90 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F4D94 */ cpu->r[4] = cpu->r[28];
|
|
/* 027F4D98 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4D9C */ Gambit_fn_027F4B10(cpu);
|
|
L_027F4DA0: ; // 0x27f4da0
|
|
/* 027F4DA0 */ _t10 = cpu->r[29] + 0x00000019u;
|
|
/* 027F4DA0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027F4DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4DA8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4DA8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F4DA8 */ if (_t12) goto L_027F4DC0; else goto L_027F4DAC;
|
|
L_027F4DAC: ; // 0x27f4dac
|
|
/* 027F4DAC */ cpu->r[6] = cpu->r[29];
|
|
/* 027F4DB0 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F4DB4 */ cpu->r[4] = cpu->r[28];
|
|
/* 027F4DB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4DBC */ Gambit_fn_027F4BBC(cpu);
|
|
L_027F4DC0: ; // 0x27f4dc0
|
|
/* 027F4DC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4DC4 */ /* nop */
|
|
/* 027F4DC8 */ _t13 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F4DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F4DCC */ cpu->lr = cpu->r[0];
|
|
/* 027F4DD0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F4DD4 */ return;
|
|
}
|
|
|
|
// fn_027F4DD8 @ 0x27f4dd8
|
|
void Gambit_fn_027F4DD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F4DD8: ; // 0x27f4dd8
|
|
/* 027F4DD8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F4DD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4DD8 */ cpu->r[1] = _t0;
|
|
/* 027F4DDC */ cpu->r[0] = cpu->lr;
|
|
/* 027F4DE0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4DE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F4DE4 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F4DE8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4DE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027F4DEC */ cpu->r[4] = cpu->r[5];
|
|
/* 027F4DF0 */ cpu->r[12] = cpu->r[3];
|
|
/* 027F4DF4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4DF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F4DF8 */ cpu->r[5] = cpu->r[6];
|
|
/* 027F4DFC */ cpu->r[6] = cpu->r[12];
|
|
/* 027F4E00 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4E00 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F4E04 */ cpu->r[28] = cpu->r[7];
|
|
/* 027F4E08 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F4E0C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4E0C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F4E10 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 027F4E10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F4E14 */ cpu->r[29] = cpu->r[8];
|
|
/* 027F4E18 */ Gambit_fn_0297F9F0(cpu);
|
|
/* 027F4E1C */ _t7 = cpu->r[28] + 0x00000018u;
|
|
/* 027F4E1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 027F4E20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4E24 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4E28 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4E28 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F4E28 */ if (_t9) goto L_027F4E40; else goto L_027F4E2C;
|
|
L_027F4E2C: ; // 0x27f4e2c
|
|
/* 027F4E2C */ cpu->r[6] = cpu->r[28];
|
|
/* 027F4E30 */ cpu->r[5] = cpu->r[29];
|
|
/* 027F4E34 */ cpu->r[4] = cpu->r[30];
|
|
/* 027F4E38 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4E3C */ Gambit_fn_027F4B10(cpu);
|
|
L_027F4E40: ; // 0x27f4e40
|
|
/* 027F4E40 */ _t10 = cpu->r[28] + 0x00000019u;
|
|
/* 027F4E40 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027F4E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4E48 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4E48 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F4E48 */ if (_t12) goto L_027F4E60; else goto L_027F4E4C;
|
|
L_027F4E4C: ; // 0x27f4e4c
|
|
/* 027F4E4C */ cpu->r[6] = cpu->r[28];
|
|
/* 027F4E50 */ cpu->r[5] = cpu->r[29];
|
|
/* 027F4E54 */ cpu->r[4] = cpu->r[30];
|
|
/* 027F4E58 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4E5C */ Gambit_fn_027F4BBC(cpu);
|
|
L_027F4E60: ; // 0x27f4e60
|
|
/* 027F4E60 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4E60 */ cpu->r[28] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F4E64 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4E64 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F4E68 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F4E68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4E6C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4E70 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4E70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F4E74 */ cpu->lr = cpu->r[0];
|
|
/* 027F4E78 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027F4E78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F4E7C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F4E80 */ return;
|
|
}
|
|
|
|
// fn_027F4E84 @ 0x27f4e84
|
|
void Gambit_fn_027F4E84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F4E84: ; // 0x27f4e84
|
|
/* 027F4E84 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F4E84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4E84 */ cpu->r[1] = _t0;
|
|
/* 027F4E88 */ /* nop */
|
|
/* 027F4E8C */ cpu->r[0] = cpu->lr;
|
|
/* 027F4E90 */ cpu->r[28] = cpu->r[7];
|
|
/* 027F4E94 */ cpu->r[25] = cpu->r[4];
|
|
/* 027F4E98 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4E98 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F4E9C */ cpu->r[0] = cpu->r[3];
|
|
/* 027F4EA0 */ cpu->r[27] = cpu->r[6];
|
|
/* 027F4EA4 */ cpu->r[26] = cpu->r[5];
|
|
/* 027F4EA8 */ cpu->r[4] = cpu->r[0];
|
|
/* 027F4EAC */ cpu->r[29] = cpu->r[8];
|
|
/* 027F4EB0 */ cpu->r[5] = cpu->r[27];
|
|
/* 027F4EB4 */ cpu->r[7] = 0x00000000u;
|
|
/* 027F4EB8 */ cpu->r[30] = cpu->r[9];
|
|
/* 027F4EBC */ _t2 = cpu->r[25] + 0x00000004u;
|
|
/* 027F4EBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F4EC0 */ cpu->r[6] = cpu->r[30];
|
|
/* 027F4EC4 */ Gambit_fn_0297F968(cpu);
|
|
/* 027F4EC8 */ _t3 = cpu->r[27] + 0x00000018u;
|
|
/* 027F4EC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 027F4ECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4ED0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4ED4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4ED4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F4ED4 */ if (_t5) goto L_027F4EEC; else goto L_027F4ED8;
|
|
L_027F4ED8: ; // 0x27f4ed8
|
|
/* 027F4ED8 */ cpu->r[6] = cpu->r[27];
|
|
/* 027F4EDC */ cpu->r[5] = cpu->r[30];
|
|
/* 027F4EE0 */ cpu->r[4] = cpu->r[25];
|
|
/* 027F4EE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4EE8 */ Gambit_fn_027F4B10(cpu);
|
|
L_027F4EEC: ; // 0x27f4eec
|
|
/* 027F4EEC */ _t6 = cpu->r[27] + 0x00000019u;
|
|
/* 027F4EEC */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027F4EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4EF4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4EF4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F4EF4 */ if (_t8) goto L_027F4F0C; else goto L_027F4EF8;
|
|
L_027F4EF8: ; // 0x27f4ef8
|
|
/* 027F4EF8 */ cpu->r[6] = cpu->r[27];
|
|
/* 027F4EFC */ cpu->r[5] = cpu->r[30];
|
|
/* 027F4F00 */ cpu->r[4] = cpu->r[25];
|
|
/* 027F4F04 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4F08 */ Gambit_fn_027F4BBC(cpu);
|
|
L_027F4F0C: ; // 0x27f4f0c
|
|
/* 027F4F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F4F10 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4F10 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F4F10 */ if (_t10) goto L_027F4F40; else goto L_027F4F14;
|
|
L_027F4F14: ; // 0x27f4f14
|
|
/* 027F4F14 */ _t11 = cpu->r[25] + 0x00000004u;
|
|
/* 027F4F14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F4F18 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4F1C */ cpu->r[5] = 0x00000002u;
|
|
/* 027F4F20 */ _t12 = cpu->r[26] + 0x00000004u;
|
|
/* 027F4F20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F4F24 */ cpu->r[7] = cpu->r[30];
|
|
/* 027F4F28 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4F2C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4F2C */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 027F4F30 */ cpu->r[6] = cpu->r[28];
|
|
/* 027F4F34 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4F34 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 027F4F38 */ Gambit_fn_0297FAD0(cpu);
|
|
/* 027F4F3C */ goto L_027F4F60;
|
|
L_027F4F40: ; // 0x27f4f40
|
|
/* 027F4F40 */ _t15 = cpu->r[26] + 0x00000004u;
|
|
/* 027F4F40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4F44 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4F48 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F4F4C */ cpu->r[7] = cpu->r[30];
|
|
/* 027F4F50 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4F54 */ cpu->r[6] = cpu->r[28];
|
|
/* 027F4F58 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4F58 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 027F4F5C */ Gambit_fn_0297FAD0(cpu);
|
|
L_027F4F60: ; // 0x27f4f60
|
|
/* 027F4F60 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4F64 */ /* nop */
|
|
/* 027F4F68 */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4F68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F4F6C */ cpu->lr = cpu->r[0];
|
|
/* 027F4F70 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F4F74 */ return;
|
|
}
|
|
|
|
// fn_027F4F78 @ 0x27f4f78
|
|
void Gambit_fn_027F4F78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F4E84: ; // 0x27f4e84
|
|
/* 027F4E84 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F4E84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4E84 */ cpu->r[1] = _t0;
|
|
/* 027F4E88 */ /* nop */
|
|
/* 027F4E8C */ cpu->r[0] = cpu->lr;
|
|
/* 027F4E90 */ cpu->r[28] = cpu->r[7];
|
|
/* 027F4E94 */ cpu->r[25] = cpu->r[4];
|
|
/* 027F4E98 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4E98 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F4E9C */ cpu->r[0] = cpu->r[3];
|
|
/* 027F4EA0 */ cpu->r[27] = cpu->r[6];
|
|
/* 027F4EA4 */ cpu->r[26] = cpu->r[5];
|
|
/* 027F4EA8 */ cpu->r[4] = cpu->r[0];
|
|
/* 027F4EAC */ cpu->r[29] = cpu->r[8];
|
|
/* 027F4EB0 */ cpu->r[5] = cpu->r[27];
|
|
/* 027F4EB4 */ cpu->r[7] = 0x00000000u;
|
|
/* 027F4EB8 */ cpu->r[30] = cpu->r[9];
|
|
/* 027F4EBC */ _t2 = cpu->r[25] + 0x00000004u;
|
|
/* 027F4EBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F4EC0 */ cpu->r[6] = cpu->r[30];
|
|
/* 027F4EC4 */ Gambit_fn_0297F968(cpu);
|
|
/* 027F4EC8 */ _t3 = cpu->r[27] + 0x00000018u;
|
|
/* 027F4EC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 027F4ECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4ED0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F4ED4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4ED4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F4ED4 */ if (_t5) goto L_027F4EEC; else goto L_027F4ED8;
|
|
L_027F4ED8: ; // 0x27f4ed8
|
|
/* 027F4ED8 */ cpu->r[6] = cpu->r[27];
|
|
/* 027F4EDC */ cpu->r[5] = cpu->r[30];
|
|
/* 027F4EE0 */ cpu->r[4] = cpu->r[25];
|
|
/* 027F4EE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4EE8 */ Gambit_fn_027F4B10(cpu);
|
|
L_027F4EEC: ; // 0x27f4eec
|
|
/* 027F4EEC */ _t6 = cpu->r[27] + 0x00000019u;
|
|
/* 027F4EEC */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027F4EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F4EF4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4EF4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F4EF4 */ if (_t8) goto L_027F4F0C; else goto L_027F4EF8;
|
|
L_027F4EF8: ; // 0x27f4ef8
|
|
/* 027F4EF8 */ cpu->r[6] = cpu->r[27];
|
|
/* 027F4EFC */ cpu->r[5] = cpu->r[30];
|
|
/* 027F4F00 */ cpu->r[4] = cpu->r[25];
|
|
/* 027F4F04 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4F08 */ Gambit_fn_027F4BBC(cpu);
|
|
L_027F4F0C: ; // 0x27f4f0c
|
|
/* 027F4F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F4F10 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F4F10 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F4F10 */ if (_t10) goto L_027F4F40; else goto L_027F4F14;
|
|
L_027F4F14: ; // 0x27f4f14
|
|
/* 027F4F14 */ _t11 = cpu->r[25] + 0x00000004u;
|
|
/* 027F4F14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F4F18 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4F1C */ cpu->r[5] = 0x00000002u;
|
|
/* 027F4F20 */ _t12 = cpu->r[26] + 0x00000004u;
|
|
/* 027F4F20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F4F24 */ cpu->r[7] = cpu->r[30];
|
|
/* 027F4F28 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4F2C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F4F2C */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 027F4F30 */ cpu->r[6] = cpu->r[28];
|
|
/* 027F4F34 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 027F4F34 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 027F4F38 */ Gambit_fn_0297FAD0(cpu);
|
|
/* 027F4F3C */ goto L_027F4F60;
|
|
L_027F4F40: ; // 0x27f4f40
|
|
/* 027F4F40 */ _t15 = cpu->r[26] + 0x00000004u;
|
|
/* 027F4F40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F4F44 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4F48 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F4F4C */ cpu->r[7] = cpu->r[30];
|
|
/* 027F4F50 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4F54 */ cpu->r[6] = cpu->r[28];
|
|
/* 027F4F58 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4F58 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 027F4F5C */ Gambit_fn_0297FAD0(cpu);
|
|
L_027F4F60: ; // 0x27f4f60
|
|
/* 027F4F60 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4F64 */ /* nop */
|
|
/* 027F4F68 */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 027F4F68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F4F6C */ cpu->lr = cpu->r[0];
|
|
/* 027F4F70 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F4F74 */ return;
|
|
L_027F4F78: ; // 0x27f4f78
|
|
/* 027F4F78 */ cpu->r[9] = cpu->r[7];
|
|
/* 027F4F7C */ cpu->r[7] = cpu->r[6];
|
|
/* 027F4F80 */ cpu->r[6] = cpu->r[5];
|
|
/* 027F4F84 */ cpu->r[8] = 0x00000000u;
|
|
/* 027F4F88 */ cpu->r[5] = cpu->r[4];
|
|
/* 027F4F8C */ goto L_027F4E84;
|
|
}
|
|
|
|
// fn_027F4F90 @ 0x27f4f90
|
|
void Gambit_fn_027F4F90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_027F4F90: ; // 0x27f4f90
|
|
/* 027F4F90 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F4F90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4F90 */ cpu->r[1] = _t0;
|
|
/* 027F4F94 */ /* nop */
|
|
/* 027F4F98 */ cpu->r[0] = cpu->lr;
|
|
/* 027F4F9C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 027F4F9C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F4FA0 */ cpu->r[29] = cpu->r[9];
|
|
/* 027F4FA4 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F4FA8 */ _t2 = cpu->r[31] + 0x00000004u;
|
|
/* 027F4FA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F4FAC */ _t3 = cpu->r[12] + 0x00000014u;
|
|
/* 027F4FAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F4FB0 */ cpu->r[24] = cpu->r[3];
|
|
/* 027F4FB4 */ cpu->r[25] = cpu->r[5];
|
|
/* 027F4FB8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F4FBC */ _t4 = cpu->r[25] + 0x00000004u;
|
|
/* 027F4FBC */ cpu->r[23] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F4FC0 */ cpu->r[26] = cpu->r[6];
|
|
/* 027F4FC4 */ cpu->r[27] = cpu->r[7];
|
|
/* 027F4FC8 */ cpu->r[28] = cpu->r[8];
|
|
/* 027F4FCC */ cpu->r[30] = cpu->r[10];
|
|
/* 027F4FD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4FD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4FD8 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027F4FD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F4FDC */ cpu->r[7] = cpu->r[27];
|
|
/* 027F4FE0 */ cpu->r[8] = cpu->r[30];
|
|
/* 027F4FE4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4FE8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4FE8 */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 027F4FEC */ cpu->r[3] = cpu->r[23];
|
|
/* 027F4FF0 */ cpu->r[6] = cpu->r[24];
|
|
/* 027F4FF4 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F4FF8 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F4FFC */ Gambit_fn_0297F9F0(cpu);
|
|
/* 027F5000 */ _t7 = cpu->r[27] + 0x00000018u;
|
|
/* 027F5000 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 027F5004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F5008 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F500C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F500C */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F500C */ if (_t9) goto L_027F5024; else goto L_027F5010;
|
|
L_027F5010: ; // 0x27f5010
|
|
/* 027F5010 */ cpu->r[6] = cpu->r[27];
|
|
/* 027F5014 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F5018 */ cpu->r[4] = cpu->r[25];
|
|
/* 027F501C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F5020 */ Gambit_fn_027F4B10(cpu);
|
|
L_027F5024: ; // 0x27f5024
|
|
/* 027F5024 */ _t10 = cpu->r[27] + 0x00000019u;
|
|
/* 027F5024 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027F5028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F502C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F502C */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F502C */ if (_t12) goto L_027F5044; else goto L_027F5030;
|
|
L_027F5030: ; // 0x27f5030
|
|
/* 027F5030 */ cpu->r[6] = cpu->r[27];
|
|
/* 027F5034 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F5038 */ cpu->r[4] = cpu->r[25];
|
|
/* 027F503C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F5040 */ Gambit_fn_027F4BBC(cpu);
|
|
L_027F5044: ; // 0x27f5044
|
|
/* 027F5044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F5048 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5048 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F5048 */ if (_t14) goto L_027F5078; else goto L_027F504C;
|
|
L_027F504C: ; // 0x27f504c
|
|
/* 027F504C */ _t15 = cpu->r[25] + 0x00000004u;
|
|
/* 027F504C */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F5050 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F5054 */ cpu->r[5] = 0x00000002u;
|
|
/* 027F5058 */ _t16 = cpu->r[26] + 0x00000004u;
|
|
/* 027F5058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F505C */ cpu->r[7] = cpu->r[30];
|
|
/* 027F5060 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F5064 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 027F5064 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 027F5068 */ cpu->r[6] = cpu->r[28];
|
|
/* 027F506C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027F506C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 027F5070 */ Gambit_fn_0297FAD0(cpu);
|
|
/* 027F5074 */ goto L_027F5098;
|
|
L_027F5078: ; // 0x27f5078
|
|
/* 027F5078 */ _t19 = cpu->r[26] + 0x00000004u;
|
|
/* 027F5078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F507C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5080 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F5084 */ cpu->r[7] = cpu->r[30];
|
|
/* 027F5088 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F508C */ cpu->r[6] = cpu->r[28];
|
|
/* 027F5090 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5090 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 027F5094 */ Gambit_fn_0297FAD0(cpu);
|
|
L_027F5098: ; // 0x27f5098
|
|
/* 027F5098 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F509C */ /* nop */
|
|
/* 027F50A0 */ _t21 = cpu->r[1] + 0x00000044u;
|
|
/* 027F50A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F50A4 */ cpu->lr = cpu->r[0];
|
|
/* 027F50A8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F50AC */ return;
|
|
}
|
|
|
|
// fn_027F50B0 @ 0x27f50b0
|
|
void Gambit_fn_027F50B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_027F4F90: ; // 0x27f4f90
|
|
/* 027F4F90 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F4F90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F4F90 */ cpu->r[1] = _t0;
|
|
/* 027F4F94 */ /* nop */
|
|
/* 027F4F98 */ cpu->r[0] = cpu->lr;
|
|
/* 027F4F9C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 027F4F9C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F4FA0 */ cpu->r[29] = cpu->r[9];
|
|
/* 027F4FA4 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F4FA8 */ _t2 = cpu->r[31] + 0x00000004u;
|
|
/* 027F4FA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F4FAC */ _t3 = cpu->r[12] + 0x00000014u;
|
|
/* 027F4FAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F4FB0 */ cpu->r[24] = cpu->r[3];
|
|
/* 027F4FB4 */ cpu->r[25] = cpu->r[5];
|
|
/* 027F4FB8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F4FBC */ _t4 = cpu->r[25] + 0x00000004u;
|
|
/* 027F4FBC */ cpu->r[23] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F4FC0 */ cpu->r[26] = cpu->r[6];
|
|
/* 027F4FC4 */ cpu->r[27] = cpu->r[7];
|
|
/* 027F4FC8 */ cpu->r[28] = cpu->r[8];
|
|
/* 027F4FCC */ cpu->r[30] = cpu->r[10];
|
|
/* 027F4FD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F4FD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F4FD8 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027F4FD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F4FDC */ cpu->r[7] = cpu->r[27];
|
|
/* 027F4FE0 */ cpu->r[8] = cpu->r[30];
|
|
/* 027F4FE4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F4FE8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F4FE8 */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 027F4FEC */ cpu->r[3] = cpu->r[23];
|
|
/* 027F4FF0 */ cpu->r[6] = cpu->r[24];
|
|
/* 027F4FF4 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F4FF8 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F4FFC */ Gambit_fn_0297F9F0(cpu);
|
|
/* 027F5000 */ _t7 = cpu->r[27] + 0x00000018u;
|
|
/* 027F5000 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 027F5004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F5008 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F500C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F500C */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F500C */ if (_t9) goto L_027F5024; else goto L_027F5010;
|
|
L_027F5010: ; // 0x27f5010
|
|
/* 027F5010 */ cpu->r[6] = cpu->r[27];
|
|
/* 027F5014 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F5018 */ cpu->r[4] = cpu->r[25];
|
|
/* 027F501C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F5020 */ Gambit_fn_027F4B10(cpu);
|
|
L_027F5024: ; // 0x27f5024
|
|
/* 027F5024 */ _t10 = cpu->r[27] + 0x00000019u;
|
|
/* 027F5024 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027F5028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F502C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F502C */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F502C */ if (_t12) goto L_027F5044; else goto L_027F5030;
|
|
L_027F5030: ; // 0x27f5030
|
|
/* 027F5030 */ cpu->r[6] = cpu->r[27];
|
|
/* 027F5034 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F5038 */ cpu->r[4] = cpu->r[25];
|
|
/* 027F503C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F5040 */ Gambit_fn_027F4BBC(cpu);
|
|
L_027F5044: ; // 0x27f5044
|
|
/* 027F5044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F5048 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5048 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F5048 */ if (_t14) goto L_027F5078; else goto L_027F504C;
|
|
L_027F504C: ; // 0x27f504c
|
|
/* 027F504C */ _t15 = cpu->r[25] + 0x00000004u;
|
|
/* 027F504C */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F5050 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F5054 */ cpu->r[5] = 0x00000002u;
|
|
/* 027F5058 */ _t16 = cpu->r[26] + 0x00000004u;
|
|
/* 027F5058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F505C */ cpu->r[7] = cpu->r[30];
|
|
/* 027F5060 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F5064 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 027F5064 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 027F5068 */ cpu->r[6] = cpu->r[28];
|
|
/* 027F506C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027F506C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 027F5070 */ Gambit_fn_0297FAD0(cpu);
|
|
/* 027F5074 */ goto L_027F5098;
|
|
L_027F5078: ; // 0x27f5078
|
|
/* 027F5078 */ _t19 = cpu->r[26] + 0x00000004u;
|
|
/* 027F5078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F507C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5080 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F5084 */ cpu->r[7] = cpu->r[30];
|
|
/* 027F5088 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F508C */ cpu->r[6] = cpu->r[28];
|
|
/* 027F5090 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5090 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 027F5094 */ Gambit_fn_0297FAD0(cpu);
|
|
L_027F5098: ; // 0x27f5098
|
|
/* 027F5098 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F509C */ /* nop */
|
|
/* 027F50A0 */ _t21 = cpu->r[1] + 0x00000044u;
|
|
/* 027F50A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F50A4 */ cpu->lr = cpu->r[0];
|
|
/* 027F50A8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F50AC */ return;
|
|
L_027F50B0: ; // 0x27f50b0
|
|
/* 027F50B0 */ cpu->r[10] = cpu->r[8];
|
|
/* 027F50B4 */ cpu->r[8] = cpu->r[7];
|
|
/* 027F50B8 */ cpu->r[7] = cpu->r[6];
|
|
/* 027F50BC */ cpu->r[9] = 0x00000000u;
|
|
/* 027F50C0 */ cpu->r[6] = cpu->r[5];
|
|
/* 027F50C4 */ goto L_027F4F90;
|
|
}
|
|
|
|
// fn_027F50C8 @ 0x27f50c8
|
|
void Gambit_fn_027F50C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_027F50C8: ; // 0x27f50c8
|
|
/* 027F50C8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F50C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F50C8 */ cpu->r[1] = _t0;
|
|
/* 027F50CC */ /* nop */
|
|
/* 027F50D0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F50D4 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 027F50D4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 027F50D8 */ /* nop */
|
|
/* 027F50DC */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 027F50DC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[30]);
|
|
/* 027F50E0 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 027F50E0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 027F50E4 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 027F50E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F50E8 */ /* nop */
|
|
/* 027F50EC */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 027F50EC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 027F50F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F50F4 */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 027F50F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F50F8 */ cpu->r[27] = 0x00000000u;
|
|
/* 027F50FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 027F5100 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F5100 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F5100 */ if (_t8) goto L_027F5104; else goto L_027F5184;
|
|
L_027F5104: ; // 0x27f5104
|
|
/* 027F5104 */ cpu->r[7] = 0x10110000u;
|
|
/* 027F5108 */ _t9 = cpu->r[7] + 0x00000604u;
|
|
/* 027F5108 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027F510C */ cpu->r[28] = 0x00000000u;
|
|
L_027F5110: ; // 0x27f5110
|
|
/* 027F5110 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F5114 */ cpu->r[4] = cpu->r[27];
|
|
/* 027F5118 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 027F511C */ _t10 = cpu->r[30] + 0x0000001Cu;
|
|
/* 027F511C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F5120 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[0]);
|
|
/* 027F5124 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F5128 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F5128 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F5128 */ if (_t12) goto L_027F512C; else goto L_027F5134;
|
|
L_027F512C: ; // 0x27f512c
|
|
/* 027F512C */ _t13 = cpu->r[30] + 0x00000024u;
|
|
/* 027F512C */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F5130 */ _t14 = cpu->r[11] + cpu->r[28];
|
|
/* 027F5130 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
L_027F5134: ; // 0x27f5134
|
|
/* 027F5134 */ _t15 = cpu->r[9] + 0x00000000u;
|
|
/* 027F5134 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F5138 */ _t16 = cpu->r[29] + 0x00000008u;
|
|
/* 027F5138 */ cpu->r[12] = rbrew_read8(cpu->mem, _t16);
|
|
/* 027F513C */ cpu->r[31] = 0x00000000u;
|
|
/* 027F5140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 027F5144 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F5144 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F5144 */ if (_t18) goto L_027F5148; else goto L_027F5174;
|
|
L_027F5148: ; // 0x27f5148
|
|
/* 027F5148 */ cpu->f[30] = cpu->f[31];
|
|
L_027F514C: ; // 0x27f514c
|
|
/* 027F514C */ cpu->f[1] = cpu->f[30];
|
|
/* 027F5150 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 027F5154 */ cpu->r[5] = cpu->r[31];
|
|
/* 027F5158 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F515C */ Gambit_fn_029DB28C(cpu);
|
|
/* 027F5160 */ _t19 = cpu->r[29] + 0x00000008u;
|
|
/* 027F5160 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 027F5164 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 027F5168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 027F516C */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F516C */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F516C */ if (_t21) goto L_027F514C; else goto L_027F5170;
|
|
L_027F5170: ; // 0x27f5170
|
|
/* 027F5170 */ _t22 = cpu->r[30] + 0x0000001Cu;
|
|
/* 027F5170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
L_027F5174: ; // 0x27f5174
|
|
/* 027F5174 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 027F5178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 027F517C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 027F5180 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F5180 */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F5180 */ if (_t24) goto L_027F5110; else goto L_027F5184;
|
|
L_027F5184: ; // 0x27f5184
|
|
/* 027F5184 */ /* nop */
|
|
/* 027F5188 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 027F5188 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 027F518C */ _t26 = cpu->r[1] + 0x00000038u;
|
|
/* 027F518C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 027F5190 */ _t27 = cpu->r[1] + 0x00000020u;
|
|
/* 027F5190 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t27);
|
|
/* 027F5194 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 027F5194 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 027F5198 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F5198 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027F5198 */ if (_t30) goto L_027F519C; // else: addr-0 trap, fall-through
|
|
L_027F519C: ; // 0x27f519c
|
|
/* 027F519C */ _t31 = cpu->r[1] + 0x00000044u;
|
|
/* 027F519C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F51A0 */ cpu->lr = cpu->r[0];
|
|
/* 027F51A4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F51A8 */ return;
|
|
}
|
|
|
|
// fn_027F51AC @ 0x27f51ac
|
|
void Gambit_fn_027F51AC(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_027F51AC: ; // 0x27f51ac
|
|
/* 027F51AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F51B0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F51B0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F51B0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F51B0 */ goto L_027F51B4;
|
|
L_027F51B4: ; // 0x27f51b4
|
|
/* 027F51B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F51B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F51B8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F51B8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F51B8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F51B8 */ goto L_027F51BC;
|
|
L_027F51BC: ; // 0x27f51bc
|
|
/* 027F51BC */ 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_027F51C0 @ 0x27f51c0
|
|
void Gambit_fn_027F51C0(CPUState* cpu) {
|
|
L_027F51C0: ; // 0x27f51c0
|
|
/* 027F51C0 */ return;
|
|
}
|
|
|
|
// fn_027F51C4 @ 0x27f51c4
|
|
void Gambit_fn_027F51C4(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_027F51C4: ; // 0x27f51c4
|
|
/* 027F51C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F51C8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F51C8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F51C8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F51C8 */ goto L_027F51CC;
|
|
L_027F51CC: ; // 0x27f51cc
|
|
/* 027F51CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F51CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F51D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F51D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F51D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F51D0 */ goto L_027F51D4;
|
|
L_027F51D4: ; // 0x27f51d4
|
|
/* 027F51D4 */ 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_027F51D8 @ 0x27f51d8
|
|
void Gambit_fn_027F51D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F51D8: ; // 0x27f51d8
|
|
/* 027F51D8 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027F51D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F51DC */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 027F51DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F51E0 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 027F51E4 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F51E8 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 027F51E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027F51EC */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F51EC */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027F51F0 */ return;
|
|
}
|
|
|
|
// fn_027F51F4 @ 0x27f51f4
|
|
void Gambit_fn_027F51F4(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_027F51F4: ; // 0x27f51f4
|
|
/* 027F51F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F51F8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F51F8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F51F8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F51F8 */ goto L_027F51FC;
|
|
L_027F51FC: ; // 0x27f51fc
|
|
/* 027F51FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F51FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F5200 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5200 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F5200 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F5200 */ goto L_027F5204;
|
|
L_027F5204: ; // 0x27f5204
|
|
/* 027F5204 */ 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_027F5208 @ 0x27f5208
|
|
void Gambit_fn_027F5208(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_027F5208: ; // 0x27f5208
|
|
/* 027F5208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F520C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F520C */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F520C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F520C */ goto L_027F5210;
|
|
L_027F5210: ; // 0x27f5210
|
|
/* 027F5210 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F5210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F5214 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5214 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F5214 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F5214 */ goto L_027F5218;
|
|
L_027F5218: ; // 0x27f5218
|
|
/* 027F5218 */ 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_027F521C @ 0x27f521c
|
|
void Gambit_fn_027F521C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027F521C: ; // 0x27f521c
|
|
/* 027F521C */ cpu->r[0] = cpu->lr;
|
|
/* 027F5220 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F5220 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5220 */ cpu->r[1] = _t0;
|
|
/* 027F5224 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5224 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F5228 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F522C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F522C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F5230 */ Gambit_fn_02983BC4(cpu);
|
|
/* 027F5234 */ /* nop */
|
|
/* 027F5238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 027F523C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F523C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F523C */ if (_t4) goto L_027F5258; else goto L_027F5240;
|
|
L_027F5240: ; // 0x27f5240
|
|
/* 027F5240 */ /* nop */
|
|
/* 027F5244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 027F5248 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5248 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F5248 */ if (_t6) goto L_027F5258; else goto L_027F524C;
|
|
L_027F524C: ; // 0x27f524c
|
|
/* 027F524C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F5250 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5250 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F5250 */ if (_t8) goto L_027F5258; else goto L_027F5254;
|
|
L_027F5254: ; // 0x27f5254
|
|
/* 027F5254 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 027F5254 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
L_027F5258: ; // 0x27f5258
|
|
/* 027F5258 */ /* nop */
|
|
/* 027F525C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 027F5260 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F5264 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5264 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F5264 */ if (_t11) goto L_027F5278; else goto L_027F5268;
|
|
L_027F5268: ; // 0x27f5268
|
|
/* 027F5268 */ /* nop */
|
|
/* 027F526C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 027F5270 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5270 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F5270 */ if (_t13) goto L_027F5278; else goto L_027F5274;
|
|
L_027F5274: ; // 0x27f5274
|
|
/* 027F5274 */ cpu->r[0] = 0x00000001u;
|
|
L_027F5278: ; // 0x27f5278
|
|
/* 027F5278 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F527C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 027F527C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F5280 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5280 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F5284 */ cpu->lr = cpu->r[0];
|
|
/* 027F5288 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F528C */ return;
|
|
}
|
|
|
|
// fn_027F5220 @ 0x27f5220
|
|
void Gambit_fn_027F5220(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_027F5220: ; // 0x27f5220
|
|
/* 027F5220 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F5220 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5220 */ cpu->r[1] = _t0;
|
|
/* 027F5224 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5224 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F5228 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F522C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F522C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F5230 */ Gambit_fn_02983BC4(cpu);
|
|
/* 027F5234 */ /* nop */
|
|
/* 027F5238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 027F523C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F523C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F523C */ if (_t4) goto L_027F5258; else goto L_027F5240;
|
|
L_027F5240: ; // 0x27f5240
|
|
/* 027F5240 */ /* nop */
|
|
/* 027F5244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 027F5248 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5248 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F5248 */ if (_t6) goto L_027F5258; else goto L_027F524C;
|
|
L_027F524C: ; // 0x27f524c
|
|
/* 027F524C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F5250 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5250 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F5250 */ if (_t8) goto L_027F5258; else goto L_027F5254;
|
|
L_027F5254: ; // 0x27f5254
|
|
/* 027F5254 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 027F5254 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
L_027F5258: ; // 0x27f5258
|
|
/* 027F5258 */ /* nop */
|
|
/* 027F525C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 027F5260 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F5264 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5264 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F5264 */ if (_t11) goto L_027F5278; else goto L_027F5268;
|
|
L_027F5268: ; // 0x27f5268
|
|
/* 027F5268 */ /* nop */
|
|
/* 027F526C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 027F5270 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5270 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F5270 */ if (_t13) goto L_027F5278; else goto L_027F5274;
|
|
L_027F5274: ; // 0x27f5274
|
|
/* 027F5274 */ cpu->r[0] = 0x00000001u;
|
|
L_027F5278: ; // 0x27f5278
|
|
/* 027F5278 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F527C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 027F527C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F5280 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5280 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F5284 */ cpu->lr = cpu->r[0];
|
|
/* 027F5288 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F528C */ return;
|
|
}
|
|
|
|
// fn_027F5290 @ 0x27f5290
|
|
void Gambit_fn_027F5290(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_027F5290: ; // 0x27f5290
|
|
/* 027F5290 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F5290 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5290 */ cpu->r[1] = _t0;
|
|
/* 027F5294 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5298 */ /* nop */
|
|
/* 027F529C */ cpu->r[30] = cpu->r[4];
|
|
/* 027F52A0 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F52A4 */ cpu->r[27] = 0x00000000u;
|
|
/* 027F52A8 */ cpu->r[28] = 0x00000006u;
|
|
/* 027F52AC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027F52AC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F52B0 */ cpu->r[29] = cpu->r[3];
|
|
L_027F52B4: ; // 0x27f52b4
|
|
/* 027F52B4 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F52B8 */ cpu->r[4] = cpu->r[27];
|
|
/* 027F52BC */ cpu->r[3] = cpu->r[29];
|
|
/* 027F52C0 */ Gambit_fn_029843D4(cpu);
|
|
/* 027F52C4 */ cpu->r[0] = cpu->r[3];
|
|
/* 027F52C8 */ /* nop */
|
|
/* 027F52CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 027F52D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F52D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F52D0 */ if (_t3) goto L_027F531C; else goto L_027F52D4;
|
|
L_027F52D4: ; // 0x27f52d4
|
|
/* 027F52D4 */ /* nop */
|
|
/* 027F52D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 027F52DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F52DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F52DC */ if (_t5) goto L_027F531C; else goto L_027F52E0;
|
|
L_027F52E0: ; // 0x27f52e0
|
|
/* 027F52E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F52E4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F52E4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F52E4 */ if (_t7) goto L_027F5304; else goto L_027F52E8;
|
|
L_027F52E8: ; // 0x27f52e8
|
|
/* 027F52E8 */ /* nop */
|
|
/* 027F52EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 027F52F0 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 027F52F0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 027F52F4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F52F4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F52F4 */ if (_t10) goto L_027F531C; else goto L_027F52F8;
|
|
L_027F52F8: ; // 0x27f52f8
|
|
/* 027F52F8 */ /* nop */
|
|
/* 027F52FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 027F5300 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5300 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F5300 */ if (_t12) goto L_027F531C; else goto L_027F5304;
|
|
L_027F5304: ; // 0x27f5304
|
|
/* 027F5304 */ /* nop */
|
|
/* 027F5308 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 027F5308 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F530C */ cpu->lr = cpu->r[0];
|
|
/* 027F5310 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F5314 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F5318 */ return;
|
|
L_027F531C: ; // 0x27f531c
|
|
/* 027F531C */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 027F531C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F5320 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 027F5324 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5324 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F5324 */ if (_t15) goto L_027F5328; else goto L_027F52B4;
|
|
L_027F5328: ; // 0x27f5328
|
|
/* 027F5328 */ /* nop */
|
|
/* 027F532C */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 027F532C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F5330 */ cpu->lr = cpu->r[0];
|
|
/* 027F5334 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F5338 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F533C */ return;
|
|
}
|
|
|
|
// fn_027F5340 @ 0x27f5340
|
|
void Gambit_fn_027F5340(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027F5340: ; // 0x27f5340
|
|
/* 027F5340 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5344 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F5344 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5344 */ cpu->r[1] = _t0;
|
|
/* 027F5348 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F5348 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F534C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F534C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F5350 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F5354 */ cpu->r[30] = 0x00000001u;
|
|
/* 027F5358 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5358 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F535C */ cpu->r[5] = 0x00000000u;
|
|
/* 027F5360 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5360 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F5364 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F5368 */ Gambit_fn_027F521C(cpu);
|
|
/* 027F536C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F5370 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5370 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F5370 */ if (_t6) goto L_027F5374; else goto L_027F5390;
|
|
L_027F5374: ; // 0x27f5374
|
|
/* 027F5374 */ cpu->r[5] = 0x00000000u;
|
|
/* 027F5378 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F537C */ cpu->r[3] = cpu->r[29];
|
|
/* 027F5380 */ Gambit_fn_027F5290(cpu);
|
|
/* 027F5384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F5388 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5388 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F5388 */ if (_t8) goto L_027F538C; else goto L_027F5390;
|
|
L_027F538C: ; // 0x27f538c
|
|
/* 027F538C */ cpu->r[30] = 0x00000000u;
|
|
L_027F5390: ; // 0x27f5390
|
|
/* 027F5390 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5390 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F5394 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5394 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F5398 */ cpu->r[3] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F539C */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027F539C */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F53A0 */ cpu->lr = cpu->r[0];
|
|
/* 027F53A4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027F53A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F53A8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F53AC */ return;
|
|
}
|
|
|
|
// fn_027F5344 @ 0x27f5344
|
|
void Gambit_fn_027F5344(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027F5344: ; // 0x27f5344
|
|
/* 027F5344 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F5344 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5344 */ cpu->r[1] = _t0;
|
|
/* 027F5348 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F5348 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F534C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F534C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F5350 */ cpu->r[31] = cpu->r[4];
|
|
/* 027F5354 */ cpu->r[30] = 0x00000001u;
|
|
/* 027F5358 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5358 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F535C */ cpu->r[5] = 0x00000000u;
|
|
/* 027F5360 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5360 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F5364 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F5368 */ Gambit_fn_027F521C(cpu);
|
|
/* 027F536C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F5370 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5370 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F5370 */ if (_t6) goto L_027F5374; else goto L_027F5390;
|
|
L_027F5374: ; // 0x27f5374
|
|
/* 027F5374 */ cpu->r[5] = 0x00000000u;
|
|
/* 027F5378 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F537C */ cpu->r[3] = cpu->r[29];
|
|
/* 027F5380 */ Gambit_fn_027F5290(cpu);
|
|
/* 027F5384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F5388 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5388 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F5388 */ if (_t8) goto L_027F538C; else goto L_027F5390;
|
|
L_027F538C: ; // 0x27f538c
|
|
/* 027F538C */ cpu->r[30] = 0x00000000u;
|
|
L_027F5390: ; // 0x27f5390
|
|
/* 027F5390 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5390 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F5394 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5394 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F5398 */ cpu->r[3] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F539C */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 027F539C */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F53A0 */ cpu->lr = cpu->r[0];
|
|
/* 027F53A4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027F53A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F53A8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F53AC */ return;
|
|
}
|
|
|
|
// fn_027F53B0 @ 0x27f53b0
|
|
void Gambit_fn_027F53B0(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_027F53B0: ; // 0x27f53b0
|
|
/* 027F53B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F53B4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F53B4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F53B4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F53B4 */ goto L_027F53B8;
|
|
L_027F53B8: ; // 0x27f53b8
|
|
/* 027F53B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F53B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F53BC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F53BC */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F53BC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F53BC */ goto L_027F53C0;
|
|
L_027F53C0: ; // 0x27f53c0
|
|
/* 027F53C0 */ 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_027F53C4 @ 0x27f53c4
|
|
void Gambit_fn_027F53C4(CPUState* cpu) {
|
|
L_027F53C4: ; // 0x27f53c4
|
|
/* 027F53C4 */ return;
|
|
}
|
|
|
|
// fn_027F53C8 @ 0x27f53c8
|
|
void Gambit_fn_027F53C8(CPUState* cpu) {
|
|
uint32_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_026EEE7C: ; // 0x26eee7c
|
|
/* 026EEE7C */ cpu->r[0] = cpu->lr;
|
|
/* 026EEE80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026EEE80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026EEE80 */ cpu->r[1] = _t0;
|
|
/* 026EEE84 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 026EEE84 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026EEE88 */ cpu->r[30] = cpu->r[3];
|
|
/* 026EEE8C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EEE8C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026EEE90 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026EEE90 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026EEE94 */ _t4 = cpu->r[30] + 0x00000020u;
|
|
/* 026EEE94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026EEE98 */ cpu->r[31] = cpu->r[4];
|
|
/* 026EEE9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 026EEEA0 */ _t5 = cpu->r[30] + 0x00000024u;
|
|
/* 026EEEA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026EEEA4 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026EEEA4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 026EEEA4 */ if (_t7) goto L_026EEEA8; else goto L_026EEEB0;
|
|
L_026EEEA8: ; // 0x26eeea8
|
|
/* 026EEEA8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 026EEEAC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_026EEEB0: ; // 0x26eeeb0
|
|
/* 026EEEB0 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 026EEEB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026EEEB4 */ Gambit_fn_026F1274(cpu);
|
|
/* 026EEEB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026EEEBC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026EEEBC */ _t10 = _t9 & 0x00000001u;
|
|
/* 026EEEBC */ if (_t10) goto L_026EEEF8; else goto L_026EEEC0;
|
|
L_026EEEC0: ; // 0x26eeec0
|
|
/* 026EEEC0 */ _t11 = cpu->r[30] + 0x00000020u;
|
|
/* 026EEEC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026EEEC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 026EEEC8 */ _t12 = cpu->r[30] + 0x00000024u;
|
|
/* 026EEEC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026EEECC */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026EEECC */ _t14 = _t13 & 0x00000001u;
|
|
/* 026EEECC */ if (_t14) goto L_026EEED0; else goto L_026EEED8;
|
|
L_026EEED0: ; // 0x26eeed0
|
|
/* 026EEED0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 026EEED4 */ cpu->r[11] = cpu->r[11] + cpu->r[9];
|
|
L_026EEED8: ; // 0x26eeed8
|
|
/* 026EEED8 */ _t15 = cpu->r[11] + 0x00000000u;
|
|
/* 026EEED8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026EEEDC */ Gambit_fn_026F1220(cpu);
|
|
/* 026EEEE0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 026EEEE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026EEEE4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 026EEEE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 026EEEE8 */ cpu->lr = cpu->r[0];
|
|
/* 026EEEEC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EEEEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026EEEF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EEEF4 */ return;
|
|
L_026EEEF8: ; // 0x26eeef8
|
|
/* 026EEEF8 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 026EEEF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 026EEEFC */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 026EEEFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026EEF00 */ cpu->lr = cpu->r[0];
|
|
/* 026EEF04 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026EEF04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 026EEF08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026EEF0C */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 026EEF10 */ return;
|
|
L_027F53C8: ; // 0x27f53c8
|
|
/* 027F53C8 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F53CC */ cpu->r[3] = 0x101D0000u;
|
|
/* 027F53D0 */ _t22 = cpu->r[3] + 0xFFFF8624u;
|
|
/* 027F53D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F53D4 */ goto L_026EEE7C;
|
|
}
|
|
|
|
// fn_027F53D8 @ 0x27f53d8
|
|
void Gambit_fn_027F53D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F53D8: ; // 0x27f53d8
|
|
/* 027F53D8 */ cpu->r[0] = cpu->lr;
|
|
/* 027F53DC */ cpu->r[4] = cpu->r[3];
|
|
/* 027F53E0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F53E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F53E4 */ cpu->r[3] = 0x101D0000u;
|
|
/* 027F53E8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F53E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F53E8 */ cpu->r[1] = _t1;
|
|
/* 027F53EC */ _t2 = cpu->r[3] + 0xFFFF8624u;
|
|
/* 027F53EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F53F0 */ Gambit_fn_026EEE7C(cpu);
|
|
/* 027F53F4 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 027F53F8 */ cpu->r[12] = cpu->r[3] ^ cpu->r[12];
|
|
/* 027F53FC */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F5400 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 027F5404 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5408 */ cpu->lr = cpu->r[0];
|
|
/* 027F540C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5410 */ return;
|
|
}
|
|
|
|
// fn_027F53E8 @ 0x27f53e8
|
|
void Gambit_fn_027F53E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F53E8: ; // 0x27f53e8
|
|
/* 027F53E8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F53E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F53E8 */ cpu->r[1] = _t0;
|
|
/* 027F53EC */ _t1 = cpu->r[3] + 0xFFFF8624u;
|
|
/* 027F53EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F53F0 */ Gambit_fn_026EEE7C(cpu);
|
|
/* 027F53F4 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 027F53F8 */ cpu->r[12] = cpu->r[3] ^ cpu->r[12];
|
|
/* 027F53FC */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F5400 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 027F5404 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5408 */ cpu->lr = cpu->r[0];
|
|
/* 027F540C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5410 */ return;
|
|
}
|
|
|
|
// fn_027F5414 @ 0x27f5414
|
|
void Gambit_fn_027F5414(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027F5414: ; // 0x27f5414
|
|
/* 027F5414 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 027F5418 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F5418 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5418 */ cpu->r[1] = _t0;
|
|
/* 027F541C */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F5420 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 027F5424 */ _t1 = cpu->r[10] + 0x0000387Cu;
|
|
/* 027F5424 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 027F5424 */ cpu->r[10] = _t1;
|
|
/* 027F5428 */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F542C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 027F542C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 027F5430 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 027F5434 */ cpu->r[8] = 0x101F0000u;
|
|
/* 027F5438 */ _t3 = cpu->r[7] + 0x0000388Cu;
|
|
/* 027F5438 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 027F5438 */ cpu->r[7] = _t3;
|
|
/* 027F543C */ _t4 = cpu->r[8] + 0x00003884u;
|
|
/* 027F543C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 027F543C */ cpu->r[8] = _t4;
|
|
/* 027F5440 */ cpu->r[0] = 0x00000002u;
|
|
/* 027F5444 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 027F5444 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 027F5448 */ cpu->r[8] = 0x101F0000u;
|
|
/* 027F544C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F544C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F5450 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F5454 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 027F5454 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 027F5458 */ _t8 = cpu->r[8] + 0x0000389Cu;
|
|
/* 027F5458 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 027F5458 */ cpu->r[8] = _t8;
|
|
/* 027F545C */ _t9 = cpu->r[12] + 0x00003894u;
|
|
/* 027F545C */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 027F545C */ cpu->r[12] = _t9;
|
|
/* 027F5460 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 027F5460 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 027F5464 */ cpu->r[0] = 0x00000004u;
|
|
/* 027F5468 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 027F5468 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 027F546C */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F5470 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5470 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F5474 */ _t13 = cpu->r[11] + 0x000038A4u;
|
|
/* 027F5474 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027F5478 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F547C */ return;
|
|
}
|
|
|
|
// fn_027F5418 @ 0x27f5418
|
|
void Gambit_fn_027F5418(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027F5418: ; // 0x27f5418
|
|
/* 027F5418 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F5418 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5418 */ cpu->r[1] = _t0;
|
|
/* 027F541C */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F5420 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 027F5424 */ _t1 = cpu->r[10] + 0x0000387Cu;
|
|
/* 027F5424 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 027F5424 */ cpu->r[10] = _t1;
|
|
/* 027F5428 */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F542C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 027F542C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 027F5430 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 027F5434 */ cpu->r[8] = 0x101F0000u;
|
|
/* 027F5438 */ _t3 = cpu->r[7] + 0x0000388Cu;
|
|
/* 027F5438 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 027F5438 */ cpu->r[7] = _t3;
|
|
/* 027F543C */ _t4 = cpu->r[8] + 0x00003884u;
|
|
/* 027F543C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 027F543C */ cpu->r[8] = _t4;
|
|
/* 027F5440 */ cpu->r[0] = 0x00000002u;
|
|
/* 027F5444 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 027F5444 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 027F5448 */ cpu->r[8] = 0x101F0000u;
|
|
/* 027F544C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F544C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F5450 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F5454 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 027F5454 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 027F5458 */ _t8 = cpu->r[8] + 0x0000389Cu;
|
|
/* 027F5458 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 027F5458 */ cpu->r[8] = _t8;
|
|
/* 027F545C */ _t9 = cpu->r[12] + 0x00003894u;
|
|
/* 027F545C */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 027F545C */ cpu->r[12] = _t9;
|
|
/* 027F5460 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 027F5460 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 027F5464 */ cpu->r[0] = 0x00000004u;
|
|
/* 027F5468 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 027F5468 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 027F546C */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F5470 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5470 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F5474 */ _t13 = cpu->r[11] + 0x000038A4u;
|
|
/* 027F5474 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027F5478 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F547C */ return;
|
|
}
|
|
|
|
// fn_027F54A4 @ 0x27f54a4
|
|
void Gambit_fn_027F54A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F5480: ; // 0x27f5480
|
|
/* 027F5480 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F5484 */ _t0 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 027F5484 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F5488 */ _t1 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F5488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F548C */ cpu->r[4] = cpu->r[3];
|
|
/* 027F5490 */ _t2 = cpu->r[12] + 0x000000A4u;
|
|
/* 027F5490 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5494 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 027F5494 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5498 */ _t4 = cpu->r[11] + 0x000000ACu;
|
|
/* 027F5498 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F549C */ cpu->ctr = cpu->r[0];
|
|
/* 027F54A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_027F54A4: ; // 0x27f54a4
|
|
/* 027F54A4 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F54A8 */ goto L_027F5480;
|
|
}
|
|
|
|
// fn_027F54AC @ 0x27f54ac
|
|
void Gambit_fn_027F54AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137;
|
|
|
|
L_027F54AC: ; // 0x27f54ac
|
|
/* 027F54AC */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 027F54AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F54AC */ cpu->r[1] = _t0;
|
|
/* 027F54B0 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 027F54B0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 027F54B4 */ /* nop */
|
|
/* 027F54B8 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 027F54B8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F54BC */ /* nop */
|
|
/* 027F54C0 */ /* nop */
|
|
/* 027F54C4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F54C8 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 027F54C8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 027F54CC */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 027F54CC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 027F54D0 */ /* nop */
|
|
/* 027F54D4 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 027F54D4 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 027F54D8 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 027F54D8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 027F54DC */ /* nop */
|
|
/* 027F54E0 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 027F54E0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 027F54E4 */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 027F54E8 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 027F54E8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 027F54EC */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 027F54F0 */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F54F4 */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F54F4 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F54F8 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 027F54FC */ _t10 = cpu->r[7] + 0x000038A8u;
|
|
/* 027F54FC */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 027F54FC */ cpu->r[7] = _t10;
|
|
/* 027F5500 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F5504 */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F5508 */ _t11 = cpu->r[5] + 0x000038B0u;
|
|
/* 027F5508 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 027F5508 */ cpu->r[5] = _t11;
|
|
/* 027F550C */ cpu->r[10] = cpu->r[10] + 0x000038C0u;
|
|
/* 027F5510 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 027F5510 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 027F5514 */ cpu->r[9] = 0x101F0000u;
|
|
/* 027F5518 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 027F5518 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 027F551C */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 027F5520 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 027F5520 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 027F5524 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F5528 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 027F5528 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F552C */ cpu->r[31] = 0x101F0000u;
|
|
/* 027F5530 */ _t16 = cpu->r[12] + 0x000038B8u;
|
|
/* 027F5530 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 027F5530 */ cpu->r[12] = _t16;
|
|
/* 027F5534 */ cpu->r[11] = 0x00000002u;
|
|
/* 027F5538 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 027F5538 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F553C */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 027F553C */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F5540 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5540 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 027F5544 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F5548 */ _t21 = cpu->r[31] + 0x000038D4u;
|
|
/* 027F5548 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 027F5548 */ cpu->r[31] = _t21;
|
|
/* 027F554C */ cpu->r[0] = 0x00000004u;
|
|
/* 027F5550 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 027F5550 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 027F5554 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F5558 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 027F5558 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F555C */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 027F555C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F555C */ cpu->r[12] = _t24;
|
|
/* 027F5560 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 027F5560 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 027F5564 */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 027F5564 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 027F5568 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 027F5568 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 027F556C */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 027F556C */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 027F5570 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 027F5570 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 027F5574 */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 027F5574 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 027F5578 */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F557C */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 027F557C */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 027F5580 */ cpu->r[6] = 0x101F0000u;
|
|
/* 027F5584 */ _t32 = cpu->r[7] + 0x000038D0u;
|
|
/* 027F5584 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 027F5588 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 027F5588 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F5588 */ cpu->r[6] = _t33;
|
|
/* 027F558C */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 027F558C */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 027F5590 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 027F5590 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 027F5594 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F5598 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F5598 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F559C */ _t37 = cpu->r[5] + 0x000038C8u;
|
|
/* 027F559C */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 027F559C */ cpu->r[5] = _t37;
|
|
/* 027F55A0 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 027F55A0 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 027F55A4 */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 027F55A4 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 027F55A8 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 027F55A8 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 027F55AC */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 027F55AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F55B0 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 027F55B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F55B4 */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 027F55B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F55B8 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 027F55B8 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 027F55BC */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 027F55BC */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 027F55C0 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 027F55C0 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 027F55C4 */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F55C4 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 027F55C8 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 027F55C8 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 027F55CC */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 027F55CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F55D0 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F55D0 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 027F55D4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F55D8 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 027F55D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F55DC */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 027F55DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F55DC */ cpu->r[11] = _t52;
|
|
/* 027F55E0 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 027F55E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F55E4 */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F55E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F55E8 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 027F55E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F55EC */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 027F55EC */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 027F55F0 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 027F55F0 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 027F55F4 */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 027F55F4 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 027F55F8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F55FC */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F55FC */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 027F5600 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F5604 */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 027F5604 */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 027F5608 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 027F560C */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 027F560C */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F560C */ cpu->r[12] = _t61;
|
|
/* 027F5610 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 027F5610 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 027F5614 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 027F5614 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F5618 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 027F5618 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 027F561C */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 027F561C */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 027F5620 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 027F5620 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 027F5624 */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 027F5624 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 027F5628 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 027F5628 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F562C */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F562C */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F5630 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 027F5630 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 027F5634 */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 027F5634 */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 027F5638 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F5638 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027F563C */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 027F563C */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 027F5640 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 027F5640 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 027F5644 */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 027F5644 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 027F5648 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 027F5648 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 027F564C */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 027F564C */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 027F5650 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 027F5650 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 027F5654 */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 027F5654 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F5658 */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F565C */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 027F565C */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 027F5660 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 027F5660 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 027F5660 */ cpu->r[10] = _t81;
|
|
/* 027F5664 */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 027F5664 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F5668 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F5668 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 027F566C */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F566C */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 027F5670 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F5670 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 027F5674 */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 027F5674 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 027F5678 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F567C */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 027F567C */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 027F5680 */ _t88 = cpu->r[12] + 0x0000065Cu;
|
|
/* 027F5680 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 027F5684 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F5684 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 027F5688 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 027F5688 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 027F568C */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 027F568C */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 027F5690 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 027F5690 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 027F5694 */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 027F5694 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 027F5698 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F5698 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 027F569C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F56A0 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 027F56A0 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 027F56A4 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 027F56A8 */ _t96 = cpu->r[12] + 0x00000654u;
|
|
/* 027F56A8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 027F56AC */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F56AC */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 027F56B0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F56B4 */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F56B4 */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 027F56B8 */ _t99 = cpu->r[12] + 0x00000650u;
|
|
/* 027F56B8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 027F56BC */ cpu->r[11] = 0x10110000u;
|
|
/* 027F56C0 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 027F56C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 027F56C4 */ _t101 = cpu->r[11] + 0x00000658u;
|
|
/* 027F56C4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 027F56C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 027F56CC */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F56CC */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 027F56D0 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F56D0 */ _t104 = _t103 & 0x00000001u;
|
|
/* 027F56D0 */ if (_t104) goto L_027F56D4; else goto L_027F56E4;
|
|
L_027F56D4: ; // 0x27f56d4
|
|
/* 027F56D4 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F56D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F56DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F56E0 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F56E0 */ _t106 = _t105 & 0x00000001u;
|
|
/* 027F56E0 */ if (_t106) goto L_027F56F4; else goto L_027F56E4;
|
|
L_027F56E4: ; // 0x27f56e4
|
|
/* 027F56E4 */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 027F56E4 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 027F56E8 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 027F56E8 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 027F56EC */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 027F56EC */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 027F56F0 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F56F0 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_027F56F4: ; // 0x27f56f4
|
|
/* 027F56F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 027F56F8 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 027F56FC */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F56FC */ _t112 = _t111 & 0x00000001u;
|
|
/* 027F56FC */ if (_t112) goto L_027F5700; else goto L_027F5710;
|
|
L_027F5700: ; // 0x27f5700
|
|
/* 027F5700 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F5704 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F5708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F570C */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F570C */ _t114 = _t113 & 0x00000001u;
|
|
/* 027F570C */ if (_t114) goto L_027F5720; else goto L_027F5710;
|
|
L_027F5710: ; // 0x27f5710
|
|
/* 027F5710 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5710 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 027F5714 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 027F5714 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 027F5718 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 027F5718 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 027F571C */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F571C */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_027F5720: ; // 0x27f5720
|
|
/* 027F5720 */ cpu->r[8] = 0x101F0000u;
|
|
/* 027F5724 */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 027F5728 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 027F5728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 027F572C */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 027F572C */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 027F5730 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 027F5730 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 027F5734 */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 027F5734 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 027F5738 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027F5738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 027F573C */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 027F573C */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 027F5740 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 027F5740 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 027F5744 */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 027F5744 */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 027F5748 */ /* nop */
|
|
/* 027F574C */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 027F574C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 027F5750 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 027F5750 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 027F5754 */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 027F5754 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 027F5758 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 027F5758 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 027F575C */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 027F575C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 027F5760 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 027F5760 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 027F5764 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 027F5764 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 027F5768 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 027F5768 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 027F576C */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F576C */ _t136 = _t135 & 0x00000001u;
|
|
/* 027F576C */ if (_t136) goto L_027F5770; // else: addr-0 trap, fall-through
|
|
L_027F5770: ; // 0x27f5770
|
|
/* 027F5770 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F5770 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 027F5774 */ cpu->lr = cpu->r[0];
|
|
/* 027F5778 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 027F577C */ return;
|
|
}
|
|
|
|
// fn_027F5780 @ 0x27f5780
|
|
void Gambit_fn_027F5780(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F5780: ; // 0x27f5780
|
|
/* 027F5780 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F5784 */ _t0 = cpu->r[12] + 0xFFFF8640u;
|
|
/* 027F5784 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F5788 */ _t1 = cpu->r[12] + 0x00000268u;
|
|
/* 027F5788 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F578C */ return;
|
|
}
|
|
|
|
// fn_027F5790 @ 0x27f5790
|
|
void Gambit_fn_027F5790(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F5790: ; // 0x27f5790
|
|
/* 027F5790 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5794 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5794 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5798 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5798 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5798 */ cpu->r[1] = _t1;
|
|
/* 027F579C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F57A0 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F57A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F57A4 */ _t3 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027F57A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F57A8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F57AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F57B0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F57B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F57B4 */ cpu->lr = cpu->r[0];
|
|
/* 027F57B8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F57BC */ return;
|
|
}
|
|
|
|
// fn_027F5798 @ 0x27f5798
|
|
void Gambit_fn_027F5798(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F5798: ; // 0x27f5798
|
|
/* 027F5798 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5798 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5798 */ cpu->r[1] = _t0;
|
|
/* 027F579C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F57A0 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F57A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F57A4 */ _t2 = cpu->r[12] + 0x0000002Cu;
|
|
/* 027F57A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F57A8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F57AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F57B0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F57B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F57B4 */ cpu->lr = cpu->r[0];
|
|
/* 027F57B8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F57BC */ return;
|
|
}
|
|
|
|
// fn_027F57C0 @ 0x27f57c0
|
|
void Gambit_fn_027F57C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F57C0: ; // 0x27f57c0
|
|
/* 027F57C0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F57C4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F57C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F57C8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F57C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F57C8 */ cpu->r[1] = _t1;
|
|
/* 027F57CC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F57D0 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F57D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F57D4 */ _t3 = cpu->r[12] + 0x00000034u;
|
|
/* 027F57D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F57D8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F57DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F57E0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F57E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F57E4 */ cpu->lr = cpu->r[0];
|
|
/* 027F57E8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F57EC */ return;
|
|
}
|
|
|
|
// fn_027F57C8 @ 0x27f57c8
|
|
void Gambit_fn_027F57C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F57C8: ; // 0x27f57c8
|
|
/* 027F57C8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F57C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F57C8 */ cpu->r[1] = _t0;
|
|
/* 027F57CC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F57D0 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F57D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F57D4 */ _t2 = cpu->r[12] + 0x00000034u;
|
|
/* 027F57D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F57D8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F57DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F57E0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F57E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F57E4 */ cpu->lr = cpu->r[0];
|
|
/* 027F57E8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F57EC */ return;
|
|
}
|
|
|
|
// fn_027F57F0 @ 0x27f57f0
|
|
void Gambit_fn_027F57F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F57F0: ; // 0x27f57f0
|
|
/* 027F57F0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F57F4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F57F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F57F8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F57F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F57F8 */ cpu->r[1] = _t1;
|
|
/* 027F57FC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5800 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5800 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5804 */ _t3 = cpu->r[12] + 0x0000003Cu;
|
|
/* 027F5804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5808 */ cpu->ctr = cpu->r[0];
|
|
/* 027F580C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5810 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5814 */ cpu->lr = cpu->r[0];
|
|
/* 027F5818 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F581C */ return;
|
|
}
|
|
|
|
// fn_027F57F8 @ 0x27f57f8
|
|
void Gambit_fn_027F57F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F57F8: ; // 0x27f57f8
|
|
/* 027F57F8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F57F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F57F8 */ cpu->r[1] = _t0;
|
|
/* 027F57FC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5800 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5800 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5804 */ _t2 = cpu->r[12] + 0x0000003Cu;
|
|
/* 027F5804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5808 */ cpu->ctr = cpu->r[0];
|
|
/* 027F580C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5810 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5814 */ cpu->lr = cpu->r[0];
|
|
/* 027F5818 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F581C */ return;
|
|
}
|
|
|
|
// fn_027F5820 @ 0x27f5820
|
|
void Gambit_fn_027F5820(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F5820: ; // 0x27f5820
|
|
/* 027F5820 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5824 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5824 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5828 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5828 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5828 */ cpu->r[1] = _t1;
|
|
/* 027F582C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5830 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5830 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5834 */ _t3 = cpu->r[12] + 0x00000044u;
|
|
/* 027F5834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5838 */ cpu->ctr = cpu->r[0];
|
|
/* 027F583C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5840 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5844 */ cpu->lr = cpu->r[0];
|
|
/* 027F5848 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F584C */ return;
|
|
}
|
|
|
|
// fn_027F5828 @ 0x27f5828
|
|
void Gambit_fn_027F5828(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F5828: ; // 0x27f5828
|
|
/* 027F5828 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5828 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5828 */ cpu->r[1] = _t0;
|
|
/* 027F582C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5830 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5830 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5834 */ _t2 = cpu->r[12] + 0x00000044u;
|
|
/* 027F5834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5838 */ cpu->ctr = cpu->r[0];
|
|
/* 027F583C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5840 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5844 */ cpu->lr = cpu->r[0];
|
|
/* 027F5848 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F584C */ return;
|
|
}
|
|
|
|
// fn_027F5850 @ 0x27f5850
|
|
void Gambit_fn_027F5850(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F5850: ; // 0x27f5850
|
|
/* 027F5850 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5854 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5854 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5858 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5858 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5858 */ cpu->r[1] = _t1;
|
|
/* 027F585C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5860 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5860 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5864 */ _t3 = cpu->r[12] + 0x0000004Cu;
|
|
/* 027F5864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5868 */ cpu->ctr = cpu->r[0];
|
|
/* 027F586C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5870 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5874 */ cpu->lr = cpu->r[0];
|
|
/* 027F5878 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F587C */ return;
|
|
}
|
|
|
|
// fn_027F5858 @ 0x27f5858
|
|
void Gambit_fn_027F5858(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F5858: ; // 0x27f5858
|
|
/* 027F5858 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5858 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5858 */ cpu->r[1] = _t0;
|
|
/* 027F585C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5860 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5860 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5864 */ _t2 = cpu->r[12] + 0x0000004Cu;
|
|
/* 027F5864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5868 */ cpu->ctr = cpu->r[0];
|
|
/* 027F586C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5870 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5874 */ cpu->lr = cpu->r[0];
|
|
/* 027F5878 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F587C */ return;
|
|
}
|
|
|
|
// fn_027F5880 @ 0x27f5880
|
|
void Gambit_fn_027F5880(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F5880: ; // 0x27f5880
|
|
/* 027F5880 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5884 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5884 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5888 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5888 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5888 */ cpu->r[1] = _t1;
|
|
/* 027F588C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5890 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5890 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5894 */ _t3 = cpu->r[12] + 0x00000054u;
|
|
/* 027F5894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5898 */ cpu->ctr = cpu->r[0];
|
|
/* 027F589C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F58A0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F58A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F58A4 */ cpu->lr = cpu->r[0];
|
|
/* 027F58A8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F58AC */ return;
|
|
}
|
|
|
|
// fn_027F5888 @ 0x27f5888
|
|
void Gambit_fn_027F5888(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F5888: ; // 0x27f5888
|
|
/* 027F5888 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5888 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5888 */ cpu->r[1] = _t0;
|
|
/* 027F588C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5890 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5890 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5894 */ _t2 = cpu->r[12] + 0x00000054u;
|
|
/* 027F5894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5898 */ cpu->ctr = cpu->r[0];
|
|
/* 027F589C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F58A0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F58A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F58A4 */ cpu->lr = cpu->r[0];
|
|
/* 027F58A8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F58AC */ return;
|
|
}
|
|
|
|
// fn_027F58B0 @ 0x27f58b0
|
|
void Gambit_fn_027F58B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F58B0: ; // 0x27f58b0
|
|
/* 027F58B0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F58B4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F58B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F58B8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F58B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F58B8 */ cpu->r[1] = _t1;
|
|
/* 027F58BC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F58C0 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F58C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F58C4 */ _t3 = cpu->r[12] + 0x0000006Cu;
|
|
/* 027F58C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F58C8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F58CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F58D0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F58D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F58D4 */ cpu->lr = cpu->r[0];
|
|
/* 027F58D8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F58DC */ return;
|
|
}
|
|
|
|
// fn_027F58B8 @ 0x27f58b8
|
|
void Gambit_fn_027F58B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F58B8: ; // 0x27f58b8
|
|
/* 027F58B8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F58B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F58B8 */ cpu->r[1] = _t0;
|
|
/* 027F58BC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F58C0 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F58C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F58C4 */ _t2 = cpu->r[12] + 0x0000006Cu;
|
|
/* 027F58C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F58C8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F58CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F58D0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F58D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F58D4 */ cpu->lr = cpu->r[0];
|
|
/* 027F58D8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F58DC */ return;
|
|
}
|
|
|
|
// fn_027F58E0 @ 0x27f58e0
|
|
void Gambit_fn_027F58E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F58E0: ; // 0x27f58e0
|
|
/* 027F58E0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F58E4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F58E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F58E8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F58E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F58E8 */ cpu->r[1] = _t1;
|
|
/* 027F58EC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F58F0 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F58F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F58F4 */ _t3 = cpu->r[12] + 0x00000074u;
|
|
/* 027F58F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F58F8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F58FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5900 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5900 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5904 */ cpu->lr = cpu->r[0];
|
|
/* 027F5908 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F590C */ return;
|
|
}
|
|
|
|
// fn_027F58E8 @ 0x27f58e8
|
|
void Gambit_fn_027F58E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F58E8: ; // 0x27f58e8
|
|
/* 027F58E8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F58E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F58E8 */ cpu->r[1] = _t0;
|
|
/* 027F58EC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F58F0 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F58F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F58F4 */ _t2 = cpu->r[12] + 0x00000074u;
|
|
/* 027F58F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F58F8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F58FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5900 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5900 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5904 */ cpu->lr = cpu->r[0];
|
|
/* 027F5908 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F590C */ return;
|
|
}
|
|
|
|
// fn_027F5910 @ 0x27f5910
|
|
void Gambit_fn_027F5910(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F5910: ; // 0x27f5910
|
|
/* 027F5910 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5914 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5914 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5918 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5918 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5918 */ cpu->r[1] = _t1;
|
|
/* 027F591C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5920 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5920 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5924 */ _t3 = cpu->r[12] + 0x0000007Cu;
|
|
/* 027F5924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5928 */ cpu->ctr = cpu->r[0];
|
|
/* 027F592C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5930 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5934 */ cpu->lr = cpu->r[0];
|
|
/* 027F5938 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F593C */ return;
|
|
}
|
|
|
|
// fn_027F5918 @ 0x27f5918
|
|
void Gambit_fn_027F5918(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F5918: ; // 0x27f5918
|
|
/* 027F5918 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5918 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5918 */ cpu->r[1] = _t0;
|
|
/* 027F591C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5920 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5920 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5924 */ _t2 = cpu->r[12] + 0x0000007Cu;
|
|
/* 027F5924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5928 */ cpu->ctr = cpu->r[0];
|
|
/* 027F592C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5930 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5934 */ cpu->lr = cpu->r[0];
|
|
/* 027F5938 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F593C */ return;
|
|
}
|
|
|
|
// fn_027F5940 @ 0x27f5940
|
|
void Gambit_fn_027F5940(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F5940: ; // 0x27f5940
|
|
/* 027F5940 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5944 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5944 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5948 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5948 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5948 */ cpu->r[1] = _t1;
|
|
/* 027F594C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5950 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5950 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5954 */ _t3 = cpu->r[12] + 0x0000008Cu;
|
|
/* 027F5954 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5958 */ cpu->ctr = cpu->r[0];
|
|
/* 027F595C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5960 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5964 */ cpu->lr = cpu->r[0];
|
|
/* 027F5968 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F596C */ return;
|
|
}
|
|
|
|
// fn_027F5948 @ 0x27f5948
|
|
void Gambit_fn_027F5948(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F5948: ; // 0x27f5948
|
|
/* 027F5948 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5948 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5948 */ cpu->r[1] = _t0;
|
|
/* 027F594C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5950 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5950 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5954 */ _t2 = cpu->r[12] + 0x0000008Cu;
|
|
/* 027F5954 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5958 */ cpu->ctr = cpu->r[0];
|
|
/* 027F595C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F5960 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5964 */ cpu->lr = cpu->r[0];
|
|
/* 027F5968 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F596C */ return;
|
|
}
|
|
|
|
// fn_027F5970 @ 0x27f5970
|
|
void Gambit_fn_027F5970(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F5970: ; // 0x27f5970
|
|
/* 027F5970 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5974 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5974 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5978 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5978 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5978 */ cpu->r[1] = _t1;
|
|
/* 027F597C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5980 */ Gambit_fn_026FAF70(cpu);
|
|
/* 027F5984 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5988 */ cpu->lr = cpu->r[0];
|
|
/* 027F598C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5990 */ return;
|
|
}
|
|
|
|
// fn_027F5978 @ 0x27f5978
|
|
void Gambit_fn_027F5978(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F5978: ; // 0x27f5978
|
|
/* 027F5978 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5978 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5978 */ cpu->r[1] = _t0;
|
|
/* 027F597C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5980 */ Gambit_fn_026FAF70(cpu);
|
|
/* 027F5984 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5988 */ cpu->lr = cpu->r[0];
|
|
/* 027F598C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5990 */ return;
|
|
}
|
|
|
|
// fn_027F5994 @ 0x27f5994
|
|
void Gambit_fn_027F5994(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F5994: ; // 0x27f5994
|
|
/* 027F5994 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5998 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5998 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F599C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F599C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F599C */ cpu->r[1] = _t1;
|
|
/* 027F59A0 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F59A4 */ Gambit_fn_026FAF94(cpu);
|
|
/* 027F59A8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F59A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F59AC */ cpu->lr = cpu->r[0];
|
|
/* 027F59B0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F59B4 */ return;
|
|
}
|
|
|
|
// fn_027F599C @ 0x27f599c
|
|
void Gambit_fn_027F599C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F599C: ; // 0x27f599c
|
|
/* 027F599C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F599C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F599C */ cpu->r[1] = _t0;
|
|
/* 027F59A0 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F59A4 */ Gambit_fn_026FAF94(cpu);
|
|
/* 027F59A8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F59A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F59AC */ cpu->lr = cpu->r[0];
|
|
/* 027F59B0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F59B4 */ return;
|
|
}
|
|
|
|
// fn_027F59B8 @ 0x27f59b8
|
|
void Gambit_fn_027F59B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F59B8: ; // 0x27f59b8
|
|
/* 027F59B8 */ cpu->r[0] = cpu->lr;
|
|
/* 027F59BC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F59BC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F59C0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F59C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F59C0 */ cpu->r[1] = _t1;
|
|
/* 027F59C4 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F59C8 */ Gambit_fn_026FAFB8(cpu);
|
|
/* 027F59CC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F59CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F59D0 */ cpu->lr = cpu->r[0];
|
|
/* 027F59D4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F59D8 */ return;
|
|
}
|
|
|
|
// fn_027F59C0 @ 0x27f59c0
|
|
void Gambit_fn_027F59C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F59C0: ; // 0x27f59c0
|
|
/* 027F59C0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F59C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F59C0 */ cpu->r[1] = _t0;
|
|
/* 027F59C4 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F59C8 */ Gambit_fn_026FAFB8(cpu);
|
|
/* 027F59CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F59CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F59D0 */ cpu->lr = cpu->r[0];
|
|
/* 027F59D4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F59D8 */ return;
|
|
}
|
|
|
|
// fn_027F59DC @ 0x27f59dc
|
|
void Gambit_fn_027F59DC(CPUState* 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_027F59DC: ; // 0x27f59dc
|
|
/* 027F59DC */ cpu->r[0] = cpu->lr;
|
|
/* 027F59E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F59E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F59E0 */ cpu->r[1] = _t0;
|
|
/* 027F59E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F59E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F59E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F59EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F59EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F59F0 */ Gambit_fn_027F59B8(cpu);
|
|
/* 027F59F4 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 027F59F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F59F8 */ cpu->r[7] = 0x00000000u;
|
|
/* 027F59FC */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 027F59FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5A00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 027F5A04 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F5A08 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5A08 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F5A08 */ if (_t7) goto L_027F5A0C; else goto L_027F5A3C;
|
|
L_027F5A0C: ; // 0x27f5a0c
|
|
/* 027F5A0C */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 027F5A0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F5A10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 027F5A14 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5A14 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F5A14 */ if (_t10) goto L_027F5A18; else goto L_027F5A3C;
|
|
L_027F5A18: ; // 0x27f5a18
|
|
/* 027F5A18 */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 027F5A18 */ cpu->r[10] = rbrew_read8(cpu->mem, _t11);
|
|
/* 027F5A1C */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 027F5A1C */ cpu->r[11] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027F5A20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 027F5A24 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5A24 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F5A24 */ if (_t14) goto L_027F5A28; else goto L_027F5A3C;
|
|
L_027F5A28: ; // 0x27f5a28
|
|
/* 027F5A28 */ _t15 = cpu->r[31] + 0x00000009u;
|
|
/* 027F5A28 */ cpu->r[12] = rbrew_read8(cpu->mem, _t15);
|
|
/* 027F5A2C */ _t16 = cpu->r[3] + 0x00000009u;
|
|
/* 027F5A2C */ cpu->r[0] = rbrew_read8(cpu->mem, _t16);
|
|
/* 027F5A30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 027F5A34 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5A34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F5A34 */ if (_t18) goto L_027F5A38; else goto L_027F5A3C;
|
|
L_027F5A38: ; // 0x27f5a38
|
|
/* 027F5A38 */ cpu->r[7] = 0x00000001u;
|
|
L_027F5A3C: ; // 0x27f5a3c
|
|
/* 027F5A3C */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 027F5A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F5A40 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5A40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F5A44 */ cpu->lr = cpu->r[0];
|
|
/* 027F5A48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F5A4C */ cpu->r[3] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F5A50 */ return;
|
|
}
|
|
|
|
// fn_027F59E0 @ 0x27f59e0
|
|
void Gambit_fn_027F59E0(CPUState* 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_027F59E0: ; // 0x27f59e0
|
|
/* 027F59E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F59E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F59E0 */ cpu->r[1] = _t0;
|
|
/* 027F59E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F59E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F59E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F59EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F59EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F59F0 */ Gambit_fn_027F59B8(cpu);
|
|
/* 027F59F4 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 027F59F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F59F8 */ cpu->r[7] = 0x00000000u;
|
|
/* 027F59FC */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 027F59FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5A00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 027F5A04 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F5A08 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5A08 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F5A08 */ if (_t7) goto L_027F5A0C; else goto L_027F5A3C;
|
|
L_027F5A0C: ; // 0x27f5a0c
|
|
/* 027F5A0C */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 027F5A0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F5A10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 027F5A14 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5A14 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F5A14 */ if (_t10) goto L_027F5A18; else goto L_027F5A3C;
|
|
L_027F5A18: ; // 0x27f5a18
|
|
/* 027F5A18 */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 027F5A18 */ cpu->r[10] = rbrew_read8(cpu->mem, _t11);
|
|
/* 027F5A1C */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 027F5A1C */ cpu->r[11] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027F5A20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 027F5A24 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5A24 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F5A24 */ if (_t14) goto L_027F5A28; else goto L_027F5A3C;
|
|
L_027F5A28: ; // 0x27f5a28
|
|
/* 027F5A28 */ _t15 = cpu->r[31] + 0x00000009u;
|
|
/* 027F5A28 */ cpu->r[12] = rbrew_read8(cpu->mem, _t15);
|
|
/* 027F5A2C */ _t16 = cpu->r[3] + 0x00000009u;
|
|
/* 027F5A2C */ cpu->r[0] = rbrew_read8(cpu->mem, _t16);
|
|
/* 027F5A30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 027F5A34 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5A34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F5A34 */ if (_t18) goto L_027F5A38; else goto L_027F5A3C;
|
|
L_027F5A38: ; // 0x27f5a38
|
|
/* 027F5A38 */ cpu->r[7] = 0x00000001u;
|
|
L_027F5A3C: ; // 0x27f5a3c
|
|
/* 027F5A3C */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 027F5A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F5A40 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5A40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F5A44 */ cpu->lr = cpu->r[0];
|
|
/* 027F5A48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F5A4C */ cpu->r[3] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F5A50 */ return;
|
|
}
|
|
|
|
// fn_027F5A54 @ 0x27f5a54
|
|
void Gambit_fn_027F5A54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F5A54: ; // 0x27f5a54
|
|
/* 027F5A54 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5A58 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5A58 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5A5C */ cpu->r[4] = cpu->r[3];
|
|
/* 027F5A60 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5A60 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5A60 */ cpu->r[1] = _t1;
|
|
/* 027F5A64 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5A68 */ Gambit_fn_026FAFCC(cpu);
|
|
/* 027F5A6C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5A70 */ cpu->lr = cpu->r[0];
|
|
/* 027F5A74 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5A78 */ return;
|
|
}
|
|
|
|
// fn_027F5A60 @ 0x27f5a60
|
|
void Gambit_fn_027F5A60(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F5A60: ; // 0x27f5a60
|
|
/* 027F5A60 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5A60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5A60 */ cpu->r[1] = _t0;
|
|
/* 027F5A64 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5A68 */ Gambit_fn_026FAFCC(cpu);
|
|
/* 027F5A6C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5A70 */ cpu->lr = cpu->r[0];
|
|
/* 027F5A74 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5A78 */ return;
|
|
}
|
|
|
|
// fn_027F5A7C @ 0x27f5a7c
|
|
void Gambit_fn_027F5A7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F5A7C: ; // 0x27f5a7c
|
|
/* 027F5A7C */ cpu->r[0] = cpu->lr;
|
|
/* 027F5A80 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5A80 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5A84 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F5A88 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5A88 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5A88 */ cpu->r[1] = _t1;
|
|
/* 027F5A8C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5A90 */ Gambit_fn_026FAFE8(cpu);
|
|
/* 027F5A94 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5A98 */ cpu->lr = cpu->r[0];
|
|
/* 027F5A9C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5AA0 */ return;
|
|
}
|
|
|
|
// fn_027F5A88 @ 0x27f5a88
|
|
void Gambit_fn_027F5A88(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F5A88: ; // 0x27f5a88
|
|
/* 027F5A88 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5A88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5A88 */ cpu->r[1] = _t0;
|
|
/* 027F5A8C */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5A90 */ Gambit_fn_026FAFE8(cpu);
|
|
/* 027F5A94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5A98 */ cpu->lr = cpu->r[0];
|
|
/* 027F5A9C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5AA0 */ return;
|
|
}
|
|
|
|
// fn_027F5AA4 @ 0x27f5aa4
|
|
void Gambit_fn_027F5AA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F5AA4: ; // 0x27f5aa4
|
|
/* 027F5AA4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5AA8 */ cpu->r[5] = cpu->r[4];
|
|
/* 027F5AAC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5AAC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5AB0 */ cpu->r[0] = cpu->r[3];
|
|
/* 027F5AB4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5AB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5AB4 */ cpu->r[1] = _t1;
|
|
/* 027F5AB8 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5ABC */ cpu->r[4] = cpu->r[3];
|
|
/* 027F5AC0 */ cpu->r[3] = cpu->r[0];
|
|
/* 027F5AC4 */ Gambit_fn_026FB07C(cpu);
|
|
/* 027F5AC8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5AC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5ACC */ cpu->lr = cpu->r[0];
|
|
/* 027F5AD0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5AD4 */ return;
|
|
}
|
|
|
|
// fn_027F5AB4 @ 0x27f5ab4
|
|
void Gambit_fn_027F5AB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F5AB4: ; // 0x27f5ab4
|
|
/* 027F5AB4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5AB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5AB4 */ cpu->r[1] = _t0;
|
|
/* 027F5AB8 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5ABC */ cpu->r[4] = cpu->r[3];
|
|
/* 027F5AC0 */ cpu->r[3] = cpu->r[0];
|
|
/* 027F5AC4 */ Gambit_fn_026FB07C(cpu);
|
|
/* 027F5AC8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5AC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5ACC */ cpu->lr = cpu->r[0];
|
|
/* 027F5AD0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5AD4 */ return;
|
|
}
|
|
|
|
// fn_027F5AD8 @ 0x27f5ad8
|
|
void Gambit_fn_027F5AD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F5AD8: ; // 0x27f5ad8
|
|
/* 027F5AD8 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5ADC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5ADC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5AE0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5AE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5AE0 */ cpu->r[1] = _t1;
|
|
/* 027F5AE4 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5AE8 */ Gambit_fn_026FB168(cpu);
|
|
/* 027F5AEC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5AEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5AF0 */ cpu->lr = cpu->r[0];
|
|
/* 027F5AF4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5AF8 */ return;
|
|
}
|
|
|
|
// fn_027F5AE0 @ 0x27f5ae0
|
|
void Gambit_fn_027F5AE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F5AE0: ; // 0x27f5ae0
|
|
/* 027F5AE0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5AE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5AE0 */ cpu->r[1] = _t0;
|
|
/* 027F5AE4 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5AE8 */ Gambit_fn_026FB168(cpu);
|
|
/* 027F5AEC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5AEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5AF0 */ cpu->lr = cpu->r[0];
|
|
/* 027F5AF4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5AF8 */ return;
|
|
}
|
|
|
|
// fn_027F5AFC @ 0x27f5afc
|
|
void Gambit_fn_027F5AFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F5AFC: ; // 0x27f5afc
|
|
/* 027F5AFC */ cpu->r[0] = cpu->lr;
|
|
/* 027F5B00 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5B00 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5B04 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5B04 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5B04 */ cpu->r[1] = _t1;
|
|
/* 027F5B08 */ Gambit_fn_027F5AD8(cpu);
|
|
/* 027F5B0C */ _t2 = cpu->r[3] | cpu->r[3];
|
|
/* 027F5B0C */ cpu->r[12] = ~_t2;
|
|
/* 027F5B10 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F5B14 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 027F5B18 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5B18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5B1C */ cpu->lr = cpu->r[0];
|
|
/* 027F5B20 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5B24 */ return;
|
|
}
|
|
|
|
// fn_027F5B04 @ 0x27f5b04
|
|
void Gambit_fn_027F5B04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F5B04: ; // 0x27f5b04
|
|
/* 027F5B04 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5B04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5B04 */ cpu->r[1] = _t0;
|
|
/* 027F5B08 */ Gambit_fn_027F5AD8(cpu);
|
|
/* 027F5B0C */ _t1 = cpu->r[3] | cpu->r[3];
|
|
/* 027F5B0C */ cpu->r[12] = ~_t1;
|
|
/* 027F5B10 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F5B14 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 027F5B18 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5B18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5B1C */ cpu->lr = cpu->r[0];
|
|
/* 027F5B20 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5B24 */ return;
|
|
}
|
|
|
|
// fn_027F5B28 @ 0x27f5b28
|
|
void Gambit_fn_027F5B28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027F5B28: ; // 0x27f5b28
|
|
/* 027F5B28 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F5B2C */ _t0 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 027F5B2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F5B30 */ _t1 = cpu->r[12] + 0x00000014u;
|
|
/* 027F5B30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5B34 */ _t2 = cpu->r[10] + 0x00000084u;
|
|
/* 027F5B34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5B38 */ _t3 = cpu->r[12] + 0x000000ACu;
|
|
/* 027F5B38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5B3C */ _t4 = cpu->r[12] + 0x000000B4u;
|
|
/* 027F5B3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5B40 */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F5B44 */ cpu->r[9] = cpu->r[11] + cpu->r[9];
|
|
/* 027F5B48 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F5B4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 027F5B50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5B50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F5B50 */ if (_t6) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F5B50 */ goto L_027F5B54;
|
|
L_027F5B54: ; // 0x27f5b54
|
|
/* 027F5B54 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 027F5B54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F5B58 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 027F5B58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F5B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 027F5B60 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5B60 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F5B60 */ if (_t10) goto L_027F5B64; else goto L_027F5B68;
|
|
L_027F5B64: ; // 0x27f5b64
|
|
/* 027F5B64 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
L_027F5B68: ; // 0x27f5b68
|
|
/* 027F5B68 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 027F5B6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 027F5B70 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5B70 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F5B70 */ if (_t12) goto L_027F5B74; else goto L_027F5B54;
|
|
L_027F5B74: ; // 0x27f5b74
|
|
/* 027F5B74 */ return;
|
|
}
|
|
|
|
// fn_027F5B78 @ 0x27f5b78
|
|
void Gambit_fn_027F5B78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51;
|
|
|
|
L_027F5B78: ; // 0x27f5b78
|
|
/* 027F5B78 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5B7C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F5B7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5B7C */ cpu->r[1] = _t0;
|
|
/* 027F5B80 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 027F5B80 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F5B84 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5B84 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F5B88 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 027F5B88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F5B8C */ Gambit_fn_027F59B8(cpu);
|
|
/* 027F5B90 */ cpu->r[9] = 0x101F0000u;
|
|
/* 027F5B94 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 027F5B94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5B98 */ _t5 = cpu->r[9] + 0x000039DCu;
|
|
/* 027F5B98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F5B98 */ cpu->r[9] = _t5;
|
|
/* 027F5B9C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5B9C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F5BA0 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5BA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F5BA4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5BA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F5BA8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5BA8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F5BAC */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 027F5BAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F5BB0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5BB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F5BB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 027F5BB8 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027F5BB8 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 027F5BBC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5BBC */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F5BBC */ if (_t14) goto L_027F5BC0; else goto L_027F5BCC;
|
|
L_027F5BC0: ; // 0x27f5bc0
|
|
/* 027F5BC0 */ _t15 = cpu->r[9] + 0x00000004u;
|
|
/* 027F5BC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F5BC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 027F5BC8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5BC8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F5BC8 */ if (_t17) goto L_027F5C78; else goto L_027F5BCC;
|
|
L_027F5BCC: ; // 0x27f5bcc
|
|
/* 027F5BCC */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F5BD0 */ _t18 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 027F5BD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F5BD4 */ _t19 = cpu->r[12] + 0x00000014u;
|
|
/* 027F5BD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F5BD8 */ _t20 = cpu->r[12] + 0x00000084u;
|
|
/* 027F5BD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F5BDC */ _t21 = cpu->r[10] + 0x00000038u;
|
|
/* 027F5BDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F5BE0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F5BE4 */ _t22 = cpu->r[10] + 0x00000040u;
|
|
/* 027F5BE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F5BE8 */ cpu->r[30] = cpu->r[31] + cpu->r[12];
|
|
/* 027F5BEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 027F5BF0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F5BF4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5BF4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F5BF4 */ if (_t24) goto L_027F5C78; else goto L_027F5BF8;
|
|
L_027F5BF8: ; // 0x27f5bf8
|
|
/* 027F5BF8 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 027F5BF8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t25);
|
|
/* 027F5BFC */ _t26 = cpu->r[1] + 0x00000011u;
|
|
/* 027F5BFC */ cpu->r[4] = rbrew_read8(cpu->mem, _t26);
|
|
L_027F5C00: ; // 0x27f5c00
|
|
/* 027F5C00 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 027F5C00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F5C04 */ cpu->r[5] = cpu->r[10];
|
|
/* 027F5C08 */ _t28 = cpu->r[5] + 0x00000000u;
|
|
/* 027F5C08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027F5C0C */ cpu->r[7] = cpu->r[6] ^ 0x00000002u;
|
|
/* 027F5C10 */ cpu->r[8] = rbrew_clz32(cpu->r[7]);
|
|
/* 027F5C14 */ cpu->r[6] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F5C14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F5C18 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C18 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027F5C18 */ if (_t30) goto L_027F5C1C; else goto L_027F5C20;
|
|
L_027F5C1C: ; // 0x27f5c1c
|
|
/* 027F5C1C */ _t31 = cpu->r[5] + 0x00000000u;
|
|
/* 027F5C1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
L_027F5C20: ; // 0x27f5c20
|
|
/* 027F5C20 */ _t32 = cpu->r[10] + 0x00000004u;
|
|
/* 027F5C20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F5C24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 027F5C28 */ _t33 = cpu->r[10] + 0x00000008u;
|
|
/* 027F5C28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F5C2C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C2C */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F5C2C */ if (_t35) goto L_027F5C30; else goto L_027F5C68;
|
|
L_027F5C30: ; // 0x27f5c30
|
|
/* 027F5C30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 027F5C34 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C34 */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F5C34 */ if (_t37) goto L_027F5C38; else goto L_027F5C68;
|
|
L_027F5C38: ; // 0x27f5c38
|
|
/* 027F5C38 */ _t38 = cpu->r[10] + 0x0000000Cu;
|
|
/* 027F5C38 */ cpu->r[9] = rbrew_read8(cpu->mem, _t38);
|
|
/* 027F5C3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[9]);
|
|
/* 027F5C40 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C40 */ _t40 = _t39 & 0x00000001u;
|
|
/* 027F5C40 */ if (_t40) goto L_027F5C44; else goto L_027F5C68;
|
|
L_027F5C44: ; // 0x27f5c44
|
|
/* 027F5C44 */ _t41 = cpu->r[10] + 0x0000000Du;
|
|
/* 027F5C44 */ cpu->r[10] = rbrew_read8(cpu->mem, _t41);
|
|
/* 027F5C48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 027F5C4C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C4C */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F5C4C */ if (_t43) goto L_027F5C50; else goto L_027F5C68;
|
|
L_027F5C50: ; // 0x27f5c50
|
|
/* 027F5C50 */ _t44 = cpu->r[1] + 0x00000024u;
|
|
/* 027F5C50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F5C54 */ _t45 = cpu->r[1] + 0x00000018u;
|
|
/* 027F5C54 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F5C58 */ cpu->lr = cpu->r[0];
|
|
/* 027F5C5C */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5C5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F5C60 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F5C64 */ return;
|
|
L_027F5C68: ; // 0x27f5c68
|
|
/* 027F5C68 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 027F5C6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 027F5C70 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F5C74 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C74 */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F5C74 */ if (_t48) goto L_027F5C78; else goto L_027F5C00;
|
|
L_027F5C78: ; // 0x27f5c78
|
|
/* 027F5C78 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 027F5C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F5C7C */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 027F5C7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027F5C80 */ cpu->lr = cpu->r[0];
|
|
/* 027F5C84 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5C84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F5C88 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F5C8C */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 027F5C90 */ return;
|
|
}
|
|
|
|
// fn_027F5B7C @ 0x27f5b7c
|
|
void Gambit_fn_027F5B7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51;
|
|
|
|
L_027F5B7C: ; // 0x27f5b7c
|
|
/* 027F5B7C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F5B7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5B7C */ cpu->r[1] = _t0;
|
|
/* 027F5B80 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 027F5B80 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F5B84 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5B84 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F5B88 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 027F5B88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F5B8C */ Gambit_fn_027F59B8(cpu);
|
|
/* 027F5B90 */ cpu->r[9] = 0x101F0000u;
|
|
/* 027F5B94 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 027F5B94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F5B98 */ _t5 = cpu->r[9] + 0x000039DCu;
|
|
/* 027F5B98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F5B98 */ cpu->r[9] = _t5;
|
|
/* 027F5B9C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5B9C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F5BA0 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5BA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F5BA4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5BA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F5BA8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5BA8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F5BAC */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 027F5BAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F5BB0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5BB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F5BB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 027F5BB8 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 027F5BB8 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 027F5BBC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5BBC */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F5BBC */ if (_t14) goto L_027F5BC0; else goto L_027F5BCC;
|
|
L_027F5BC0: ; // 0x27f5bc0
|
|
/* 027F5BC0 */ _t15 = cpu->r[9] + 0x00000004u;
|
|
/* 027F5BC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F5BC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 027F5BC8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5BC8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F5BC8 */ if (_t17) goto L_027F5C78; else goto L_027F5BCC;
|
|
L_027F5BCC: ; // 0x27f5bcc
|
|
/* 027F5BCC */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F5BD0 */ _t18 = cpu->r[12] + 0xFFFFAEA8u;
|
|
/* 027F5BD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F5BD4 */ _t19 = cpu->r[12] + 0x00000014u;
|
|
/* 027F5BD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F5BD8 */ _t20 = cpu->r[12] + 0x00000084u;
|
|
/* 027F5BD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F5BDC */ _t21 = cpu->r[10] + 0x00000038u;
|
|
/* 027F5BDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F5BE0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F5BE4 */ _t22 = cpu->r[10] + 0x00000040u;
|
|
/* 027F5BE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F5BE8 */ cpu->r[30] = cpu->r[31] + cpu->r[12];
|
|
/* 027F5BEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 027F5BF0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F5BF4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5BF4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F5BF4 */ if (_t24) goto L_027F5C78; else goto L_027F5BF8;
|
|
L_027F5BF8: ; // 0x27f5bf8
|
|
/* 027F5BF8 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 027F5BF8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t25);
|
|
/* 027F5BFC */ _t26 = cpu->r[1] + 0x00000011u;
|
|
/* 027F5BFC */ cpu->r[4] = rbrew_read8(cpu->mem, _t26);
|
|
L_027F5C00: ; // 0x27f5c00
|
|
/* 027F5C00 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 027F5C00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F5C04 */ cpu->r[5] = cpu->r[10];
|
|
/* 027F5C08 */ _t28 = cpu->r[5] + 0x00000000u;
|
|
/* 027F5C08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027F5C0C */ cpu->r[7] = cpu->r[6] ^ 0x00000002u;
|
|
/* 027F5C10 */ cpu->r[8] = rbrew_clz32(cpu->r[7]);
|
|
/* 027F5C14 */ cpu->r[6] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F5C14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F5C18 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C18 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027F5C18 */ if (_t30) goto L_027F5C1C; else goto L_027F5C20;
|
|
L_027F5C1C: ; // 0x27f5c1c
|
|
/* 027F5C1C */ _t31 = cpu->r[5] + 0x00000000u;
|
|
/* 027F5C1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
L_027F5C20: ; // 0x27f5c20
|
|
/* 027F5C20 */ _t32 = cpu->r[10] + 0x00000004u;
|
|
/* 027F5C20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F5C24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 027F5C28 */ _t33 = cpu->r[10] + 0x00000008u;
|
|
/* 027F5C28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F5C2C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C2C */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F5C2C */ if (_t35) goto L_027F5C30; else goto L_027F5C68;
|
|
L_027F5C30: ; // 0x27f5c30
|
|
/* 027F5C30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 027F5C34 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C34 */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F5C34 */ if (_t37) goto L_027F5C38; else goto L_027F5C68;
|
|
L_027F5C38: ; // 0x27f5c38
|
|
/* 027F5C38 */ _t38 = cpu->r[10] + 0x0000000Cu;
|
|
/* 027F5C38 */ cpu->r[9] = rbrew_read8(cpu->mem, _t38);
|
|
/* 027F5C3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[9]);
|
|
/* 027F5C40 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C40 */ _t40 = _t39 & 0x00000001u;
|
|
/* 027F5C40 */ if (_t40) goto L_027F5C44; else goto L_027F5C68;
|
|
L_027F5C44: ; // 0x27f5c44
|
|
/* 027F5C44 */ _t41 = cpu->r[10] + 0x0000000Du;
|
|
/* 027F5C44 */ cpu->r[10] = rbrew_read8(cpu->mem, _t41);
|
|
/* 027F5C48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 027F5C4C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C4C */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F5C4C */ if (_t43) goto L_027F5C50; else goto L_027F5C68;
|
|
L_027F5C50: ; // 0x27f5c50
|
|
/* 027F5C50 */ _t44 = cpu->r[1] + 0x00000024u;
|
|
/* 027F5C50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F5C54 */ _t45 = cpu->r[1] + 0x00000018u;
|
|
/* 027F5C54 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F5C58 */ cpu->lr = cpu->r[0];
|
|
/* 027F5C5C */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5C5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F5C60 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F5C64 */ return;
|
|
L_027F5C68: ; // 0x27f5c68
|
|
/* 027F5C68 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 027F5C6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 027F5C70 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F5C74 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5C74 */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F5C74 */ if (_t48) goto L_027F5C78; else goto L_027F5C00;
|
|
L_027F5C78: ; // 0x27f5c78
|
|
/* 027F5C78 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 027F5C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F5C7C */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 027F5C7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027F5C80 */ cpu->lr = cpu->r[0];
|
|
/* 027F5C84 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F5C84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F5C88 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F5C8C */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 027F5C90 */ return;
|
|
}
|
|
|
|
// fn_027F5C94 @ 0x27f5c94
|
|
void Gambit_fn_027F5C94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F5C94: ; // 0x27f5c94
|
|
/* 027F5C94 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5C98 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5C98 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5C9C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5C9C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5C9C */ cpu->r[1] = _t1;
|
|
/* 027F5CA0 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5CA4 */ _t2 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F5CA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5CA8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F5CAC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F5CB0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5CB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5CB4 */ cpu->lr = cpu->r[0];
|
|
/* 027F5CB8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5CBC */ return;
|
|
}
|
|
|
|
// fn_027F5C9C @ 0x27f5c9c
|
|
void Gambit_fn_027F5C9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F5C9C: ; // 0x27f5c9c
|
|
/* 027F5C9C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5C9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5C9C */ cpu->r[1] = _t0;
|
|
/* 027F5CA0 */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5CA4 */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F5CA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5CA8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F5CAC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F5CB0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5CB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5CB4 */ cpu->lr = cpu->r[0];
|
|
/* 027F5CB8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5CBC */ return;
|
|
}
|
|
|
|
// fn_027F5CC0 @ 0x27f5cc0
|
|
void Gambit_fn_027F5CC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F5CC0: ; // 0x27f5cc0
|
|
/* 027F5CC0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5CC4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F5CC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5CC8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5CC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F5CC8 */ cpu->r[1] = _t1;
|
|
/* 027F5CCC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5CD0 */ _t2 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F5CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5CD4 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 027F5CD8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F5CDC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F5CE0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5CE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F5CE4 */ cpu->lr = cpu->r[0];
|
|
/* 027F5CE8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5CEC */ return;
|
|
}
|
|
|
|
// fn_027F5CC8 @ 0x27f5cc8
|
|
void Gambit_fn_027F5CC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F5CC8: ; // 0x27f5cc8
|
|
/* 027F5CC8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F5CC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5CC8 */ cpu->r[1] = _t0;
|
|
/* 027F5CCC */ Gambit_fn_027F5780(cpu);
|
|
/* 027F5CD0 */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F5CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5CD4 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 027F5CD8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F5CDC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F5CE0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F5CE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5CE4 */ cpu->lr = cpu->r[0];
|
|
/* 027F5CE8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F5CEC */ return;
|
|
}
|
|
|
|
// fn_027F5CF0 @ 0x27f5cf0
|
|
void Gambit_fn_027F5CF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137;
|
|
|
|
L_027F5CF0: ; // 0x27f5cf0
|
|
/* 027F5CF0 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 027F5CF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F5CF0 */ cpu->r[1] = _t0;
|
|
/* 027F5CF4 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 027F5CF4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 027F5CF8 */ /* nop */
|
|
/* 027F5CFC */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 027F5CFC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F5D00 */ /* nop */
|
|
/* 027F5D04 */ /* nop */
|
|
/* 027F5D08 */ cpu->r[0] = cpu->lr;
|
|
/* 027F5D0C */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 027F5D0C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 027F5D10 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 027F5D10 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 027F5D14 */ /* nop */
|
|
/* 027F5D18 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 027F5D18 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 027F5D1C */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 027F5D1C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 027F5D20 */ /* nop */
|
|
/* 027F5D24 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 027F5D24 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 027F5D28 */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 027F5D2C */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 027F5D2C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 027F5D30 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 027F5D34 */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F5D38 */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F5D38 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F5D3C */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 027F5D40 */ _t10 = cpu->r[7] + 0x000039C4u;
|
|
/* 027F5D40 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 027F5D40 */ cpu->r[7] = _t10;
|
|
/* 027F5D44 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F5D48 */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F5D4C */ _t11 = cpu->r[5] + 0x000039CCu;
|
|
/* 027F5D4C */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 027F5D4C */ cpu->r[5] = _t11;
|
|
/* 027F5D50 */ cpu->r[10] = cpu->r[10] + 0x000039DCu;
|
|
/* 027F5D54 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 027F5D54 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 027F5D58 */ cpu->r[9] = 0x101F0000u;
|
|
/* 027F5D5C */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 027F5D5C */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 027F5D60 */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 027F5D64 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 027F5D64 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 027F5D68 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F5D6C */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 027F5D6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F5D70 */ cpu->r[31] = 0x101F0000u;
|
|
/* 027F5D74 */ _t16 = cpu->r[12] + 0x000039D4u;
|
|
/* 027F5D74 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 027F5D74 */ cpu->r[12] = _t16;
|
|
/* 027F5D78 */ cpu->r[11] = 0x00000002u;
|
|
/* 027F5D7C */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 027F5D7C */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F5D80 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 027F5D80 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F5D84 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5D84 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 027F5D88 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027F5D88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F5D8C */ _t21 = cpu->r[31] + 0x000039F0u;
|
|
/* 027F5D8C */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 027F5D8C */ cpu->r[31] = _t21;
|
|
/* 027F5D90 */ cpu->r[0] = 0x00000004u;
|
|
/* 027F5D94 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 027F5D94 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 027F5D98 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F5D9C */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 027F5D9C */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F5DA0 */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 027F5DA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F5DA0 */ cpu->r[12] = _t24;
|
|
/* 027F5DA4 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 027F5DA4 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 027F5DA8 */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 027F5DA8 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 027F5DAC */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 027F5DAC */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 027F5DB0 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 027F5DB0 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 027F5DB4 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 027F5DB4 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 027F5DB8 */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 027F5DB8 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 027F5DBC */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F5DC0 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 027F5DC0 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 027F5DC4 */ cpu->r[6] = 0x101F0000u;
|
|
/* 027F5DC8 */ _t32 = cpu->r[7] + 0x000039ECu;
|
|
/* 027F5DC8 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 027F5DCC */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 027F5DCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F5DCC */ cpu->r[6] = _t33;
|
|
/* 027F5DD0 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 027F5DD0 */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 027F5DD4 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 027F5DD4 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 027F5DD8 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F5DDC */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F5DDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F5DE0 */ _t37 = cpu->r[5] + 0x000039E4u;
|
|
/* 027F5DE0 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 027F5DE0 */ cpu->r[5] = _t37;
|
|
/* 027F5DE4 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 027F5DE4 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 027F5DE8 */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 027F5DE8 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 027F5DEC */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 027F5DEC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 027F5DF0 */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 027F5DF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F5DF4 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 027F5DF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F5DF8 */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 027F5DF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F5DFC */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 027F5DFC */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 027F5E00 */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 027F5E00 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 027F5E04 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 027F5E04 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 027F5E08 */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F5E08 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 027F5E0C */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 027F5E0C */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 027F5E10 */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 027F5E10 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F5E14 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F5E14 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 027F5E18 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F5E1C */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 027F5E1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F5E20 */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 027F5E20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F5E20 */ cpu->r[11] = _t52;
|
|
/* 027F5E24 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 027F5E24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F5E28 */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F5E28 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F5E2C */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 027F5E2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F5E30 */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 027F5E30 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 027F5E34 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 027F5E34 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 027F5E38 */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 027F5E38 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 027F5E3C */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F5E40 */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F5E40 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 027F5E44 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F5E48 */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 027F5E48 */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 027F5E4C */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 027F5E50 */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 027F5E50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F5E50 */ cpu->r[12] = _t61;
|
|
/* 027F5E54 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 027F5E54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 027F5E58 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 027F5E58 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F5E5C */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 027F5E5C */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 027F5E60 */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 027F5E60 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 027F5E64 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 027F5E64 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 027F5E68 */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 027F5E68 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 027F5E6C */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 027F5E6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F5E70 */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F5E70 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F5E74 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 027F5E74 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 027F5E78 */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 027F5E78 */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 027F5E7C */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F5E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027F5E80 */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 027F5E80 */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 027F5E84 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 027F5E84 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 027F5E88 */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 027F5E88 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 027F5E8C */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 027F5E8C */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 027F5E90 */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 027F5E90 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 027F5E94 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 027F5E94 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 027F5E98 */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 027F5E98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F5E9C */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F5EA0 */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 027F5EA0 */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 027F5EA4 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 027F5EA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 027F5EA4 */ cpu->r[10] = _t81;
|
|
/* 027F5EA8 */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 027F5EA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F5EAC */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F5EAC */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 027F5EB0 */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F5EB0 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 027F5EB4 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F5EB4 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 027F5EB8 */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 027F5EB8 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 027F5EBC */ cpu->r[12] = 0x10110000u;
|
|
/* 027F5EC0 */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 027F5EC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 027F5EC4 */ _t88 = cpu->r[12] + 0x000006A4u;
|
|
/* 027F5EC4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 027F5EC8 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F5EC8 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 027F5ECC */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 027F5ECC */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 027F5ED0 */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 027F5ED0 */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 027F5ED4 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 027F5ED4 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 027F5ED8 */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 027F5ED8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 027F5EDC */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F5EDC */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 027F5EE0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F5EE4 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 027F5EE4 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 027F5EE8 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 027F5EEC */ _t96 = cpu->r[12] + 0x0000069Cu;
|
|
/* 027F5EEC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 027F5EF0 */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F5EF0 */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 027F5EF4 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F5EF8 */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F5EF8 */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 027F5EFC */ _t99 = cpu->r[12] + 0x00000698u;
|
|
/* 027F5EFC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 027F5F00 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F5F04 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 027F5F04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 027F5F08 */ _t101 = cpu->r[11] + 0x000006A0u;
|
|
/* 027F5F08 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 027F5F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 027F5F10 */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F5F10 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 027F5F14 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5F14 */ _t104 = _t103 & 0x00000001u;
|
|
/* 027F5F14 */ if (_t104) goto L_027F5F18; else goto L_027F5F28;
|
|
L_027F5F18: ; // 0x27f5f18
|
|
/* 027F5F18 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F5F1C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F5F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F5F24 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5F24 */ _t106 = _t105 & 0x00000001u;
|
|
/* 027F5F24 */ if (_t106) goto L_027F5F38; else goto L_027F5F28;
|
|
L_027F5F28: ; // 0x27f5f28
|
|
/* 027F5F28 */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5F28 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 027F5F2C */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 027F5F2C */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 027F5F30 */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 027F5F30 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 027F5F34 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F5F34 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_027F5F38: ; // 0x27f5f38
|
|
/* 027F5F38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 027F5F3C */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 027F5F40 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5F40 */ _t112 = _t111 & 0x00000001u;
|
|
/* 027F5F40 */ if (_t112) goto L_027F5F44; else goto L_027F5F54;
|
|
L_027F5F44: ; // 0x27f5f44
|
|
/* 027F5F44 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F5F48 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F5F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F5F50 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F5F50 */ _t114 = _t113 & 0x00000001u;
|
|
/* 027F5F50 */ if (_t114) goto L_027F5F64; else goto L_027F5F54;
|
|
L_027F5F54: ; // 0x27f5f54
|
|
/* 027F5F54 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5F54 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 027F5F58 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 027F5F58 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 027F5F5C */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 027F5F5C */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 027F5F60 */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F5F60 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_027F5F64: ; // 0x27f5f64
|
|
/* 027F5F64 */ cpu->r[8] = 0x101F0000u;
|
|
/* 027F5F68 */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 027F5F6C */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 027F5F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 027F5F70 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 027F5F70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 027F5F74 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 027F5F74 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 027F5F78 */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 027F5F78 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 027F5F7C */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027F5F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 027F5F80 */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 027F5F80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 027F5F84 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 027F5F84 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 027F5F88 */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 027F5F88 */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 027F5F8C */ /* nop */
|
|
/* 027F5F90 */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 027F5F90 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 027F5F94 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 027F5F94 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 027F5F98 */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 027F5F98 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 027F5F9C */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 027F5F9C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 027F5FA0 */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 027F5FA0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 027F5FA4 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 027F5FA4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 027F5FA8 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 027F5FA8 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 027F5FAC */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 027F5FAC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 027F5FB0 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F5FB0 */ _t136 = _t135 & 0x00000001u;
|
|
/* 027F5FB0 */ if (_t136) goto L_027F5FB4; // else: addr-0 trap, fall-through
|
|
L_027F5FB4: ; // 0x27f5fb4
|
|
/* 027F5FB4 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F5FB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 027F5FB8 */ cpu->lr = cpu->r[0];
|
|
/* 027F5FBC */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 027F5FC0 */ return;
|
|
}
|
|
|
|
// fn_027F5FC4 @ 0x27f5fc4
|
|
void Gambit_fn_027F5FC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027F5FC4: ; // 0x27f5fc4
|
|
/* 027F5FC4 */ cpu->r[0] = 0x00000005u;
|
|
/* 027F5FC8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F5FCC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027F5FCC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F5FD0 */ _t1 = cpu->r[12] + 0x000039DCu;
|
|
/* 027F5FD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F5FD0 */ cpu->r[12] = _t1;
|
|
/* 027F5FD4 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F5FD8 */ _t2 = cpu->r[12] + 0x00000004u;
|
|
/* 027F5FD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F5FDC */ _t3 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F5FDC */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[9]);
|
|
/* 027F5FE0 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 027F5FE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 027F5FE4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 027F5FE8 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 027F5FE8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F5FEC */ _t6 = cpu->r[3] + 0x00000010u;
|
|
/* 027F5FEC */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[11]);
|
|
/* 027F5FF0 */ _t7 = cpu->r[3] + 0x0000000Du;
|
|
/* 027F5FF0 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[9]);
|
|
/* 027F5FF4 */ _t8 = cpu->r[3] + 0x00000011u;
|
|
/* 027F5FF4 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[11]);
|
|
/* 027F5FF8 */ _t9 = cpu->r[3] + 0x00000020u;
|
|
/* 027F5FF8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[9]);
|
|
/* 027F5FFC */ _t10 = cpu->r[3] + 0x00000012u;
|
|
/* 027F5FFC */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[11]);
|
|
/* 027F6000 */ return;
|
|
}
|
|
|
|
// fn_027F6004 @ 0x27f6004
|
|
void Gambit_fn_027F6004(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027F6004: ; // 0x27f6004
|
|
/* 027F6004 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 027F6004 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F6008 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F600C */ _t1 = cpu->r[11] + 0x000039DCu;
|
|
/* 027F600C */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F600C */ cpu->r[11] = _t1;
|
|
/* 027F6010 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F6014 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[8]);
|
|
/* 027F6018 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 027F6018 */ cpu->r[9] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F601C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F601C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F601C */ if (_t4) goto L_027F6020; else goto L_027F602C;
|
|
L_027F6020: ; // 0x27f6020
|
|
/* 027F6020 */ _t5 = cpu->r[11] + 0x00000004u;
|
|
/* 027F6020 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F6024 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 027F6028 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6028 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F6028 */ if (_t7) goto L_027F6050; else goto L_027F602C;
|
|
L_027F602C: ; // 0x27f602c
|
|
/* 027F602C */ _t8 = cpu->r[3] + 0x00000010u;
|
|
/* 027F602C */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 027F6030 */ /* nop */
|
|
/* 027F6034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 027F6038 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6038 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F6038 */ if (_t10) goto L_027F6050; else goto L_027F603C;
|
|
L_027F603C: ; // 0x27f603c
|
|
/* 027F603C */ _t11 = cpu->r[3] + 0x00000011u;
|
|
/* 027F603C */ cpu->r[7] = rbrew_read8(cpu->mem, _t11);
|
|
/* 027F6040 */ /* nop */
|
|
/* 027F6044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0xFFFFFFFFu);
|
|
/* 027F6048 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6048 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F6048 */ if (_t13) goto L_027F6050; else goto L_027F604C;
|
|
L_027F604C: ; // 0x27f604c
|
|
/* 027F604C */ cpu->r[6] = 0x00000001u;
|
|
L_027F6050: ; // 0x27f6050
|
|
/* 027F6050 */ cpu->r[3] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6054 */ return;
|
|
}
|
|
|
|
// fn_027F6058 @ 0x27f6058
|
|
void Gambit_fn_027F6058(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_027F6058: ; // 0x27f6058
|
|
/* 027F6058 */ goto L_02A678BC;
|
|
L_02A678BC: ; // 0x2a678bc
|
|
/* 02A678BC */ cpu->r[0] = cpu->lr;
|
|
/* 02A678C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02A678C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02A678C0 */ cpu->r[1] = _t0;
|
|
/* 02A678C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02A678C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02A678C8 */ cpu->r[31] = 0x101D0000u;
|
|
/* 02A678CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02A678CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02A678D0 */ _t3 = cpu->r[31] + 0xFFFFB774u;
|
|
/* 02A678D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02A678D0 */ cpu->r[31] = _t3;
|
|
/* 02A678D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02A678D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02A678D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02A678D8 */ if (_t5) goto L_02A67928; else goto L_02A678DC;
|
|
L_02A678DC: ; // 0x2a678dc
|
|
/* 02A678DC */ Gambit_fn_02A6759C(cpu);
|
|
/* 02A678E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02A678E4 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 02A678E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02A678E8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02A678E8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02A678E8 */ if (_t8) goto L_02A67904; else goto L_02A678EC;
|
|
L_02A678EC: ; // 0x2a678ec
|
|
/* 02A678EC */ Gambit_fn_02BD4300(cpu);
|
|
/* 02A678F0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02A678F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02A678F4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02A678F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02A678F8 */ cpu->lr = cpu->r[0];
|
|
/* 02A678FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02A67900 */ return;
|
|
L_02A67904: ; // 0x2a67904
|
|
/* 02A67904 */ _t11 = cpu->r[3] + 0x000000C2u;
|
|
/* 02A67904 */ cpu->r[0] = rbrew_read8(cpu->mem, _t11);
|
|
/* 02A67908 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02A6790C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02A6790C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02A67910 */ cpu->r[12] = cpu->r[3] + cpu->r[0];
|
|
/* 02A67914 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02A67914 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02A67918 */ _t14 = cpu->r[12] + 0x000000D0u;
|
|
/* 02A67918 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02A6791C */ cpu->lr = cpu->r[0];
|
|
/* 02A67920 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02A67924 */ return;
|
|
L_02A67928: ; // 0x2a67928
|
|
/* 02A67928 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02A67928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02A6792C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02A6792C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02A67930 */ cpu->lr = cpu->r[0];
|
|
/* 02A67934 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02A67938 */ cpu->r[3] = 0x00000000u;
|
|
/* 02A6793C */ return;
|
|
}
|
|
|
|
// fn_027F605C @ 0x27f605c
|
|
void Gambit_fn_027F605C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F605C: ; // 0x27f605c
|
|
/* 027F605C */ goto L_02A67940;
|
|
L_02A67940: ; // 0x2a67940
|
|
/* 02A67940 */ cpu->r[0] = cpu->lr;
|
|
/* 02A67944 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02A67944 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02A67944 */ cpu->r[1] = _t0;
|
|
/* 02A67948 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02A67948 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02A6794C */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02A6794C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02A67950 */ cpu->r[30] = 0x101D0000u;
|
|
/* 02A67954 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 02A67954 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02A67958 */ _t4 = cpu->r[30] + 0xFFFFB774u;
|
|
/* 02A67958 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02A67958 */ cpu->r[30] = _t4;
|
|
/* 02A6795C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02A67960 */ cpu->r[31] = 0x00000000u;
|
|
/* 02A67964 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02A67964 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02A67964 */ if (_t6) goto L_02A679CC; else goto L_02A67968;
|
|
L_02A67968: ; // 0x2a67968
|
|
/* 02A67968 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02A6796C */ _t7 = cpu->r[12] + 0xFFFFB77Cu;
|
|
/* 02A6796C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02A67970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02A67974 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02A67974 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02A67974 */ if (_t9) goto L_02A679CC; else goto L_02A67978;
|
|
L_02A67978: ; // 0x2a67978
|
|
/* 02A67978 */ Gambit_fn_02A6759C(cpu);
|
|
/* 02A6797C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02A67980 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 02A67980 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02A67984 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02A67984 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02A67984 */ if (_t12) goto L_02A679E8; else goto L_02A67988;
|
|
L_02A67988: ; // 0x2a67988
|
|
/* 02A67988 */ cpu->r[3] = cpu->r[11];
|
|
/* 02A6798C */ Gambit_fn_02BD5A08(cpu);
|
|
/* 02A67990 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 02A67990 */ rbrew_write32(cpu->mem, _t13, cpu->r[3]);
|
|
/* 02A67994 */ _t14 = cpu->r[1] + 0x00000020u;
|
|
/* 02A67994 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02A67998 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02A67998 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02A6799C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02A679A0 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 02A679A0 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 02A679A4 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 02A679A4 */ rbrew_write32(cpu->mem, _t17, cpu->r[4]);
|
|
/* 02A679A8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02A679A8 */ rbrew_write32(cpu->mem, _t18, cpu->r[4]);
|
|
/* 02A679AC */ cpu->r[10] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02A679B0 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02A679B0 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[31]);
|
|
/* 02A679B4 */ cpu->r[4] = cpu->r[10];
|
|
/* 02A679B8 */ _t20 = cpu->r[1] + 0x00000015u;
|
|
/* 02A679B8 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[31]);
|
|
/* 02A679BC */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02A679BC */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 02A679C0 */ Gambit_fn_02A664AC(cpu);
|
|
/* 02A679C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02A679C8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02A679C8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02A679C8 */ if (_t23) goto L_02A679CC; else goto L_02A67A24;
|
|
L_02A679CC: ; // 0x2a679cc
|
|
/* 02A679CC */ _t24 = cpu->r[1] + 0x00000034u;
|
|
/* 02A679CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02A679D0 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 02A679D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02A679D4 */ cpu->lr = cpu->r[0];
|
|
/* 02A679D8 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02A679D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02A679DC */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02A679E0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02A679E4 */ return;
|
|
L_02A679E8: ; // 0x2a679e8
|
|
/* 02A679E8 */ _t27 = cpu->r[11] + 0x00000088u;
|
|
/* 02A679E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02A679EC */ _t28 = cpu->r[11] + 0x0000008Cu;
|
|
/* 02A679EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02A679F0 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02A679F0 */ rbrew_write32(cpu->mem, _t29, cpu->r[3]);
|
|
/* 02A679F4 */ _t30 = cpu->r[1] + 0x00000018u;
|
|
/* 02A679F4 */ rbrew_write32(cpu->mem, _t30, cpu->r[3]);
|
|
/* 02A679F8 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02A679F8 */ rbrew_write32(cpu->mem, _t31, cpu->r[4]);
|
|
/* 02A679FC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02A67A00 */ _t32 = cpu->r[1] + 0x00000015u;
|
|
/* 02A67A00 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[31]);
|
|
/* 02A67A04 */ cpu->r[10] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02A67A08 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02A67A08 */ rbrew_write32(cpu->mem, _t33, cpu->r[4]);
|
|
/* 02A67A0C */ cpu->r[4] = cpu->r[10];
|
|
/* 02A67A10 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 02A67A10 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[31]);
|
|
/* 02A67A14 */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 02A67A14 */ rbrew_write32(cpu->mem, _t35, cpu->r[31]);
|
|
/* 02A67A18 */ Gambit_fn_02A664AC(cpu);
|
|
/* 02A67A1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02A67A20 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02A67A20 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02A67A20 */ if (_t37) goto L_02A679CC; else goto L_02A67A24;
|
|
L_02A67A24: ; // 0x2a67a24
|
|
/* 02A67A24 */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 02A67A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02A67A28 */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 02A67A28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02A67A2C */ cpu->lr = cpu->r[0];
|
|
/* 02A67A30 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 02A67A30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02A67A34 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02A67A34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02A67A38 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02A67A3C */ return;
|
|
}
|
|
|
|
// fn_027F6060 @ 0x27f6060
|
|
void Gambit_fn_027F6060(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F6060: ; // 0x27f6060
|
|
/* 027F6060 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F6064 */ _t0 = cpu->r[12] + 0xFFFF8640u;
|
|
/* 027F6064 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F6068 */ _t1 = cpu->r[12] + 0x00000268u;
|
|
/* 027F6068 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F606C */ return;
|
|
}
|
|
|
|
// fn_027F6070 @ 0x27f6070
|
|
void Gambit_fn_027F6070(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F6070: ; // 0x27f6070
|
|
/* 027F6070 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 027F6070 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6070 */ cpu->r[1] = _t0;
|
|
/* 027F6074 */ /* nop */
|
|
/* 027F6078 */ cpu->r[0] = cpu->lr;
|
|
/* 027F607C */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F607C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F6080 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F6084 */ _t2 = cpu->r[12] + 0xFFFF8640u;
|
|
/* 027F6084 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F6088 */ _t3 = cpu->r[12] + 0x00000268u;
|
|
/* 027F6088 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F608C */ _t4 = cpu->r[9] + 0x0000000Cu;
|
|
/* 027F608C */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F6090 */ cpu->r[27] = 0x00000000u;
|
|
/* 027F6094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F6098 */ cpu->r[31] = cpu->r[27];
|
|
/* 027F609C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F609C */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F609C */ if (_t6) goto L_027F60A0; else goto L_027F632C;
|
|
L_027F60A0: ; // 0x27f60a0
|
|
/* 027F60A0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 027F60A4 */ _t7 = cpu->r[11] + 0xFFFFAEA8u;
|
|
/* 027F60A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F60A8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027F60AC */ _t8 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F60AC */ cpu->r[29] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F60B0 */ cpu->r[9] = 0x02A70000u;
|
|
/* 027F60B4 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F60B8 */ _t9 = cpu->r[1] + 0x0000000Au;
|
|
/* 027F60B8 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[0]);
|
|
/* 027F60BC */ cpu->r[9] = cpu->r[9] + 0xFFFF8CC4u;
|
|
/* 027F60C0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 027F60C0 */ rbrew_write16(cpu->mem, _t10, (uint16_t)cpu->r[31]);
|
|
/* 027F60C4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 027F60C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F60C8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F60C8 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 027F60CC */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 027F60CC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 027F60D0 */ cpu->r[24] = 0x10110000u;
|
|
/* 027F60D4 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F60D4 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 027F60D8 */ _t15 = cpu->r[11] + 0x00000048u;
|
|
/* 027F60D8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F60DC */ cpu->r[23] = 0x10110000u;
|
|
/* 027F60E0 */ cpu->r[24] = cpu->r[24] + 0x000006D0u;
|
|
/* 027F60E4 */ cpu->r[28] = cpu->r[26] + 0x00000118u;
|
|
/* 027F60E8 */ cpu->r[25] = cpu->r[29] + 0x00000001u;
|
|
/* 027F60EC */ cpu->r[3] = cpu->r[28];
|
|
/* 027F60F0 */ cpu->r[23] = cpu->r[23] + 0x000006B8u;
|
|
/* 027F60F4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 027F60F8 */ _t16 = cpu->r[26] + 0x000000ACu;
|
|
/* 027F60F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F60FC */ cpu->r[9] = cpu->r[10] + 0x00000001u;
|
|
/* 027F6100 */ cpu->r[12] = rbrew_rlwinm(cpu->r[9], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F6104 */ cpu->r[7] = cpu->r[12] + cpu->r[9];
|
|
/* 027F6108 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 027F610C */ _t17 = cpu->r[26] + 0x00000098u;
|
|
/* 027F610C */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F6110 */ cpu->r[6] = cpu->r[9] - cpu->r[8];
|
|
/* 027F6114 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[10]);
|
|
/* 027F6118 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6118 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F6118 */ if (_t19) goto L_027F611C; else goto L_027F6128;
|
|
L_027F611C: ; // 0x27f611c
|
|
/* 027F611C */ _t20 = cpu->r[26] + 0x000000A0u;
|
|
/* 027F611C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F6120 */ cpu->r[11] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F6124 */ _t21 = cpu->r[11] + cpu->r[12];
|
|
/* 027F6124 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
L_027F6128: ; // 0x27f6128
|
|
/* 027F6128 */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 027F6128 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F612C */ _t23 = cpu->r[31] + 0x00000000u;
|
|
/* 027F612C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F6130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[5]);
|
|
/* 027F6134 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6134 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F6134 */ if (_t25) goto L_027F6138; else goto L_027F62D0;
|
|
L_027F6138: ; // 0x27f6138
|
|
/* 027F6138 */ _t26 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F6138 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F613C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F6140 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6140 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F6140 */ if (_t28) goto L_027F614C; else goto L_027F6144;
|
|
L_027F6144: ; // 0x27f6144
|
|
/* 027F6144 */ _t29 = cpu->r[30] + 0x00000000u;
|
|
/* 027F6144 */ cpu->r[6] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F6148 */ _t30 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F6148 */ rbrew_write32(cpu->mem, _t30, cpu->r[6]);
|
|
L_027F614C: ; // 0x27f614c
|
|
/* 027F614C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F6150 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6150 */ _t32 = _t31 & 0x00000001u;
|
|
/* 027F6150 */ if (_t32) goto L_027F617C; else goto L_027F6154;
|
|
L_027F6154: ; // 0x27f6154
|
|
/* 027F6154 */ _t33 = cpu->r[30] + 0x00000000u;
|
|
/* 027F6154 */ rbrew_write32(cpu->mem, _t33, cpu->r[27]);
|
|
/* 027F6158 */ _t34 = cpu->r[30] + 0x00000004u;
|
|
/* 027F6158 */ rbrew_write32(cpu->mem, _t34, cpu->r[27]);
|
|
/* 027F615C */ _t35 = cpu->r[30] + 0x00000010u;
|
|
/* 027F615C */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[27]);
|
|
/* 027F6160 */ _t36 = cpu->r[30] + 0x00000008u;
|
|
/* 027F6160 */ rbrew_write32(cpu->mem, _t36, cpu->r[27]);
|
|
/* 027F6164 */ _t37 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F6164 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
/* 027F6168 */ _t38 = cpu->r[31] + 0x00000004u;
|
|
/* 027F6168 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027F616C */ _t39 = cpu->r[31] + 0x00000000u;
|
|
/* 027F616C */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F6170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[7]);
|
|
/* 027F6174 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6174 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027F6174 */ if (_t41) goto L_027F6178; else goto L_027F61A8;
|
|
L_027F6178: ; // 0x27f6178
|
|
/* 027F6178 */ goto L_027F6190;
|
|
L_027F617C: ; // 0x27f617c
|
|
/* 027F617C */ _t42 = cpu->r[31] + 0x00000000u;
|
|
/* 027F617C */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F6180 */ _t43 = cpu->r[31] + 0x00000004u;
|
|
/* 027F6180 */ cpu->r[7] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F6184 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[7]);
|
|
/* 027F6188 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F618C */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F618C */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F618C */ if (_t45) goto L_027F6190; else goto L_027F61A8;
|
|
L_027F6190: ; // 0x27f6190
|
|
/* 027F6190 */ _t46 = cpu->r[31] + 0x00000008u;
|
|
/* 027F6190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F6194 */ cpu->r[8] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F6198 */ _t47 = cpu->r[8] + cpu->r[0];
|
|
/* 027F6198 */ rbrew_write32(cpu->mem, _t47, cpu->r[30]);
|
|
/* 027F619C */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 027F619C */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 027F61A0 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 027F61A4 */ _t49 = cpu->r[31] + 0x00000000u;
|
|
/* 027F61A4 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
L_027F61A8: ; // 0x27f61a8
|
|
/* 027F61A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F61AC */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F61AC */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F61AC */ if (_t51) goto L_027F62D0; else goto L_027F61B0;
|
|
L_027F61B0: ; // 0x27f61b0
|
|
/* 027F61B0 */ _t52 = cpu->r[26] + 0x00000190u;
|
|
/* 027F61B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F61B4 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F61B8 */ cpu->r[5] = 0x00000004u;
|
|
/* 027F61BC */ Gambit_fn_02801AC8(cpu);
|
|
/* 027F61C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F61C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F61C4 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F61C4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 027F61C4 */ if (_t54) goto L_027F6224; else goto L_027F61C8;
|
|
L_027F61C8: ; // 0x27f61c8
|
|
/* 027F61C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F61C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F61CC */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F61CC */ _t56 = _t55 & 0x00000001u;
|
|
/* 027F61CC */ if (_t56) goto L_027F61D0; else goto L_027F61E0;
|
|
L_027F61D0: ; // 0x27f61d0
|
|
/* 027F61D0 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F61D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F61D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F61DC */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F61DC */ _t58 = _t57 & 0x00000001u;
|
|
/* 027F61DC */ if (_t58) goto L_027F62E0; else goto L_027F61E0;
|
|
L_027F61E0: ; // 0x27f61e0
|
|
/* 027F61E0 */ _t59 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F61E0 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 027F61E4 */ _t60 = cpu->r[3] + 0x00000000u;
|
|
/* 027F61E4 */ rbrew_write32(cpu->mem, _t60, cpu->r[23]);
|
|
/* 027F61E8 */ _t61 = cpu->r[3] + 0x00000008u;
|
|
/* 027F61E8 */ rbrew_write16(cpu->mem, _t61, (uint16_t)cpu->r[27]);
|
|
/* 027F61EC */ _t62 = cpu->r[3] + 0x0000000Au;
|
|
/* 027F61EC */ rbrew_write16(cpu->mem, _t62, (uint16_t)cpu->r[27]);
|
|
/* 027F61F0 */ _t63 = cpu->r[3] + 0x00000004u;
|
|
/* 027F61F0 */ rbrew_write32(cpu->mem, _t63, cpu->r[27]);
|
|
/* 027F61F4 */ _t64 = cpu->r[31] + 0x00000000u;
|
|
/* 027F61F4 */ rbrew_write32(cpu->mem, _t64, cpu->r[24]);
|
|
/* 027F61F8 */ _t65 = cpu->r[31] + 0x00000004u;
|
|
/* 027F61F8 */ rbrew_write32(cpu->mem, _t65, cpu->r[29]);
|
|
/* 027F61FC */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 027F61FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F6200 */ _t67 = cpu->r[31] + 0x00000008u;
|
|
/* 027F6200 */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 027F6204 */ _t68 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6204 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F6208 */ _t69 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F6208 */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 027F620C */ _t70 = cpu->r[30] + 0x00000004u;
|
|
/* 027F620C */ rbrew_write32(cpu->mem, _t70, cpu->r[31]);
|
|
/* 027F6210 */ _t71 = cpu->r[30] + 0x00000008u;
|
|
/* 027F6210 */ rbrew_write32(cpu->mem, _t71, cpu->r[27]);
|
|
/* 027F6214 */ _t72 = cpu->r[26] + 0x00000194u;
|
|
/* 027F6214 */ cpu->r[12] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027F6218 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00002710u);
|
|
/* 027F621C */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F621C */ _t74 = _t73 & 0x00000001u;
|
|
/* 027F621C */ if (_t74) goto L_027F6310; else goto L_027F6220;
|
|
L_027F6220: ; // 0x27f6220
|
|
/* 027F6220 */ goto L_027F630C;
|
|
L_027F6224: ; // 0x27f6224
|
|
/* 027F6224 */ _t75 = cpu->r[26] + 0x000000ACu;
|
|
/* 027F6224 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 027F6228 */ cpu->r[10] = cpu->r[12] + 0x00000001u;
|
|
/* 027F622C */ cpu->r[5] = rbrew_rlwinm(cpu->r[10], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F6230 */ cpu->r[6] = cpu->r[5] + cpu->r[10];
|
|
/* 027F6234 */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 027F6238 */ _t76 = cpu->r[26] + 0x00000098u;
|
|
/* 027F6238 */ cpu->r[11] = rbrew_read32(cpu->mem, _t76);
|
|
/* 027F623C */ cpu->r[9] = cpu->r[10] - cpu->r[7];
|
|
/* 027F6240 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[11]);
|
|
/* 027F6244 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F6248 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6248 */ _t78 = _t77 & 0x00000001u;
|
|
/* 027F6248 */ if (_t78) goto L_027F624C; else goto L_027F6258;
|
|
L_027F624C: ; // 0x27f624c
|
|
/* 027F624C */ _t79 = cpu->r[26] + 0x000000A0u;
|
|
/* 027F624C */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F6250 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F6254 */ _t80 = cpu->r[8] + cpu->r[0];
|
|
/* 027F6254 */ cpu->r[3] = rbrew_read32(cpu->mem, _t80);
|
|
L_027F6258: ; // 0x27f6258
|
|
/* 027F6258 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F625C */ cpu->r[5] = cpu->r[12] + cpu->r[10];
|
|
/* 027F6260 */ cpu->r[7] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 027F6264 */ cpu->r[6] = cpu->r[10] - cpu->r[7];
|
|
/* 027F6268 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[11]);
|
|
/* 027F626C */ cpu->r[9] = 0x00000000u;
|
|
/* 027F6270 */ _t81 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6270 */ _t82 = _t81 & 0x00000001u;
|
|
/* 027F6270 */ if (_t82) goto L_027F6274; else goto L_027F6280;
|
|
L_027F6274: ; // 0x27f6274
|
|
/* 027F6274 */ _t83 = cpu->r[26] + 0x000000A0u;
|
|
/* 027F6274 */ cpu->r[9] = rbrew_read32(cpu->mem, _t83);
|
|
/* 027F6278 */ cpu->r[8] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F627C */ _t84 = cpu->r[8] + cpu->r[9];
|
|
/* 027F627C */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
L_027F6280: ; // 0x27f6280
|
|
/* 027F6280 */ _t85 = cpu->r[9] + 0x00000000u;
|
|
/* 027F6280 */ cpu->r[11] = rbrew_read32(cpu->mem, _t85);
|
|
/* 027F6284 */ _t86 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 027F6288 */ cpu->r[4] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 027F628C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 027F6290 */ _t87 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F6290 */ _t88 = _t87 & 0x00000001u;
|
|
/* 027F6290 */ if (_t88) goto L_027F62C8; else goto L_027F6294;
|
|
L_027F6294: ; // 0x27f6294
|
|
/* 027F6294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[11]);
|
|
/* 027F6298 */ cpu->r[0] = cpu->r[11] - cpu->r[4];
|
|
/* 027F629C */ _t89 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F629C */ _t90 = _t89 & 0x00000001u;
|
|
/* 027F629C */ if (_t90) goto L_027F62A0; else goto L_027F62C8;
|
|
L_027F62A0: ; // 0x27f62a0
|
|
/* 027F62A0 */ cpu->ctr = cpu->r[0];
|
|
/* 027F62A4 */ _t91 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F62A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 027F62A8 */ cpu->r[8] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
L_027F62AC: ; // 0x27f62ac
|
|
/* 027F62AC */ _t92 = cpu->r[3] + 0x00000008u;
|
|
/* 027F62AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t92);
|
|
/* 027F62B0 */ _t93 = cpu->r[11] + cpu->r[8];
|
|
/* 027F62B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t93);
|
|
/* 027F62B4 */ _t94 = cpu->r[6] + 0x00000000u;
|
|
/* 027F62B4 */ rbrew_write32(cpu->mem, _t94, cpu->r[10]);
|
|
/* 027F62B8 */ cpu->r[10] = cpu->r[6];
|
|
/* 027F62BC */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 027F62C0 */ _t95 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F62C0 */ rbrew_write32(cpu->mem, _t95, cpu->r[10]);
|
|
/* 027F62C4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F62C4 */ _t96 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F62C4 */ _t97 = _t96 >> (0x00000002u & 31u);
|
|
/* 027F62C4 */ _t98 = _t97 & 0x00000001u;
|
|
/* 027F62C4 */ if (_t98) goto L_027F62AC; else goto L_027F62C8;
|
|
L_027F62C8: ; // 0x27f62c8
|
|
/* 027F62C8 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F62CC */ Gambit_fn_0280246C(cpu);
|
|
L_027F62D0: ; // 0x27f62d0
|
|
/* 027F62D0 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F62D4 */ Gambit_fn_02837030(cpu);
|
|
/* 027F62D8 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F62DC */ goto L_027F632C;
|
|
L_027F62E0: ; // 0x27f62e0
|
|
/* 027F62E0 */ _t99 = cpu->r[31] + 0x00000004u;
|
|
/* 027F62E0 */ rbrew_write32(cpu->mem, _t99, cpu->r[29]);
|
|
/* 027F62E4 */ _t100 = cpu->r[31] + 0x00000000u;
|
|
/* 027F62E4 */ rbrew_write32(cpu->mem, _t100, cpu->r[24]);
|
|
/* 027F62E8 */ _t101 = cpu->r[1] + 0x00000018u;
|
|
/* 027F62E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 027F62EC */ _t102 = cpu->r[31] + 0x00000008u;
|
|
/* 027F62EC */ rbrew_write32(cpu->mem, _t102, cpu->r[0]);
|
|
/* 027F62F0 */ _t103 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F62F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t103);
|
|
/* 027F62F4 */ _t104 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F62F4 */ rbrew_write32(cpu->mem, _t104, cpu->r[0]);
|
|
/* 027F62F8 */ _t105 = cpu->r[30] + 0x00000004u;
|
|
/* 027F62F8 */ rbrew_write32(cpu->mem, _t105, cpu->r[31]);
|
|
/* 027F62FC */ _t106 = cpu->r[30] + 0x00000008u;
|
|
/* 027F62FC */ rbrew_write32(cpu->mem, _t106, cpu->r[27]);
|
|
/* 027F6300 */ _t107 = cpu->r[26] + 0x00000194u;
|
|
/* 027F6300 */ cpu->r[12] = rbrew_read32(cpu->mem, _t107);
|
|
/* 027F6304 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00002710u);
|
|
/* 027F6308 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6308 */ _t109 = _t108 & 0x00000001u;
|
|
/* 027F6308 */ if (_t109) goto L_027F6310; else goto L_027F630C;
|
|
L_027F630C: ; // 0x27f630c
|
|
/* 027F630C */ cpu->r[12] = 0x00000000u;
|
|
L_027F6310: ; // 0x27f6310
|
|
/* 027F6310 */ cpu->r[31] = cpu->r[12] + 0x00000001u;
|
|
/* 027F6314 */ _t110 = cpu->r[26] + 0x00000194u;
|
|
/* 027F6314 */ rbrew_write32(cpu->mem, _t110, cpu->r[31]);
|
|
/* 027F6318 */ _t111 = cpu->r[30] + 0x00000000u;
|
|
/* 027F6318 */ rbrew_write32(cpu->mem, _t111, cpu->r[31]);
|
|
/* 027F631C */ _t112 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F631C */ rbrew_write32(cpu->mem, _t112, cpu->r[25]);
|
|
/* 027F6320 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F6324 */ _t113 = cpu->r[30] + 0x00000010u;
|
|
/* 027F6324 */ rbrew_write8(cpu->mem, _t113, (uint8_t)cpu->r[27]);
|
|
/* 027F6328 */ Gambit_fn_02837030(cpu);
|
|
L_027F632C: ; // 0x27f632c
|
|
/* 027F632C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6330 */ /* nop */
|
|
/* 027F6334 */ _t114 = cpu->r[1] + 0x0000004Cu;
|
|
/* 027F6334 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 027F6338 */ cpu->lr = cpu->r[0];
|
|
/* 027F633C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 027F6340 */ return;
|
|
}
|
|
|
|
// fn_027F6344 @ 0x27f6344
|
|
void Gambit_fn_027F6344(CPUState* cpu) {
|
|
uint32_t _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_027F6344: ; // 0x27f6344
|
|
/* 027F6344 */ cpu->r[0] = cpu->lr;
|
|
/* 027F6348 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F6348 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6348 */ cpu->r[1] = _t0;
|
|
/* 027F634C */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 027F634C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F6350 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6350 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F6354 */ cpu->r[30] = 0x101D0000u;
|
|
/* 027F6358 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6358 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F635C */ _t4 = cpu->r[30] + 0xFFFFAEA8u;
|
|
/* 027F635C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F635C */ cpu->r[30] = _t4;
|
|
/* 027F6360 */ _t5 = cpu->r[11] + 0x00000018u;
|
|
/* 027F6360 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F6364 */ _t6 = cpu->r[31] + 0x00000070u;
|
|
/* 027F6364 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F6368 */ _t7 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F6368 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F636C */ cpu->ctr = cpu->r[8];
|
|
/* 027F6370 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6374 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F6378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F637C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F637C */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F637C */ if (_t9) goto L_027F6380; else goto L_027F63E4;
|
|
L_027F6380: ; // 0x27f6380
|
|
/* 027F6380 */ _t10 = cpu->r[31] + 0x00000070u;
|
|
/* 027F6380 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F6384 */ _t11 = cpu->r[9] + 0x00000024u;
|
|
/* 027F6384 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F6388 */ cpu->ctr = cpu->r[10];
|
|
/* 027F638C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6390 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F6394 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6398 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6398 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F6398 */ if (_t13) goto L_027F639C; else goto L_027F63E4;
|
|
L_027F639C: ; // 0x27f639c
|
|
/* 027F639C */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 027F639C */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F63A0 */ _t15 = cpu->r[11] + 0x00000014u;
|
|
/* 027F63A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F63A4 */ _t16 = cpu->r[3] + 0x00000080u;
|
|
/* 027F63A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F63A8 */ _t17 = cpu->r[12] + 0x000001ACu;
|
|
/* 027F63A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F63AC */ cpu->ctr = cpu->r[0];
|
|
/* 027F63B0 */ cpu->r[4] = 0x00000001u;
|
|
/* 027F63B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F63B8 */ cpu->r[8] = 0x00000000u;
|
|
/* 027F63BC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F63C0 */ cpu->r[9] = 0x00000008u;
|
|
/* 027F63C4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 027F63C4 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 027F63C8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F63CC */ cpu->r[0] = 0x0000000Fu;
|
|
/* 027F63D0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F63D0 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 027F63D4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F63D8 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 027F63DC */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 027F63DC */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 027F63E0 */ Gambit_fn_02A6C0EC(cpu);
|
|
L_027F63E4: ; // 0x27f63e4
|
|
/* 027F63E4 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 027F63E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F63E8 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 027F63E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F63EC */ cpu->lr = cpu->r[0];
|
|
/* 027F63F0 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F63F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F63F4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F63F8 */ return;
|
|
}
|
|
|
|
// fn_027F6348 @ 0x27f6348
|
|
void Gambit_fn_027F6348(CPUState* cpu) {
|
|
uint32_t _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_027F6348: ; // 0x27f6348
|
|
/* 027F6348 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F6348 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6348 */ cpu->r[1] = _t0;
|
|
/* 027F634C */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 027F634C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F6350 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6350 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F6354 */ cpu->r[30] = 0x101D0000u;
|
|
/* 027F6358 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6358 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F635C */ _t4 = cpu->r[30] + 0xFFFFAEA8u;
|
|
/* 027F635C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F635C */ cpu->r[30] = _t4;
|
|
/* 027F6360 */ _t5 = cpu->r[11] + 0x00000018u;
|
|
/* 027F6360 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F6364 */ _t6 = cpu->r[31] + 0x00000070u;
|
|
/* 027F6364 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F6368 */ _t7 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F6368 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F636C */ cpu->ctr = cpu->r[8];
|
|
/* 027F6370 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6374 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F6378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F637C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F637C */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F637C */ if (_t9) goto L_027F6380; else goto L_027F63E4;
|
|
L_027F6380: ; // 0x27f6380
|
|
/* 027F6380 */ _t10 = cpu->r[31] + 0x00000070u;
|
|
/* 027F6380 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F6384 */ _t11 = cpu->r[9] + 0x00000024u;
|
|
/* 027F6384 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F6388 */ cpu->ctr = cpu->r[10];
|
|
/* 027F638C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6390 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F6394 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6398 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6398 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F6398 */ if (_t13) goto L_027F639C; else goto L_027F63E4;
|
|
L_027F639C: ; // 0x27f639c
|
|
/* 027F639C */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 027F639C */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F63A0 */ _t15 = cpu->r[11] + 0x00000014u;
|
|
/* 027F63A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F63A4 */ _t16 = cpu->r[3] + 0x00000080u;
|
|
/* 027F63A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F63A8 */ _t17 = cpu->r[12] + 0x000001ACu;
|
|
/* 027F63A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F63AC */ cpu->ctr = cpu->r[0];
|
|
/* 027F63B0 */ cpu->r[4] = 0x00000001u;
|
|
/* 027F63B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F63B8 */ cpu->r[8] = 0x00000000u;
|
|
/* 027F63BC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F63C0 */ cpu->r[9] = 0x00000008u;
|
|
/* 027F63C4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 027F63C4 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 027F63C8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F63CC */ cpu->r[0] = 0x0000000Fu;
|
|
/* 027F63D0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F63D0 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 027F63D4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F63D8 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 027F63DC */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 027F63DC */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 027F63E0 */ Gambit_fn_02A6C0EC(cpu);
|
|
L_027F63E4: ; // 0x27f63e4
|
|
/* 027F63E4 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 027F63E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F63E8 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 027F63E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F63EC */ cpu->lr = cpu->r[0];
|
|
/* 027F63F0 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F63F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F63F4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F63F8 */ return;
|
|
}
|
|
|
|
// fn_027F63FC @ 0x27f63fc
|
|
void Gambit_fn_027F63FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F63FC: ; // 0x27f63fc
|
|
/* 027F63FC */ cpu->r[0] = cpu->lr;
|
|
/* 027F6400 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F6400 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F6404 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F6404 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F6404 */ cpu->r[1] = _t1;
|
|
/* 027F6408 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6408 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F640C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 027F640C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F6410 */ Gambit_fn_027F6060(cpu);
|
|
/* 027F6414 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6418 */ Gambit_fn_026FAED0(cpu);
|
|
/* 027F641C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F641C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F6420 */ cpu->lr = cpu->r[0];
|
|
/* 027F6424 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6428 */ return;
|
|
}
|
|
|
|
// fn_027F6404 @ 0x27f6404
|
|
void Gambit_fn_027F6404(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F6404: ; // 0x27f6404
|
|
/* 027F6404 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F6404 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6404 */ cpu->r[1] = _t0;
|
|
/* 027F6408 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6408 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F640C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F640C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F6410 */ Gambit_fn_027F6060(cpu);
|
|
/* 027F6414 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6418 */ Gambit_fn_026FAED0(cpu);
|
|
/* 027F641C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F641C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F6420 */ cpu->lr = cpu->r[0];
|
|
/* 027F6424 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6428 */ return;
|
|
}
|
|
|
|
// fn_027F642C @ 0x27f642c
|
|
void Gambit_fn_027F642C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137;
|
|
|
|
L_027F642C: ; // 0x27f642c
|
|
/* 027F642C */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 027F642C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F642C */ cpu->r[1] = _t0;
|
|
/* 027F6430 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 027F6430 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 027F6434 */ /* nop */
|
|
/* 027F6438 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 027F6438 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F643C */ /* nop */
|
|
/* 027F6440 */ /* nop */
|
|
/* 027F6444 */ cpu->r[0] = cpu->lr;
|
|
/* 027F6448 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 027F6448 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 027F644C */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 027F644C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 027F6450 */ /* nop */
|
|
/* 027F6454 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 027F6454 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 027F6458 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 027F6458 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 027F645C */ /* nop */
|
|
/* 027F6460 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 027F6460 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 027F6464 */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 027F6468 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 027F6468 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 027F646C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 027F6470 */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F6474 */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F6474 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F6478 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 027F647C */ _t10 = cpu->r[7] + 0x00003AE0u;
|
|
/* 027F647C */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 027F647C */ cpu->r[7] = _t10;
|
|
/* 027F6480 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F6484 */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F6488 */ _t11 = cpu->r[5] + 0x00003AE8u;
|
|
/* 027F6488 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 027F6488 */ cpu->r[5] = _t11;
|
|
/* 027F648C */ cpu->r[10] = cpu->r[10] + 0x00003AF8u;
|
|
/* 027F6490 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 027F6490 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 027F6494 */ cpu->r[9] = 0x101F0000u;
|
|
/* 027F6498 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 027F6498 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 027F649C */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 027F64A0 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 027F64A0 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 027F64A4 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F64A8 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 027F64A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F64AC */ cpu->r[31] = 0x101F0000u;
|
|
/* 027F64B0 */ _t16 = cpu->r[12] + 0x00003AF0u;
|
|
/* 027F64B0 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 027F64B0 */ cpu->r[12] = _t16;
|
|
/* 027F64B4 */ cpu->r[11] = 0x00000002u;
|
|
/* 027F64B8 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 027F64B8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F64BC */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 027F64BC */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F64C0 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F64C0 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 027F64C4 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027F64C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F64C8 */ _t21 = cpu->r[31] + 0x00003B0Cu;
|
|
/* 027F64C8 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 027F64C8 */ cpu->r[31] = _t21;
|
|
/* 027F64CC */ cpu->r[0] = 0x00000004u;
|
|
/* 027F64D0 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 027F64D0 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 027F64D4 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F64D8 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 027F64D8 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F64DC */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 027F64DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F64DC */ cpu->r[12] = _t24;
|
|
/* 027F64E0 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 027F64E0 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 027F64E4 */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 027F64E4 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 027F64E8 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 027F64E8 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 027F64EC */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 027F64EC */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 027F64F0 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 027F64F0 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 027F64F4 */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 027F64F4 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 027F64F8 */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F64FC */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 027F64FC */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 027F6500 */ cpu->r[6] = 0x101F0000u;
|
|
/* 027F6504 */ _t32 = cpu->r[7] + 0x00003B08u;
|
|
/* 027F6504 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 027F6508 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 027F6508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F6508 */ cpu->r[6] = _t33;
|
|
/* 027F650C */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 027F650C */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 027F6510 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 027F6510 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 027F6514 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F6518 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F6518 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F651C */ _t37 = cpu->r[5] + 0x00003B00u;
|
|
/* 027F651C */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 027F651C */ cpu->r[5] = _t37;
|
|
/* 027F6520 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 027F6520 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 027F6524 */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 027F6524 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 027F6528 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 027F6528 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 027F652C */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 027F652C */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F6530 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 027F6530 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F6534 */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 027F6534 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F6538 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 027F6538 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 027F653C */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 027F653C */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 027F6540 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 027F6540 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 027F6544 */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F6544 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 027F6548 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 027F6548 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 027F654C */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 027F654C */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F6550 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F6550 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 027F6554 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F6558 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 027F6558 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F655C */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 027F655C */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F655C */ cpu->r[11] = _t52;
|
|
/* 027F6560 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 027F6560 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F6564 */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F6564 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F6568 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 027F6568 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F656C */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 027F656C */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 027F6570 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 027F6570 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 027F6574 */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 027F6574 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 027F6578 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F657C */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F657C */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 027F6580 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F6584 */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 027F6584 */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 027F6588 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 027F658C */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 027F658C */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F658C */ cpu->r[12] = _t61;
|
|
/* 027F6590 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 027F6590 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 027F6594 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 027F6594 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F6598 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 027F6598 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 027F659C */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 027F659C */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 027F65A0 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 027F65A0 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 027F65A4 */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 027F65A4 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 027F65A8 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 027F65A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F65AC */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F65AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F65B0 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 027F65B0 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 027F65B4 */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 027F65B4 */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 027F65B8 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F65B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027F65BC */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 027F65BC */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 027F65C0 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 027F65C0 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 027F65C4 */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 027F65C4 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 027F65C8 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 027F65C8 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 027F65CC */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 027F65CC */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 027F65D0 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 027F65D0 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 027F65D4 */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 027F65D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F65D8 */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F65DC */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 027F65DC */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 027F65E0 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 027F65E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 027F65E0 */ cpu->r[10] = _t81;
|
|
/* 027F65E4 */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 027F65E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F65E8 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F65E8 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 027F65EC */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F65EC */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 027F65F0 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F65F0 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 027F65F4 */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 027F65F4 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 027F65F8 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F65FC */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 027F65FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 027F6600 */ _t88 = cpu->r[12] + 0x0000071Cu;
|
|
/* 027F6600 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 027F6604 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F6604 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 027F6608 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 027F6608 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 027F660C */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 027F660C */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 027F6610 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 027F6610 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 027F6614 */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 027F6614 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 027F6618 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F6618 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 027F661C */ cpu->r[12] = 0x10110000u;
|
|
/* 027F6620 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 027F6620 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 027F6624 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 027F6628 */ _t96 = cpu->r[12] + 0x00000714u;
|
|
/* 027F6628 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 027F662C */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F662C */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 027F6630 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F6634 */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F6634 */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 027F6638 */ _t99 = cpu->r[12] + 0x00000710u;
|
|
/* 027F6638 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 027F663C */ cpu->r[11] = 0x10110000u;
|
|
/* 027F6640 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 027F6640 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 027F6644 */ _t101 = cpu->r[11] + 0x00000718u;
|
|
/* 027F6644 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 027F6648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 027F664C */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F664C */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 027F6650 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6650 */ _t104 = _t103 & 0x00000001u;
|
|
/* 027F6650 */ if (_t104) goto L_027F6654; else goto L_027F6664;
|
|
L_027F6654: ; // 0x27f6654
|
|
/* 027F6654 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F6658 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F665C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6660 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6660 */ _t106 = _t105 & 0x00000001u;
|
|
/* 027F6660 */ if (_t106) goto L_027F6674; else goto L_027F6664;
|
|
L_027F6664: ; // 0x27f6664
|
|
/* 027F6664 */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 027F6664 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 027F6668 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 027F6668 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 027F666C */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 027F666C */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 027F6670 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F6670 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_027F6674: ; // 0x27f6674
|
|
/* 027F6674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 027F6678 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 027F667C */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F667C */ _t112 = _t111 & 0x00000001u;
|
|
/* 027F667C */ if (_t112) goto L_027F6680; else goto L_027F6690;
|
|
L_027F6680: ; // 0x27f6680
|
|
/* 027F6680 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F6684 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F6688 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F668C */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F668C */ _t114 = _t113 & 0x00000001u;
|
|
/* 027F668C */ if (_t114) goto L_027F66A0; else goto L_027F6690;
|
|
L_027F6690: ; // 0x27f6690
|
|
/* 027F6690 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 027F6690 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 027F6694 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 027F6694 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 027F6698 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6698 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 027F669C */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F669C */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_027F66A0: ; // 0x27f66a0
|
|
/* 027F66A0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 027F66A4 */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 027F66A8 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 027F66A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 027F66AC */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 027F66AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 027F66B0 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 027F66B0 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 027F66B4 */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 027F66B4 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 027F66B8 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027F66B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 027F66BC */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 027F66BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 027F66C0 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 027F66C0 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 027F66C4 */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 027F66C4 */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 027F66C8 */ /* nop */
|
|
/* 027F66CC */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 027F66CC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 027F66D0 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 027F66D0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 027F66D4 */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 027F66D4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 027F66D8 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 027F66D8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 027F66DC */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 027F66DC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 027F66E0 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 027F66E0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 027F66E4 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 027F66E4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 027F66E8 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 027F66E8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 027F66EC */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F66EC */ _t136 = _t135 & 0x00000001u;
|
|
/* 027F66EC */ if (_t136) goto L_027F66F0; // else: addr-0 trap, fall-through
|
|
L_027F66F0: ; // 0x27f66f0
|
|
/* 027F66F0 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F66F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 027F66F4 */ cpu->lr = cpu->r[0];
|
|
/* 027F66F8 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 027F66FC */ return;
|
|
}
|
|
|
|
// fn_027F6700 @ 0x27f6700
|
|
void Gambit_fn_027F6700(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_027F6700: ; // 0x27f6700
|
|
/* 027F6700 */ cpu->r[0] = cpu->lr;
|
|
/* 027F6704 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F6704 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F6708 */ cpu->r[12] = cpu->r[3];
|
|
/* 027F670C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F670C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F670C */ cpu->r[1] = _t1;
|
|
/* 027F6710 */ _t2 = cpu->r[12] + 0x00000004u;
|
|
/* 027F6710 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F6714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F6718 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6718 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F6718 */ if (_t4) goto L_027F6780; else goto L_027F671C;
|
|
L_027F671C: ; // 0x27f671c
|
|
/* 027F671C */ _t5 = cpu->r[12] + 0x0000000Au;
|
|
/* 027F671C */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 027F6720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F6724 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6724 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F6724 */ if (_t7) goto L_027F6780; else goto L_027F6728;
|
|
L_027F6728: ; // 0x27f6728
|
|
/* 027F6728 */ _t8 = cpu->r[12] + 0x00000008u;
|
|
/* 027F6728 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 027F672C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F6730 */ cpu->r[3] = cpu->r[11] + cpu->r[7];
|
|
/* 027F6734 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6734 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F6734 */ if (_t10) goto L_027F6738; else goto L_027F6754;
|
|
L_027F6738: ; // 0x27f6738
|
|
/* 027F6738 */ _t11 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F6738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F673C */ cpu->ctr = cpu->r[0];
|
|
/* 027F6740 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F6744 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6744 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 027F6748 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6748 */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 027F674C */ _t14 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F674C */ _t15 = cpu->r[6] & 0xFFFFFF00u;
|
|
/* 027F674C */ cpu->r[6] = _t15 | _t14;
|
|
/* 027F6750 */ goto L_027F678C;
|
|
L_027F6754: ; // 0x27f6754
|
|
/* 027F6754 */ _t16 = cpu->r[12] + 0x0000000Eu;
|
|
/* 027F6754 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t16);
|
|
/* 027F6758 */ _t17 = cpu->r[3] + cpu->r[8];
|
|
/* 027F6758 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F675C */ cpu->r[9] = rbrew_rlwinm(cpu->r[6], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027F6760 */ cpu->r[12] = cpu->r[10] + cpu->r[9];
|
|
/* 027F6764 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 027F6764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F6768 */ cpu->ctr = cpu->r[0];
|
|
/* 027F676C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F6770 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6770 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 027F6774 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6774 */ cpu->r[0] = rbrew_read8(cpu->mem, _t20);
|
|
/* 027F6778 */ _t21 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6778 */ _t22 = cpu->r[6] & 0xFFFFFF00u;
|
|
/* 027F6778 */ cpu->r[6] = _t22 | _t21;
|
|
/* 027F677C */ goto L_027F678C;
|
|
L_027F6780: ; // 0x27f6780
|
|
/* 027F6780 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F6784 */ _t23 = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6784 */ _t24 = cpu->r[0] & 0xFFFFFF00u;
|
|
/* 027F6784 */ cpu->r[0] = _t24 | _t23;
|
|
/* 027F6788 */ _t25 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6788 */ _t26 = cpu->r[6] & 0xFFFFFF00u;
|
|
/* 027F6788 */ cpu->r[6] = _t26 | _t25;
|
|
L_027F678C: ; // 0x27f678c
|
|
/* 027F678C */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 027F678C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F6790 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6790 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[6]);
|
|
/* 027F6794 */ cpu->lr = cpu->r[0];
|
|
/* 027F6798 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6798 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F679C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F67A0 */ return;
|
|
}
|
|
|
|
// fn_027F670C @ 0x27f670c
|
|
void Gambit_fn_027F670C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _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_027F670C: ; // 0x27f670c
|
|
/* 027F670C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F670C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F670C */ cpu->r[1] = _t0;
|
|
/* 027F6710 */ _t1 = cpu->r[12] + 0x00000004u;
|
|
/* 027F6710 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F6714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F6718 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6718 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F6718 */ if (_t3) goto L_027F6780; else goto L_027F671C;
|
|
L_027F671C: ; // 0x27f671c
|
|
/* 027F671C */ _t4 = cpu->r[12] + 0x0000000Au;
|
|
/* 027F671C */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t4);
|
|
/* 027F6720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F6724 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6724 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F6724 */ if (_t6) goto L_027F6780; else goto L_027F6728;
|
|
L_027F6728: ; // 0x27f6728
|
|
/* 027F6728 */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 027F6728 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t7);
|
|
/* 027F672C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F6730 */ cpu->r[3] = cpu->r[11] + cpu->r[7];
|
|
/* 027F6734 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6734 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F6734 */ if (_t9) goto L_027F6738; else goto L_027F6754;
|
|
L_027F6738: ; // 0x27f6738
|
|
/* 027F6738 */ _t10 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F6738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F673C */ cpu->ctr = cpu->r[0];
|
|
/* 027F6740 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F6744 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6744 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 027F6748 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6748 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027F674C */ _t13 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F674C */ _t14 = cpu->r[6] & 0xFFFFFF00u;
|
|
/* 027F674C */ cpu->r[6] = _t14 | _t13;
|
|
/* 027F6750 */ goto L_027F678C;
|
|
L_027F6754: ; // 0x27f6754
|
|
/* 027F6754 */ _t15 = cpu->r[12] + 0x0000000Eu;
|
|
/* 027F6754 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 027F6758 */ _t16 = cpu->r[3] + cpu->r[8];
|
|
/* 027F6758 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F675C */ cpu->r[9] = rbrew_rlwinm(cpu->r[6], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 027F6760 */ cpu->r[12] = cpu->r[10] + cpu->r[9];
|
|
/* 027F6764 */ _t17 = cpu->r[12] + 0x00000004u;
|
|
/* 027F6764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F6768 */ cpu->ctr = cpu->r[0];
|
|
/* 027F676C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F6770 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6770 */ rbrew_write32(cpu->mem, _t18, cpu->r[3]);
|
|
/* 027F6774 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6774 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 027F6778 */ _t20 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6778 */ _t21 = cpu->r[6] & 0xFFFFFF00u;
|
|
/* 027F6778 */ cpu->r[6] = _t21 | _t20;
|
|
/* 027F677C */ goto L_027F678C;
|
|
L_027F6780: ; // 0x27f6780
|
|
/* 027F6780 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F6784 */ _t22 = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6784 */ _t23 = cpu->r[0] & 0xFFFFFF00u;
|
|
/* 027F6784 */ cpu->r[0] = _t23 | _t22;
|
|
/* 027F6788 */ _t24 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6788 */ _t25 = cpu->r[6] & 0xFFFFFF00u;
|
|
/* 027F6788 */ cpu->r[6] = _t25 | _t24;
|
|
L_027F678C: ; // 0x27f678c
|
|
/* 027F678C */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 027F678C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F6790 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6790 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[6]);
|
|
/* 027F6794 */ cpu->lr = cpu->r[0];
|
|
/* 027F6798 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6798 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027F679C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F67A0 */ return;
|
|
}
|
|
|
|
// fn_027F67A4 @ 0x27f67a4
|
|
void Gambit_fn_027F67A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027F67A4: ; // 0x27f67a4
|
|
/* 027F67A4 */ cpu->r[0] = 0x00000005u;
|
|
/* 027F67A8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F67AC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027F67AC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F67B0 */ _t1 = cpu->r[12] + 0x00003AF8u;
|
|
/* 027F67B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F67B0 */ cpu->r[12] = _t1;
|
|
/* 027F67B4 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F67B8 */ _t2 = cpu->r[12] + 0x00000004u;
|
|
/* 027F67B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F67BC */ _t3 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F67BC */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[9]);
|
|
/* 027F67C0 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 027F67C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 027F67C4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 027F67C8 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 027F67C8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F67CC */ _t6 = cpu->r[3] + 0x00000010u;
|
|
/* 027F67CC */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[11]);
|
|
/* 027F67D0 */ _t7 = cpu->r[3] + 0x0000000Du;
|
|
/* 027F67D0 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[9]);
|
|
/* 027F67D4 */ _t8 = cpu->r[3] + 0x00000011u;
|
|
/* 027F67D4 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[11]);
|
|
/* 027F67D8 */ _t9 = cpu->r[3] + 0x00000020u;
|
|
/* 027F67D8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[9]);
|
|
/* 027F67DC */ _t10 = cpu->r[3] + 0x00000012u;
|
|
/* 027F67DC */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[11]);
|
|
/* 027F67E0 */ return;
|
|
}
|
|
|
|
// fn_027F67E4 @ 0x27f67e4
|
|
void Gambit_fn_027F67E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_027F67E4: ; // 0x27f67e4
|
|
/* 027F67E4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 027F67E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F67E8 */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F67EC */ _t1 = cpu->r[11] + 0x00003AF8u;
|
|
/* 027F67EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F67EC */ cpu->r[11] = _t1;
|
|
/* 027F67F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F67F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[8]);
|
|
/* 027F67F8 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 027F67F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F67FC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F67FC */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F67FC */ if (_t4) goto L_027F6800; else goto L_027F680C;
|
|
L_027F6800: ; // 0x27f6800
|
|
/* 027F6800 */ _t5 = cpu->r[11] + 0x00000004u;
|
|
/* 027F6800 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F6804 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 027F6808 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6808 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F6808 */ if (_t7) goto L_027F6830; else goto L_027F680C;
|
|
L_027F680C: ; // 0x27f680c
|
|
/* 027F680C */ _t8 = cpu->r[3] + 0x00000010u;
|
|
/* 027F680C */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 027F6810 */ /* nop */
|
|
/* 027F6814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 027F6818 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6818 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F6818 */ if (_t10) goto L_027F6830; else goto L_027F681C;
|
|
L_027F681C: ; // 0x27f681c
|
|
/* 027F681C */ _t11 = cpu->r[3] + 0x00000011u;
|
|
/* 027F681C */ cpu->r[7] = rbrew_read8(cpu->mem, _t11);
|
|
/* 027F6820 */ /* nop */
|
|
/* 027F6824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0xFFFFFFFFu);
|
|
/* 027F6828 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6828 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F6828 */ if (_t13) goto L_027F6830; else goto L_027F682C;
|
|
L_027F682C: ; // 0x27f682c
|
|
/* 027F682C */ cpu->r[6] = 0x00000001u;
|
|
L_027F6830: ; // 0x27f6830
|
|
/* 027F6830 */ cpu->r[3] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6834 */ return;
|
|
}
|
|
|
|
// fn_027F6838 @ 0x27f6838
|
|
void Gambit_fn_027F6838(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_027F6838: ; // 0x27f6838
|
|
/* 027F6838 */ cpu->r[0] = cpu->lr;
|
|
/* 027F683C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F683C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F6840 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F6844 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F6844 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F6844 */ cpu->r[1] = _t1;
|
|
/* 027F6848 */ _t2 = cpu->r[12] + 0x0000134Cu;
|
|
/* 027F6848 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F684C */ _t3 = cpu->r[12] + 0x0000015Du;
|
|
/* 027F684C */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 027F6850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F6854 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6854 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F6854 */ if (_t5) goto L_027F6894; else goto L_027F6858;
|
|
L_027F6858: ; // 0x27f6858
|
|
/* 027F6858 */ Gambit_fn_0200961C(cpu);
|
|
/* 027F685C */ _t6 = cpu->r[3] + 0x00000019u;
|
|
/* 027F685C */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027F6860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F6864 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6864 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F6864 */ if (_t8) goto L_027F6868; else goto L_027F6894;
|
|
L_027F6868: ; // 0x27f6868
|
|
/* 027F6868 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F686C */ _t9 = cpu->r[12] + 0x000045C4u;
|
|
/* 027F686C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F6870 */ _t10 = cpu->r[12] + 0x00000019u;
|
|
/* 027F6870 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 027F6874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6878 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6878 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F6878 */ if (_t12) goto L_027F6894; else goto L_027F687C;
|
|
L_027F687C: ; // 0x27f687c
|
|
/* 027F687C */ _t13 = cpu->r[12] + 0x00000018u;
|
|
/* 027F687C */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 027F6880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6884 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6884 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F6884 */ if (_t15) goto L_027F6894; else goto L_027F6888;
|
|
L_027F6888: ; // 0x27f6888
|
|
/* 027F6888 */ _t16 = cpu->r[12] + 0x000005DCu;
|
|
/* 027F6888 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F688C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6890 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F6890 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F6890 */ if (_t18) goto L_027F68A8; else goto L_027F6894;
|
|
L_027F6894: ; // 0x27f6894
|
|
/* 027F6894 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F6898 */ cpu->lr = cpu->r[0];
|
|
/* 027F689C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F68A0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F68A4 */ return;
|
|
L_027F68A8: ; // 0x27f68a8
|
|
/* 027F68A8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F68AC */ Gambit_fn_021729AC(cpu);
|
|
/* 027F68B0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F68B4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F68B8 */ Gambit_fn_02172C40(cpu);
|
|
/* 027F68BC */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027F68BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F68C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F68C4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F68C4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F68C4 */ if (_t22) goto L_027F68C8; else goto L_027F690C;
|
|
L_027F68C8: ; // 0x27f68c8
|
|
/* 027F68C8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F68CC */ _t23 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F68CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F68D0 */ _t24 = cpu->r[12] + 0x0000001Eu;
|
|
/* 027F68D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t24);
|
|
/* 027F68D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F68D8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F68D8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F68D8 */ if (_t26) goto L_027F68EC; else goto L_027F68DC;
|
|
L_027F68DC: ; // 0x27f68dc
|
|
/* 027F68DC */ _t27 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F68DC */ cpu->r[3] = rbrew_read16(cpu->mem, _t27);
|
|
/* 027F68E0 */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F68E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F68E8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F68E8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F68E8 */ if (_t29) goto L_027F690C; else goto L_027F68EC;
|
|
L_027F68EC: ; // 0x27f68ec
|
|
/* 027F68EC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F68F0 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F68F4 */ Gambit_fn_02172A44(cpu);
|
|
/* 027F68F8 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F68F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F68FC */ cpu->lr = cpu->r[0];
|
|
/* 027F6900 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F6904 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F6908 */ return;
|
|
L_027F690C: ; // 0x27f690c
|
|
/* 027F690C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6910 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6914 */ Gambit_fn_02172A44(cpu);
|
|
/* 027F6918 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F691C */ cpu->lr = cpu->r[0];
|
|
/* 027F6920 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F6924 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F6928 */ return;
|
|
}
|
|
|
|
// fn_027F6844 @ 0x27f6844
|
|
void Gambit_fn_027F6844(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_027F6844: ; // 0x27f6844
|
|
/* 027F6844 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F6844 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6844 */ cpu->r[1] = _t0;
|
|
/* 027F6848 */ _t1 = cpu->r[12] + 0x0000134Cu;
|
|
/* 027F6848 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F684C */ _t2 = cpu->r[12] + 0x0000015Du;
|
|
/* 027F684C */ cpu->r[12] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027F6850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F6854 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6854 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F6854 */ if (_t4) goto L_027F6894; else goto L_027F6858;
|
|
L_027F6858: ; // 0x27f6858
|
|
/* 027F6858 */ Gambit_fn_0200961C(cpu);
|
|
/* 027F685C */ _t5 = cpu->r[3] + 0x00000019u;
|
|
/* 027F685C */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 027F6860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F6864 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6864 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F6864 */ if (_t7) goto L_027F6868; else goto L_027F6894;
|
|
L_027F6868: ; // 0x27f6868
|
|
/* 027F6868 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F686C */ _t8 = cpu->r[12] + 0x000045C4u;
|
|
/* 027F686C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F6870 */ _t9 = cpu->r[12] + 0x00000019u;
|
|
/* 027F6870 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 027F6874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6878 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6878 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F6878 */ if (_t11) goto L_027F6894; else goto L_027F687C;
|
|
L_027F687C: ; // 0x27f687c
|
|
/* 027F687C */ _t12 = cpu->r[12] + 0x00000018u;
|
|
/* 027F687C */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027F6880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6884 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6884 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F6884 */ if (_t14) goto L_027F6894; else goto L_027F6888;
|
|
L_027F6888: ; // 0x27f6888
|
|
/* 027F6888 */ _t15 = cpu->r[12] + 0x000005DCu;
|
|
/* 027F6888 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F688C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6890 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F6890 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F6890 */ if (_t17) goto L_027F68A8; else goto L_027F6894;
|
|
L_027F6894: ; // 0x27f6894
|
|
/* 027F6894 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F6898 */ cpu->lr = cpu->r[0];
|
|
/* 027F689C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F68A0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F68A4 */ return;
|
|
L_027F68A8: ; // 0x27f68a8
|
|
/* 027F68A8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F68AC */ Gambit_fn_021729AC(cpu);
|
|
/* 027F68B0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F68B4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F68B8 */ Gambit_fn_02172C40(cpu);
|
|
/* 027F68BC */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F68BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F68C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F68C4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F68C4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F68C4 */ if (_t21) goto L_027F68C8; else goto L_027F690C;
|
|
L_027F68C8: ; // 0x27f68c8
|
|
/* 027F68C8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F68CC */ _t22 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F68CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F68D0 */ _t23 = cpu->r[12] + 0x0000001Eu;
|
|
/* 027F68D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t23);
|
|
/* 027F68D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F68D8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F68D8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F68D8 */ if (_t25) goto L_027F68EC; else goto L_027F68DC;
|
|
L_027F68DC: ; // 0x27f68dc
|
|
/* 027F68DC */ _t26 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F68DC */ cpu->r[3] = rbrew_read16(cpu->mem, _t26);
|
|
/* 027F68E0 */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F68E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F68E8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F68E8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F68E8 */ if (_t28) goto L_027F690C; else goto L_027F68EC;
|
|
L_027F68EC: ; // 0x27f68ec
|
|
/* 027F68EC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F68F0 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F68F4 */ Gambit_fn_02172A44(cpu);
|
|
/* 027F68F8 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F68F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F68FC */ cpu->lr = cpu->r[0];
|
|
/* 027F6900 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F6904 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F6908 */ return;
|
|
L_027F690C: ; // 0x27f690c
|
|
/* 027F690C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6910 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6914 */ Gambit_fn_02172A44(cpu);
|
|
/* 027F6918 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F691C */ cpu->lr = cpu->r[0];
|
|
/* 027F6920 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F6924 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F6928 */ return;
|
|
}
|
|
|
|
// fn_027F692C @ 0x27f692c
|
|
void Gambit_fn_027F692C(CPUState* 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_027F692C: ; // 0x27f692c
|
|
/* 027F692C */ cpu->r[0] = cpu->lr;
|
|
/* 027F6930 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F6930 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6930 */ cpu->r[1] = _t0;
|
|
/* 027F6934 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6934 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F6938 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6938 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F693C */ Gambit_fn_027F6838(cpu);
|
|
/* 027F6940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6944 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6944 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F6944 */ if (_t4) goto L_027F6948; else goto L_027F6960;
|
|
L_027F6948: ; // 0x27f6948
|
|
/* 027F6948 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F694C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F694C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F6950 */ cpu->lr = cpu->r[0];
|
|
/* 027F6954 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F6958 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F695C */ return;
|
|
L_027F6960: ; // 0x27f6960
|
|
/* 027F6960 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6964 */ Gambit_fn_021729AC(cpu);
|
|
/* 027F6968 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F696C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6970 */ Gambit_fn_02172C40(cpu);
|
|
/* 027F6974 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F6978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F697C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F697C */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F697C */ if (_t9) goto L_027F69A4; else goto L_027F6980;
|
|
L_027F6980: ; // 0x27f6980
|
|
/* 027F6980 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6984 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6988 */ Gambit_fn_02172A44(cpu);
|
|
/* 027F698C */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 027F698C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F6990 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6990 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F6994 */ cpu->lr = cpu->r[0];
|
|
/* 027F6998 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F699C */ cpu->r[3] = 0x00000000u;
|
|
/* 027F69A0 */ return;
|
|
L_027F69A4: ; // 0x27f69a4
|
|
/* 027F69A4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F69A8 */ _t12 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F69A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F69AC */ _t13 = cpu->r[12] + 0x0000001Eu;
|
|
/* 027F69AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 027F69B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F69B4 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F69B8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F69B8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F69B8 */ if (_t15) goto L_027F69D0; else goto L_027F69BC;
|
|
L_027F69BC: ; // 0x27f69bc
|
|
/* 027F69BC */ _t16 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F69BC */ cpu->r[3] = rbrew_read16(cpu->mem, _t16);
|
|
/* 027F69C0 */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F69C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F69C8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F69C8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F69C8 */ if (_t18) goto L_027F69CC; else goto L_027F69D0;
|
|
L_027F69CC: ; // 0x27f69cc
|
|
/* 027F69CC */ cpu->r[31] = 0x00000001u;
|
|
L_027F69D0: ; // 0x27f69d0
|
|
/* 027F69D0 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F69D4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F69D8 */ cpu->r[31] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F69DC */ Gambit_fn_02172A44(cpu);
|
|
/* 027F69E0 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 027F69E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F69E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F69E8 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F69E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F69EC */ cpu->lr = cpu->r[0];
|
|
/* 027F69F0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F69F4 */ return;
|
|
}
|
|
|
|
// fn_027F6930 @ 0x27f6930
|
|
void Gambit_fn_027F6930(CPUState* 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_027F6930: ; // 0x27f6930
|
|
/* 027F6930 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F6930 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6930 */ cpu->r[1] = _t0;
|
|
/* 027F6934 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6934 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F6938 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6938 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F693C */ Gambit_fn_027F6838(cpu);
|
|
/* 027F6940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6944 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6944 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F6944 */ if (_t4) goto L_027F6948; else goto L_027F6960;
|
|
L_027F6948: ; // 0x27f6948
|
|
/* 027F6948 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F694C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F694C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F6950 */ cpu->lr = cpu->r[0];
|
|
/* 027F6954 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F6958 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F695C */ return;
|
|
L_027F6960: ; // 0x27f6960
|
|
/* 027F6960 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6964 */ Gambit_fn_021729AC(cpu);
|
|
/* 027F6968 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F696C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6970 */ Gambit_fn_02172C40(cpu);
|
|
/* 027F6974 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F6978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F697C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F697C */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F697C */ if (_t9) goto L_027F69A4; else goto L_027F6980;
|
|
L_027F6980: ; // 0x27f6980
|
|
/* 027F6980 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6984 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6988 */ Gambit_fn_02172A44(cpu);
|
|
/* 027F698C */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 027F698C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F6990 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6990 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F6994 */ cpu->lr = cpu->r[0];
|
|
/* 027F6998 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F699C */ cpu->r[3] = 0x00000000u;
|
|
/* 027F69A0 */ return;
|
|
L_027F69A4: ; // 0x27f69a4
|
|
/* 027F69A4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F69A8 */ _t12 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F69A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F69AC */ _t13 = cpu->r[12] + 0x0000001Eu;
|
|
/* 027F69AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 027F69B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F69B4 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F69B8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F69B8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F69B8 */ if (_t15) goto L_027F69D0; else goto L_027F69BC;
|
|
L_027F69BC: ; // 0x27f69bc
|
|
/* 027F69BC */ _t16 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F69BC */ cpu->r[3] = rbrew_read16(cpu->mem, _t16);
|
|
/* 027F69C0 */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F69C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F69C8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F69C8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F69C8 */ if (_t18) goto L_027F69CC; else goto L_027F69D0;
|
|
L_027F69CC: ; // 0x27f69cc
|
|
/* 027F69CC */ cpu->r[31] = 0x00000001u;
|
|
L_027F69D0: ; // 0x27f69d0
|
|
/* 027F69D0 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F69D4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F69D8 */ cpu->r[31] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F69DC */ Gambit_fn_02172A44(cpu);
|
|
/* 027F69E0 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 027F69E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F69E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F69E8 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F69E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F69EC */ cpu->lr = cpu->r[0];
|
|
/* 027F69F0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F69F4 */ return;
|
|
}
|
|
|
|
// fn_027F69F8 @ 0x27f69f8
|
|
void Gambit_fn_027F69F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_027F69F8: ; // 0x27f69f8
|
|
/* 027F69F8 */ cpu->r[0] = cpu->lr;
|
|
/* 027F69FC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F69FC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F6A00 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F6A00 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F6A00 */ cpu->r[1] = _t1;
|
|
/* 027F6A04 */ Gambit_fn_027F692C(cpu);
|
|
/* 027F6A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6A0C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6A0C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F6A0C */ if (_t3) goto L_027F6A10; else goto L_027F6A24;
|
|
L_027F6A10: ; // 0x27f6a10
|
|
/* 027F6A10 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F6A14 */ cpu->lr = cpu->r[0];
|
|
/* 027F6A18 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A1C */ cpu->r[3] = 0x00000000u;
|
|
/* 027F6A20 */ return;
|
|
L_027F6A24: ; // 0x27f6a24
|
|
/* 027F6A24 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F6A28 */ _t5 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F6A28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F6A2C */ _t6 = cpu->r[12] + 0x00000018u;
|
|
/* 027F6A2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F6A30 */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 027F6A34 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F6A38 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F6A3C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F6A40 */ cpu->lr = cpu->r[0];
|
|
/* 027F6A44 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A48 */ return;
|
|
}
|
|
|
|
// fn_027F6A00 @ 0x27f6a00
|
|
void Gambit_fn_027F6A00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_027F6A00: ; // 0x27f6a00
|
|
/* 027F6A00 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F6A00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6A00 */ cpu->r[1] = _t0;
|
|
/* 027F6A04 */ Gambit_fn_027F692C(cpu);
|
|
/* 027F6A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6A0C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6A0C */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F6A0C */ if (_t2) goto L_027F6A10; else goto L_027F6A24;
|
|
L_027F6A10: ; // 0x27f6a10
|
|
/* 027F6A10 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F6A14 */ cpu->lr = cpu->r[0];
|
|
/* 027F6A18 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A1C */ cpu->r[3] = 0x00000000u;
|
|
/* 027F6A20 */ return;
|
|
L_027F6A24: ; // 0x27f6a24
|
|
/* 027F6A24 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F6A28 */ _t4 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F6A28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F6A2C */ _t5 = cpu->r[12] + 0x00000018u;
|
|
/* 027F6A2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F6A30 */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 027F6A34 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F6A38 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F6A3C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F6A40 */ cpu->lr = cpu->r[0];
|
|
/* 027F6A44 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A48 */ return;
|
|
}
|
|
|
|
// fn_027F6A4C @ 0x27f6a4c
|
|
void Gambit_fn_027F6A4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F6A4C: ; // 0x27f6a4c
|
|
/* 027F6A4C */ cpu->r[0] = cpu->lr;
|
|
/* 027F6A50 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F6A50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6A50 */ cpu->r[1] = _t0;
|
|
/* 027F6A54 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6A54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F6A58 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F6A5C */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6A5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F6A60 */ Gambit_fn_027F6838(cpu);
|
|
/* 027F6A64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6A68 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6A68 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F6A68 */ if (_t4) goto L_027F6AD4; else goto L_027F6A6C;
|
|
L_027F6A6C: ; // 0x27f6a6c
|
|
/* 027F6A6C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A70 */ Gambit_fn_021729AC(cpu);
|
|
/* 027F6A74 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A78 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A7C */ Gambit_fn_02172C40(cpu);
|
|
/* 027F6A80 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F6A84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F6A88 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6A88 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F6A88 */ if (_t7) goto L_027F6A8C; else goto L_027F6AA4;
|
|
L_027F6A8C: ; // 0x27f6a8c
|
|
/* 027F6A8C */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F6A90 */ _t8 = cpu->r[3] + 0x0000457Cu;
|
|
/* 027F6A90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F6A94 */ Gambit_fn_02180540(cpu);
|
|
/* 027F6A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6A9C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6A9C */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F6A9C */ if (_t10) goto L_027F6AA4; else goto L_027F6AA0;
|
|
L_027F6AA0: ; // 0x27f6aa0
|
|
/* 027F6AA0 */ cpu->r[31] = 0x00000001u;
|
|
L_027F6AA4: ; // 0x27f6aa4
|
|
/* 027F6AA4 */ Gambit_fn_027F69F8(cpu);
|
|
/* 027F6AA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6AAC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6AAC */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F6AAC */ if (_t12) goto L_027F6AB0; else goto L_027F6AC8;
|
|
L_027F6AB0: ; // 0x27f6ab0
|
|
/* 027F6AB0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F6AB4 */ _t13 = cpu->r[3] + 0x000045C4u;
|
|
/* 027F6AB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F6AB8 */ Gambit_fn_02183E88(cpu);
|
|
/* 027F6ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6AC0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6AC0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F6AC0 */ if (_t15) goto L_027F6AC8; else goto L_027F6AC4;
|
|
L_027F6AC4: ; // 0x27f6ac4
|
|
/* 027F6AC4 */ cpu->r[31] = 0x00000001u;
|
|
L_027F6AC8: ; // 0x27f6ac8
|
|
/* 027F6AC8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6ACC */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6AD0 */ Gambit_fn_02172A44(cpu);
|
|
L_027F6AD4: ; // 0x27f6ad4
|
|
/* 027F6AD4 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6AD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F6AD8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6ADC */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6ADC */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F6AE0 */ cpu->lr = cpu->r[0];
|
|
/* 027F6AE4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F6AE8 */ return;
|
|
}
|
|
|
|
// fn_027F6A50 @ 0x27f6a50
|
|
void Gambit_fn_027F6A50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F6A50: ; // 0x27f6a50
|
|
/* 027F6A50 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F6A50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6A50 */ cpu->r[1] = _t0;
|
|
/* 027F6A54 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6A54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F6A58 */ cpu->r[31] = 0x00000000u;
|
|
/* 027F6A5C */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6A5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F6A60 */ Gambit_fn_027F6838(cpu);
|
|
/* 027F6A64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6A68 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6A68 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F6A68 */ if (_t4) goto L_027F6AD4; else goto L_027F6A6C;
|
|
L_027F6A6C: ; // 0x27f6a6c
|
|
/* 027F6A6C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A70 */ Gambit_fn_021729AC(cpu);
|
|
/* 027F6A74 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A78 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A7C */ Gambit_fn_02172C40(cpu);
|
|
/* 027F6A80 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F6A84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F6A88 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6A88 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F6A88 */ if (_t7) goto L_027F6A8C; else goto L_027F6AA4;
|
|
L_027F6A8C: ; // 0x27f6a8c
|
|
/* 027F6A8C */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F6A90 */ _t8 = cpu->r[3] + 0x0000457Cu;
|
|
/* 027F6A90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F6A94 */ Gambit_fn_02180540(cpu);
|
|
/* 027F6A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6A9C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6A9C */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F6A9C */ if (_t10) goto L_027F6AA4; else goto L_027F6AA0;
|
|
L_027F6AA0: ; // 0x27f6aa0
|
|
/* 027F6AA0 */ cpu->r[31] = 0x00000001u;
|
|
L_027F6AA4: ; // 0x27f6aa4
|
|
/* 027F6AA4 */ Gambit_fn_027F69F8(cpu);
|
|
/* 027F6AA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6AAC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6AAC */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F6AAC */ if (_t12) goto L_027F6AB0; else goto L_027F6AC8;
|
|
L_027F6AB0: ; // 0x27f6ab0
|
|
/* 027F6AB0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F6AB4 */ _t13 = cpu->r[3] + 0x000045C4u;
|
|
/* 027F6AB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F6AB8 */ Gambit_fn_02183E88(cpu);
|
|
/* 027F6ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6AC0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6AC0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F6AC0 */ if (_t15) goto L_027F6AC8; else goto L_027F6AC4;
|
|
L_027F6AC4: ; // 0x27f6ac4
|
|
/* 027F6AC4 */ cpu->r[31] = 0x00000001u;
|
|
L_027F6AC8: ; // 0x27f6ac8
|
|
/* 027F6AC8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6ACC */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6AD0 */ Gambit_fn_02172A44(cpu);
|
|
L_027F6AD4: ; // 0x27f6ad4
|
|
/* 027F6AD4 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6AD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F6AD8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6ADC */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6ADC */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F6AE0 */ cpu->lr = cpu->r[0];
|
|
/* 027F6AE4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F6AE8 */ return;
|
|
}
|
|
|
|
// fn_027F6AEC @ 0x27f6aec
|
|
void Gambit_fn_027F6AEC(CPUState* cpu) {
|
|
uint32_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_027F6AEC: ; // 0x27f6aec
|
|
/* 027F6AEC */ cpu->r[0] = cpu->lr;
|
|
/* 027F6AF0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F6AF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F6AF4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F6AF8 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F6AF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F6AF8 */ cpu->r[1] = _t1;
|
|
/* 027F6AFC */ _t2 = cpu->r[12] + 0x000042A4u;
|
|
/* 027F6AFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F6B00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F6B04 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B04 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F6B04 */ if (_t4) goto L_027F6B14; else goto L_027F6B08;
|
|
L_027F6B08: ; // 0x27f6b08
|
|
/* 027F6B08 */ _t5 = cpu->r[12] + 0x00000020u;
|
|
/* 027F6B08 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 027F6B0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F6B10 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B10 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F6B10 */ if (_t7) goto L_027F6B14; else goto L_027F6B84;
|
|
L_027F6B14: ; // 0x27f6b14
|
|
/* 027F6B14 */ cpu->r[3] = 0x101D0000u;
|
|
/* 027F6B18 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F6B1C */ cpu->r[0] = 0x10110000u;
|
|
/* 027F6B20 */ _t8 = cpu->r[3] + 0xFFFF9884u;
|
|
/* 027F6B20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F6B24 */ cpu->r[12] = cpu->r[12] + 0x00000720u;
|
|
/* 027F6B28 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6B2C */ cpu->r[0] = cpu->r[0] + 0x00000738u;
|
|
/* 027F6B30 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6B30 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027F6B34 */ cpu->r[5] = 0x00000000u;
|
|
/* 027F6B38 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6B38 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 027F6B3C */ Gambit_fn_02809494(cpu);
|
|
/* 027F6B40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6B44 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F6B48 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B48 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F6B48 */ if (_t12) goto L_027F6B50; else goto L_027F6B4C;
|
|
L_027F6B4C: ; // 0x27f6b4c
|
|
/* 027F6B4C */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6B4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
L_027F6B50: ; // 0x27f6b50
|
|
/* 027F6B50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6B54 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B54 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F6B54 */ if (_t15) goto L_027F6B58; else goto L_027F6B74;
|
|
L_027F6B58: ; // 0x27f6b58
|
|
/* 027F6B58 */ Gambit_fn_027E358C(cpu);
|
|
/* 027F6B5C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F6B60 */ cpu->r[11] = cpu->r[3] ^ 0x00000001u;
|
|
/* 027F6B64 */ cpu->lr = cpu->r[0];
|
|
/* 027F6B68 */ cpu->r[3] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6B6C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6B70 */ return;
|
|
L_027F6B74: ; // 0x27f6b74
|
|
/* 027F6B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F6B78 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B78 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F6B78 */ if (_t18) goto L_027F6B98; else goto L_027F6B7C;
|
|
L_027F6B7C: ; // 0x27f6b7c
|
|
/* 027F6B7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 027F6B80 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B80 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F6B80 */ if (_t20) goto L_027F6B84; else goto L_027F6B98;
|
|
L_027F6B84: ; // 0x27f6b84
|
|
/* 027F6B84 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6B84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F6B88 */ cpu->lr = cpu->r[0];
|
|
/* 027F6B8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6B90 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F6B94 */ return;
|
|
L_027F6B98: ; // 0x27f6b98
|
|
/* 027F6B98 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6B98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F6B9C */ cpu->lr = cpu->r[0];
|
|
/* 027F6BA0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6BA4 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F6BA8 */ return;
|
|
}
|
|
|
|
// fn_027F6AF8 @ 0x27f6af8
|
|
void Gambit_fn_027F6AF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_027F6AF8: ; // 0x27f6af8
|
|
/* 027F6AF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F6AF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6AF8 */ cpu->r[1] = _t0;
|
|
/* 027F6AFC */ _t1 = cpu->r[12] + 0x000042A4u;
|
|
/* 027F6AFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F6B00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F6B04 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B04 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F6B04 */ if (_t3) goto L_027F6B14; else goto L_027F6B08;
|
|
L_027F6B08: ; // 0x27f6b08
|
|
/* 027F6B08 */ _t4 = cpu->r[12] + 0x00000020u;
|
|
/* 027F6B08 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 027F6B0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F6B10 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B10 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F6B10 */ if (_t6) goto L_027F6B14; else goto L_027F6B84;
|
|
L_027F6B14: ; // 0x27f6b14
|
|
/* 027F6B14 */ cpu->r[3] = 0x101D0000u;
|
|
/* 027F6B18 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F6B1C */ cpu->r[0] = 0x10110000u;
|
|
/* 027F6B20 */ _t7 = cpu->r[3] + 0xFFFF9884u;
|
|
/* 027F6B20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F6B24 */ cpu->r[12] = cpu->r[12] + 0x00000720u;
|
|
/* 027F6B28 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6B2C */ cpu->r[0] = cpu->r[0] + 0x00000738u;
|
|
/* 027F6B30 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6B30 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 027F6B34 */ cpu->r[5] = 0x00000000u;
|
|
/* 027F6B38 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6B38 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F6B3C */ Gambit_fn_02809494(cpu);
|
|
/* 027F6B40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6B44 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F6B48 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B48 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F6B48 */ if (_t11) goto L_027F6B50; else goto L_027F6B4C;
|
|
L_027F6B4C: ; // 0x27f6b4c
|
|
/* 027F6B4C */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6B4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
L_027F6B50: ; // 0x27f6b50
|
|
/* 027F6B50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6B54 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B54 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F6B54 */ if (_t14) goto L_027F6B58; else goto L_027F6B74;
|
|
L_027F6B58: ; // 0x27f6b58
|
|
/* 027F6B58 */ Gambit_fn_027E358C(cpu);
|
|
/* 027F6B5C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F6B60 */ cpu->r[11] = cpu->r[3] ^ 0x00000001u;
|
|
/* 027F6B64 */ cpu->lr = cpu->r[0];
|
|
/* 027F6B68 */ cpu->r[3] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F6B6C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6B70 */ return;
|
|
L_027F6B74: ; // 0x27f6b74
|
|
/* 027F6B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F6B78 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B78 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F6B78 */ if (_t17) goto L_027F6B98; else goto L_027F6B7C;
|
|
L_027F6B7C: ; // 0x27f6b7c
|
|
/* 027F6B7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 027F6B80 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6B80 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F6B80 */ if (_t19) goto L_027F6B84; else goto L_027F6B98;
|
|
L_027F6B84: ; // 0x27f6b84
|
|
/* 027F6B84 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6B84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F6B88 */ cpu->lr = cpu->r[0];
|
|
/* 027F6B8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6B90 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F6B94 */ return;
|
|
L_027F6B98: ; // 0x27f6b98
|
|
/* 027F6B98 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6B98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F6B9C */ cpu->lr = cpu->r[0];
|
|
/* 027F6BA0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6BA4 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F6BA8 */ return;
|
|
}
|
|
|
|
// fn_027F6BAC @ 0x27f6bac
|
|
void Gambit_fn_027F6BAC(CPUState* 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_027F6BAC: ; // 0x27f6bac
|
|
/* 027F6BAC */ cpu->r[0] = cpu->lr;
|
|
/* 027F6BB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F6BB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6BB0 */ cpu->r[1] = _t0;
|
|
/* 027F6BB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6BB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F6BB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F6BBC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6BBC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F6BC0 */ Gambit_fn_027F692C(cpu);
|
|
/* 027F6BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6BC8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6BC8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F6BC8 */ if (_t4) goto L_027F6BCC; else goto L_027F6C04;
|
|
L_027F6BCC: ; // 0x27f6bcc
|
|
/* 027F6BCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F6BD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6BD4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6BD4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F6BD4 */ if (_t6) goto L_027F6BD8; else goto L_027F6BE8;
|
|
L_027F6BD8: ; // 0x27f6bd8
|
|
/* 027F6BD8 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F6BDC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F6BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6BE4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6BE4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F6BE4 */ if (_t8) goto L_027F6C30; else goto L_027F6BE8;
|
|
L_027F6BE8: ; // 0x27f6be8
|
|
/* 027F6BE8 */ cpu->r[12] = 0x00000000u;
|
|
/* 027F6BEC */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6BEC */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027F6BF0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6BF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F6BF4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6BF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F6BF8 */ cpu->lr = cpu->r[0];
|
|
/* 027F6BFC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6C00 */ return;
|
|
L_027F6C04: ; // 0x27f6c04
|
|
/* 027F6C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F6C08 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6C0C */ cpu->r[31] = 0x101C0000u;
|
|
/* 027F6C10 */ _t12 = cpu->r[31] + 0x0000457Cu;
|
|
/* 027F6C10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F6C14 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6C14 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F6C14 */ if (_t14) goto L_027F6C18; else goto L_027F6C28;
|
|
L_027F6C18: ; // 0x27f6c18
|
|
/* 027F6C18 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F6C1C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F6C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6C24 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6C24 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F6C24 */ if (_t16) goto L_027F6C30; else goto L_027F6C28;
|
|
L_027F6C28: ; // 0x27f6c28
|
|
/* 027F6C28 */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 027F6C28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F6C2C */ _t18 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6C2C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_027F6C30: ; // 0x27f6c30
|
|
/* 027F6C30 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6C30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F6C34 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6C34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F6C38 */ cpu->lr = cpu->r[0];
|
|
/* 027F6C3C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6C40 */ return;
|
|
}
|
|
|
|
// fn_027F6BB0 @ 0x27f6bb0
|
|
void Gambit_fn_027F6BB0(CPUState* 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_027F6BB0: ; // 0x27f6bb0
|
|
/* 027F6BB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F6BB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6BB0 */ cpu->r[1] = _t0;
|
|
/* 027F6BB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6BB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F6BB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F6BBC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6BBC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F6BC0 */ Gambit_fn_027F692C(cpu);
|
|
/* 027F6BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6BC8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6BC8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F6BC8 */ if (_t4) goto L_027F6BCC; else goto L_027F6C04;
|
|
L_027F6BCC: ; // 0x27f6bcc
|
|
/* 027F6BCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F6BD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6BD4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6BD4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F6BD4 */ if (_t6) goto L_027F6BD8; else goto L_027F6BE8;
|
|
L_027F6BD8: ; // 0x27f6bd8
|
|
/* 027F6BD8 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F6BDC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F6BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6BE4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6BE4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F6BE4 */ if (_t8) goto L_027F6C30; else goto L_027F6BE8;
|
|
L_027F6BE8: ; // 0x27f6be8
|
|
/* 027F6BE8 */ cpu->r[12] = 0x00000000u;
|
|
/* 027F6BEC */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6BEC */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027F6BF0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6BF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F6BF4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6BF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F6BF8 */ cpu->lr = cpu->r[0];
|
|
/* 027F6BFC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6C00 */ return;
|
|
L_027F6C04: ; // 0x27f6c04
|
|
/* 027F6C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F6C08 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F6C0C */ cpu->r[31] = 0x101C0000u;
|
|
/* 027F6C10 */ _t12 = cpu->r[31] + 0x0000457Cu;
|
|
/* 027F6C10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F6C14 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6C14 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F6C14 */ if (_t14) goto L_027F6C18; else goto L_027F6C28;
|
|
L_027F6C18: ; // 0x27f6c18
|
|
/* 027F6C18 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F6C1C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F6C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6C24 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6C24 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F6C24 */ if (_t16) goto L_027F6C30; else goto L_027F6C28;
|
|
L_027F6C28: ; // 0x27f6c28
|
|
/* 027F6C28 */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 027F6C28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F6C2C */ _t18 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6C2C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_027F6C30: ; // 0x27f6c30
|
|
/* 027F6C30 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6C30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F6C34 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6C34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F6C38 */ cpu->lr = cpu->r[0];
|
|
/* 027F6C3C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6C40 */ return;
|
|
}
|
|
|
|
// fn_027F6C44 @ 0x27f6c44
|
|
void Gambit_fn_027F6C44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65;
|
|
|
|
L_027F6C44: ; // 0x27f6c44
|
|
/* 027F6C44 */ cpu->r[12] = 0xFFFF0000u;
|
|
/* 027F6C48 */ cpu->r[0] = cpu->lr;
|
|
/* 027F6C4C */ cpu->r[12] = cpu->r[12] + 0x00005A20u;
|
|
/* 027F6C50 */ _t0 = cpu->r[1] + cpu->r[12];
|
|
/* 027F6C50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6C50 */ cpu->r[1] = _t0;
|
|
/* 027F6C54 */ cpu->r[12] = cpu->r[1] + 0x00010000u;
|
|
/* 027F6C58 */ _t1 = cpu->r[12] + 0xFFFFA5DCu;
|
|
/* 027F6C58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F6C5C */ _t2 = cpu->r[12] + 0xFFFFA5D4u;
|
|
/* 027F6C5C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 027F6C60 */ _t3 = cpu->r[12] + 0xFFFFA5D0u;
|
|
/* 027F6C60 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 027F6C64 */ _t4 = cpu->r[12] + 0xFFFFA5E4u;
|
|
/* 027F6C64 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F6C68 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 027F6C6C */ _t5 = cpu->r[12] + 0xFFFFA5D8u;
|
|
/* 027F6C6C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 027F6C70 */ Gambit_fn_021734AC(cpu);
|
|
/* 027F6C74 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6C78 */ Gambit_fn_02176834(cpu);
|
|
/* 027F6C7C */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F6C80 */ _t6 = cpu->r[12] + 0x00001344u;
|
|
/* 027F6C80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F6C84 */ _t7 = cpu->r[12] + 0x00000014u;
|
|
/* 027F6C84 */ cpu->r[29] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F6C88 */ cpu->r[31] = 0x00000001u;
|
|
/* 027F6C8C */ cpu->r[3] = cpu->r[29];
|
|
/* 027F6C90 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F6C94 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6C94 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 027F6C98 */ Gambit_fn_0201E768(cpu);
|
|
/* 027F6C9C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 027F6CA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F6CA4 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F6CA8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 027F6CA8 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 027F6CAC */ Gambit_fn_0201E460(cpu);
|
|
/* 027F6CB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F6CB4 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027F6CB8 */ Gambit_fn_027F6BAC(cpu);
|
|
/* 027F6CBC */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 027F6CBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F6CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000002u);
|
|
/* 027F6CC4 */ cpu->r[28] = 0x00000000u;
|
|
/* 027F6CC8 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6CC8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F6CC8 */ if (_t12) goto L_027F6CCC; else goto L_027F6CD8;
|
|
L_027F6CCC: ; // 0x27f6ccc
|
|
/* 027F6CCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 027F6CD0 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F6CD0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F6CD0 */ if (_t14) goto L_027F6EF4; else goto L_027F6CD4;
|
|
L_027F6CD4: ; // 0x27f6cd4
|
|
/* 027F6CD4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6CD4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F6CD4 */ if (_t16) goto L_027F6D18; else goto L_027F6CD8;
|
|
L_027F6CD8: ; // 0x27f6cd8
|
|
/* 027F6CD8 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 027F6CDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[10]);
|
|
/* 027F6CE0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6CE0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F6CE0 */ if (_t18) goto L_027F6EF4; else goto L_027F6CE4;
|
|
L_027F6CE4: ; // 0x27f6ce4
|
|
/* 027F6CE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 027F6CE8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6CE8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F6CE8 */ if (_t20) goto L_027F6EF4; else goto L_027F6CEC;
|
|
L_027F6CEC: ; // 0x27f6cec
|
|
/* 027F6CEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000002u);
|
|
/* 027F6CF0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6CF0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F6CF0 */ if (_t22) goto L_027F6DFC; else goto L_027F6CF4;
|
|
L_027F6CF4: ; // 0x27f6cf4
|
|
/* 027F6CF4 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6CF8 */ Gambit_fn_02176920(cpu);
|
|
/* 027F6CFC */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6D00 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6D04 */ Gambit_fn_0217690C(cpu);
|
|
/* 027F6D08 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 027F6D0C */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6D10 */ Gambit_fn_0217354C(cpu);
|
|
/* 027F6D14 */ goto L_027F6F88;
|
|
L_027F6D18: ; // 0x27f6d18
|
|
/* 027F6D18 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 027F6D1C */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 027F6D20 */ Gambit_fn_021735AC(cpu);
|
|
/* 027F6D24 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 027F6D24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F6D28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6D2C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6D2C */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F6D2C */ if (_t25) goto L_027F6D38; else goto L_027F6D30;
|
|
L_027F6D30: ; // 0x27f6d30
|
|
/* 027F6D30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F6D34 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6D34 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F6D34 */ if (_t27) goto L_027F6D38; else goto L_027F6F68;
|
|
L_027F6D38: ; // 0x27f6d38
|
|
/* 027F6D38 */ cpu->r[0] = 0x00000001u;
|
|
/* 027F6D3C */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6D40 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F6D44 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6D48 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6D48 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 027F6D4C */ Gambit_fn_0217575C(cpu);
|
|
/* 027F6D50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6D54 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6D54 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027F6D54 */ if (_t30) goto L_027F6D58; else goto L_027F6D9C;
|
|
L_027F6D58: ; // 0x27f6d58
|
|
/* 027F6D58 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 027F6D5C */ Gambit_fn_02171490(cpu);
|
|
/* 027F6D60 */ cpu->r[31] = 0x00000001u;
|
|
/* 027F6D64 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F6D68 */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F6D68 */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
/* 027F6D6C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 027F6D70 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 027F6D70 */ rbrew_write32(cpu->mem, _t32, cpu->r[31]);
|
|
/* 027F6D74 */ Gambit_fn_0201E768(cpu);
|
|
/* 027F6D78 */ cpu->r[5] = cpu->r[3];
|
|
/* 027F6D7C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F6D80 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 027F6D84 */ Gambit_fn_02171678(cpu);
|
|
/* 027F6D88 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 027F6D8C */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6D90 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 027F6D94 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 027F6D94 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]);
|
|
/* 027F6D98 */ Gambit_fn_02176CD0(cpu);
|
|
L_027F6D9C: ; // 0x27f6d9c
|
|
/* 027F6D9C */ cpu->r[5] = cpu->r[30];
|
|
/* 027F6DA0 */ cpu->r[31] = 0x00000001u;
|
|
/* 027F6DA4 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6DA8 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6DAC */ cpu->r[6] = cpu->r[31];
|
|
/* 027F6DB0 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6DB0 */ rbrew_write32(cpu->mem, _t34, cpu->r[31]);
|
|
/* 027F6DB4 */ Gambit_fn_02175F78(cpu);
|
|
/* 027F6DB8 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F6DBC */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6DBC */ rbrew_write32(cpu->mem, _t35, cpu->r[31]);
|
|
/* 027F6DC0 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6DC4 */ cpu->r[7] = 0x00000000u;
|
|
/* 027F6DC8 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6DCC */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 027F6DD0 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 027F6DD0 */ rbrew_write32(cpu->mem, _t36, cpu->r[28]);
|
|
/* 027F6DD4 */ Gambit_fn_02176BAC(cpu);
|
|
/* 027F6DD8 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6DDC */ Gambit_fn_02176920(cpu);
|
|
/* 027F6DE0 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6DE4 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6DE8 */ Gambit_fn_0217690C(cpu);
|
|
/* 027F6DEC */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6DF0 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 027F6DF4 */ Gambit_fn_0217354C(cpu);
|
|
/* 027F6DF8 */ goto L_027F6F88;
|
|
L_027F6DFC: ; // 0x27f6dfc
|
|
/* 027F6DFC */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 027F6E00 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 027F6E04 */ Gambit_fn_021735AC(cpu);
|
|
/* 027F6E08 */ _t37 = cpu->r[1] + 0x00000030u;
|
|
/* 027F6E08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F6E0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F6E10 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6E10 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027F6E10 */ if (_t39) goto L_027F6E1C; else goto L_027F6E14;
|
|
L_027F6E14: ; // 0x27f6e14
|
|
/* 027F6E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F6E18 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6E18 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027F6E18 */ if (_t41) goto L_027F6E1C; else goto L_027F6F68;
|
|
L_027F6E1C: ; // 0x27f6e1c
|
|
/* 027F6E1C */ cpu->r[0] = 0x00000001u;
|
|
/* 027F6E20 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6E24 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F6E28 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6E2C */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6E2C */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 027F6E30 */ Gambit_fn_0217575C(cpu);
|
|
/* 027F6E34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6E38 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6E38 */ _t44 = _t43 & 0x00000001u;
|
|
/* 027F6E38 */ if (_t44) goto L_027F6E3C; else goto L_027F6E80;
|
|
L_027F6E3C: ; // 0x27f6e3c
|
|
/* 027F6E3C */ cpu->r[3] = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F6E40 */ Gambit_fn_02171490(cpu);
|
|
/* 027F6E44 */ cpu->r[31] = 0x00000001u;
|
|
/* 027F6E48 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F6E4C */ _t45 = cpu->r[1] + 0x00000038u;
|
|
/* 027F6E4C */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 027F6E50 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6E54 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6E54 */ rbrew_write32(cpu->mem, _t46, cpu->r[31]);
|
|
/* 027F6E58 */ Gambit_fn_0201E768(cpu);
|
|
/* 027F6E5C */ cpu->r[5] = cpu->r[3];
|
|
/* 027F6E60 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 027F6E64 */ cpu->r[3] = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F6E68 */ Gambit_fn_02171678(cpu);
|
|
/* 027F6E6C */ cpu->r[5] = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F6E70 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6E74 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6E78 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F6E78 */ rbrew_write32(cpu->mem, _t47, cpu->r[31]);
|
|
/* 027F6E7C */ Gambit_fn_02176CD0(cpu);
|
|
L_027F6E80: ; // 0x27f6e80
|
|
/* 027F6E80 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F6E84 */ cpu->r[31] = 0x00000001u;
|
|
/* 027F6E88 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6E8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6E90 */ cpu->r[6] = cpu->r[31];
|
|
/* 027F6E94 */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6E94 */ rbrew_write32(cpu->mem, _t48, cpu->r[31]);
|
|
/* 027F6E98 */ Gambit_fn_02175F78(cpu);
|
|
/* 027F6E9C */ cpu->r[5] = cpu->r[30];
|
|
/* 027F6EA0 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6EA0 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 027F6EA4 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6EA8 */ cpu->r[7] = cpu->r[31];
|
|
/* 027F6EAC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6EB0 */ cpu->r[6] = cpu->r[1] + 0x00000034u;
|
|
/* 027F6EB4 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 027F6EB4 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 027F6EB8 */ Gambit_fn_02176BAC(cpu);
|
|
/* 027F6EBC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6EC0 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6EC4 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F6EC8 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 027F6EC8 */ rbrew_write32(cpu->mem, _t51, cpu->r[31]);
|
|
/* 027F6ECC */ Gambit_fn_02176984(cpu);
|
|
/* 027F6ED0 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6ED4 */ Gambit_fn_02176920(cpu);
|
|
/* 027F6ED8 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6EDC */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6EE0 */ Gambit_fn_0217690C(cpu);
|
|
/* 027F6EE4 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6EE8 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 027F6EEC */ Gambit_fn_0217354C(cpu);
|
|
/* 027F6EF0 */ goto L_027F6F88;
|
|
L_027F6EF4: ; // 0x27f6ef4
|
|
/* 027F6EF4 */ cpu->r[0] = 0x00000001u;
|
|
/* 027F6EF8 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6EFC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6F00 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 027F6F00 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 027F6F04 */ Gambit_fn_021753B4(cpu);
|
|
/* 027F6F08 */ _t53 = cpu->r[3] + 0x00000000u;
|
|
/* 027F6F08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F6F0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 027F6F10 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6F10 */ _t55 = _t54 & 0x00000001u;
|
|
/* 027F6F10 */ if (_t55) goto L_027F6F14; else goto L_027F6F2C;
|
|
L_027F6F14: ; // 0x27f6f14
|
|
/* 027F6F14 */ cpu->r[0] = 0x00000001u;
|
|
/* 027F6F18 */ cpu->r[5] = cpu->r[31];
|
|
/* 027F6F1C */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6F20 */ cpu->r[4] = cpu->r[1] + 0x00000040u;
|
|
/* 027F6F24 */ _t56 = cpu->r[1] + 0x00000040u;
|
|
/* 027F6F24 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
/* 027F6F28 */ Gambit_fn_02176984(cpu);
|
|
L_027F6F2C: ; // 0x27f6f2c
|
|
/* 027F6F2C */ cpu->r[31] = 0x00000001u;
|
|
/* 027F6F30 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F6F34 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6F38 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F6F3C */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6F40 */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 027F6F40 */ rbrew_write32(cpu->mem, _t57, cpu->r[31]);
|
|
/* 027F6F44 */ Gambit_fn_02175F78(cpu);
|
|
/* 027F6F48 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F6F4C */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 027F6F4C */ rbrew_write32(cpu->mem, _t58, cpu->r[31]);
|
|
/* 027F6F50 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6F54 */ cpu->r[7] = 0x00000000u;
|
|
/* 027F6F58 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 027F6F5C */ cpu->r[6] = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F6F60 */ _t59 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F6F60 */ rbrew_write32(cpu->mem, _t59, cpu->r[28]);
|
|
/* 027F6F64 */ Gambit_fn_02176BAC(cpu);
|
|
L_027F6F68: ; // 0x27f6f68
|
|
/* 027F6F68 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6F6C */ Gambit_fn_02176920(cpu);
|
|
/* 027F6F70 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 027F6F74 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6F78 */ Gambit_fn_0217690C(cpu);
|
|
/* 027F6F7C */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 027F6F80 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F6F84 */ Gambit_fn_0217354C(cpu);
|
|
L_027F6F88: ; // 0x27f6f88
|
|
/* 027F6F88 */ cpu->r[12] = cpu->r[1] + 0x00010000u;
|
|
/* 027F6F8C */ _t60 = cpu->r[12] + 0xFFFFA5D0u;
|
|
/* 027F6F8C */ cpu->r[28] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027F6F90 */ _t61 = cpu->r[12] + 0xFFFFA5D4u;
|
|
/* 027F6F90 */ cpu->r[29] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F6F94 */ _t62 = cpu->r[12] + 0xFFFFA5E4u;
|
|
/* 027F6F94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 027F6F98 */ _t63 = cpu->r[12] + 0xFFFFA5DCu;
|
|
/* 027F6F98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F6F9C */ cpu->lr = cpu->r[0];
|
|
/* 027F6FA0 */ _t64 = cpu->r[12] + 0xFFFFA5D8u;
|
|
/* 027F6FA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F6FA4 */ _t65 = cpu->r[1] + 0x00000000u;
|
|
/* 027F6FA4 */ cpu->r[1] = rbrew_read32(cpu->mem, _t65);
|
|
/* 027F6FA8 */ return;
|
|
}
|
|
|
|
// fn_027F6FAC @ 0x27f6fac
|
|
void Gambit_fn_027F6FAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F6FAC: ; // 0x27f6fac
|
|
/* 027F6FAC */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F6FB0 */ _t0 = cpu->r[12] + 0xFFFF8624u;
|
|
/* 027F6FB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F6FB4 */ _t1 = cpu->r[12] + 0x00000028u;
|
|
/* 027F6FB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F6FB8 */ _t2 = cpu->r[12] + 0x00000028u;
|
|
/* 027F6FB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F6FBC */ return;
|
|
}
|
|
|
|
// fn_027F6FC0 @ 0x27f6fc0
|
|
void Gambit_fn_027F6FC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F6FC0: ; // 0x27f6fc0
|
|
/* 027F6FC0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F6FC4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F6FC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F6FC8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F6FC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F6FC8 */ cpu->r[1] = _t1;
|
|
/* 027F6FCC */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F6FD0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6FD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F6FD4 */ _t3 = cpu->r[3] + 0x000004B0u;
|
|
/* 027F6FD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F6FD8 */ cpu->lr = cpu->r[0];
|
|
/* 027F6FDC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6FE0 */ return;
|
|
}
|
|
|
|
// fn_027F6FC8 @ 0x27f6fc8
|
|
void Gambit_fn_027F6FC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F6FC8: ; // 0x27f6fc8
|
|
/* 027F6FC8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F6FC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6FC8 */ cpu->r[1] = _t0;
|
|
/* 027F6FCC */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F6FD0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6FD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F6FD4 */ _t2 = cpu->r[3] + 0x000004B0u;
|
|
/* 027F6FD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F6FD8 */ cpu->lr = cpu->r[0];
|
|
/* 027F6FDC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6FE0 */ return;
|
|
}
|
|
|
|
// fn_027F6FE4 @ 0x27f6fe4
|
|
void Gambit_fn_027F6FE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F6FE4: ; // 0x27f6fe4
|
|
/* 027F6FE4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F6FE8 */ cpu->r[5] = cpu->r[4];
|
|
/* 027F6FEC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F6FEC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F6FF0 */ cpu->r[0] = cpu->r[3];
|
|
/* 027F6FF4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F6FF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F6FF4 */ cpu->r[1] = _t1;
|
|
/* 027F6FF8 */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F6FFC */ cpu->r[4] = cpu->r[0];
|
|
/* 027F7000 */ Gambit_fn_0212AF44(cpu);
|
|
/* 027F7004 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F7008 */ cpu->lr = cpu->r[0];
|
|
/* 027F700C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7010 */ return;
|
|
}
|
|
|
|
// fn_027F6FF4 @ 0x27f6ff4
|
|
void Gambit_fn_027F6FF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F6FF4: ; // 0x27f6ff4
|
|
/* 027F6FF4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F6FF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F6FF4 */ cpu->r[1] = _t0;
|
|
/* 027F6FF8 */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F6FFC */ cpu->r[4] = cpu->r[0];
|
|
/* 027F7000 */ Gambit_fn_0212AF44(cpu);
|
|
/* 027F7004 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F7008 */ cpu->lr = cpu->r[0];
|
|
/* 027F700C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7010 */ return;
|
|
}
|
|
|
|
// fn_027F7014 @ 0x27f7014
|
|
void Gambit_fn_027F7014(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F7014: ; // 0x27f7014
|
|
/* 027F7014 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7018 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F7018 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F701C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F701C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F701C */ cpu->r[1] = _t1;
|
|
/* 027F7020 */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F7024 */ Gambit_fn_0212B064(cpu);
|
|
/* 027F7028 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7028 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F702C */ cpu->lr = cpu->r[0];
|
|
/* 027F7030 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7034 */ return;
|
|
}
|
|
|
|
// fn_027F701C @ 0x27f701c
|
|
void Gambit_fn_027F701C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F701C: ; // 0x27f701c
|
|
/* 027F701C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F701C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F701C */ cpu->r[1] = _t0;
|
|
/* 027F7020 */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F7024 */ Gambit_fn_0212B064(cpu);
|
|
/* 027F7028 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7028 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F702C */ cpu->lr = cpu->r[0];
|
|
/* 027F7030 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7034 */ return;
|
|
}
|
|
|
|
// fn_027F7038 @ 0x27f7038
|
|
void Gambit_fn_027F7038(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_02129078: ; // 0x2129078
|
|
/* 02129078 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02129078 */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0212907C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02129080 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02129080 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02129080 */ if (_t2) goto L_021290D0; else goto L_02129084;
|
|
L_02129084: ; // 0x2129084
|
|
/* 02129084 */ _t3 = cpu->r[3] + 0x00000044u;
|
|
/* 02129084 */ cpu->r[7] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02129088 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0212908C */ cpu->r[0] = cpu->r[7] + cpu->r[9];
|
|
/* 02129090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02129094 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02129094 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02129094 */ if (_t5) goto L_021290D0; else goto L_02129098;
|
|
L_02129098: ; // 0x2129098
|
|
/* 02129098 */ _t6 = cpu->r[4] + 0x00000000u;
|
|
/* 02129098 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
L_0212909C: ; // 0x212909c
|
|
/* 0212909C */ _t7 = cpu->r[7] + 0x00000000u;
|
|
/* 0212909C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 021290A0 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 021290A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 021290A4 */ _t9 = cpu->r[12] + 0x00000004u;
|
|
/* 021290A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 021290A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[10]);
|
|
/* 021290AC */ _t10 = cpu->r[4] + 0x00000004u;
|
|
/* 021290AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 021290B0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021290B0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 021290B0 */ if (_t12) goto L_021290B4; else goto L_021290C4;
|
|
L_021290B4: ; // 0x21290b4
|
|
/* 021290B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 021290B8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021290B8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 021290B8 */ if (_t14) goto L_021290BC; else goto L_021290C4;
|
|
L_021290BC: ; // 0x21290bc
|
|
/* 021290BC */ _t15 = cpu->r[12] + 0x00000010u;
|
|
/* 021290BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 021290C0 */ return;
|
|
L_021290C4: ; // 0x21290c4
|
|
/* 021290C4 */ cpu->r[7] = cpu->r[7] + 0x00000004u;
|
|
/* 021290C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 021290CC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021290CC */ _t17 = _t16 & 0x00000001u;
|
|
/* 021290CC */ if (_t17) goto L_021290D0; else goto L_0212909C;
|
|
L_021290D0: ; // 0x21290d0
|
|
/* 021290D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 021290D4 */ return;
|
|
L_027F7038: ; // 0x27f7038
|
|
/* 027F7038 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F703C */ _t18 = cpu->r[12] + 0xFFFF8624u;
|
|
/* 027F703C */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F7040 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F7044 */ _t19 = cpu->r[12] + 0x00000028u;
|
|
/* 027F7044 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F7048 */ goto L_02129078;
|
|
}
|
|
|
|
// fn_027F704C @ 0x27f704c
|
|
void Gambit_fn_027F704C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F704C: ; // 0x27f704c
|
|
/* 027F704C */ cpu->r[0] = cpu->lr;
|
|
/* 027F7050 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F7050 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F7054 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F7054 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F7054 */ cpu->r[1] = _t1;
|
|
/* 027F7058 */ Gambit_fn_027F59B8(cpu);
|
|
/* 027F705C */ Gambit_fn_027F7038(cpu);
|
|
/* 027F7060 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7060 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F7064 */ cpu->lr = cpu->r[0];
|
|
/* 027F7068 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F706C */ return;
|
|
}
|
|
|
|
// fn_027F7054 @ 0x27f7054
|
|
void Gambit_fn_027F7054(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F7054: ; // 0x27f7054
|
|
/* 027F7054 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F7054 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7054 */ cpu->r[1] = _t0;
|
|
/* 027F7058 */ Gambit_fn_027F59B8(cpu);
|
|
/* 027F705C */ Gambit_fn_027F7038(cpu);
|
|
/* 027F7060 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7060 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F7064 */ cpu->lr = cpu->r[0];
|
|
/* 027F7068 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F706C */ return;
|
|
}
|
|
|
|
// fn_027F7070 @ 0x27f7070
|
|
void Gambit_fn_027F7070(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_021290D8: ; // 0x21290d8
|
|
/* 021290D8 */ cpu->r[0] = cpu->lr;
|
|
/* 021290DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 021290DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 021290DC */ cpu->r[1] = _t0;
|
|
/* 021290E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 021290E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 021290E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 021290E8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 021290E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 021290EC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 021290EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 021290F0 */ Gambit_fn_027F5880(cpu);
|
|
/* 021290F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 021290F8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 021290F8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 021290F8 */ if (_t5) goto L_02129144; else goto L_021290FC;
|
|
L_021290FC: ; // 0x21290fc
|
|
/* 021290FC */ _t6 = cpu->r[31] + 0x00000068u;
|
|
/* 021290FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02129100 */ /* nop */
|
|
/* 02129104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02129108 */ cpu->r[30] = 0x00000000u;
|
|
/* 0212910C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0212910C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0212910C */ if (_t8) goto L_02129128; else goto L_02129110;
|
|
L_02129110: ; // 0x2129110
|
|
/* 02129110 */ Gambit_fn_027F5AD8(cpu);
|
|
/* 02129114 */ _t9 = cpu->r[31] + 0x00000068u;
|
|
/* 02129114 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02129118 */ /* nop */
|
|
/* 0212911C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 02129120 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02129120 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02129120 */ if (_t11) goto L_02129124; else goto L_02129128;
|
|
L_02129124: ; // 0x2129124
|
|
/* 02129124 */ cpu->r[30] = 0x00000001u;
|
|
L_02129128: ; // 0x2129128
|
|
/* 02129128 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02129128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0212912C */ cpu->r[3] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02129130 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02129130 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02129134 */ cpu->lr = cpu->r[0];
|
|
/* 02129138 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02129138 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0212913C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02129140 */ return;
|
|
L_02129144: ; // 0x2129144
|
|
/* 02129144 */ cpu->r[31] = 0x00000000u;
|
|
/* 02129148 */ Gambit_fn_027F5850(cpu);
|
|
/* 0212914C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02129150 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02129150 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02129150 */ if (_t16) goto L_02129160; else goto L_02129154;
|
|
L_02129154: ; // 0x2129154
|
|
/* 02129154 */ Gambit_fn_027F5B78(cpu);
|
|
/* 02129158 */ cpu->r[11] = rbrew_clz32(cpu->r[3]);
|
|
/* 0212915C */ cpu->r[31] = rbrew_rlwinm(cpu->r[11], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
L_02129160: ; // 0x2129160
|
|
/* 02129160 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02129160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02129164 */ cpu->r[3] = cpu->r[31];
|
|
/* 02129168 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02129168 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0212916C */ cpu->lr = cpu->r[0];
|
|
/* 02129170 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02129170 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02129174 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02129178 */ return;
|
|
L_027F7070: ; // 0x27f7070
|
|
/* 027F7070 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F7074 */ _t20 = cpu->r[12] + 0xFFFF8624u;
|
|
/* 027F7074 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F7078 */ _t21 = cpu->r[12] + 0x00000028u;
|
|
/* 027F7078 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F707C */ goto L_021290D8;
|
|
}
|
|
|
|
// fn_027F7080 @ 0x27f7080
|
|
void Gambit_fn_027F7080(CPUState* cpu) {
|
|
uint32_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_027F7080: ; // 0x27f7080
|
|
/* 027F7080 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7084 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F7084 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7084 */ cpu->r[1] = _t0;
|
|
/* 027F7088 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7088 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F708C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7090 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7090 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7094 */ Gambit_fn_027F704C(cpu);
|
|
/* 027F7098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F709C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F709C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F709C */ if (_t4) goto L_027F70C0; else goto L_027F70A0;
|
|
L_027F70A0: ; // 0x27f70a0
|
|
/* 027F70A0 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027F70A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F70A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F70A8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F70A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F70AC */ Gambit_fn_0212C544(cpu);
|
|
/* 027F70B0 */ Gambit_fn_027F7070(cpu);
|
|
/* 027F70B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F70B8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F70B8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F70B8 */ if (_t8) goto L_027F70EC; else goto L_027F70BC;
|
|
L_027F70BC: ; // 0x27f70bc
|
|
/* 027F70BC */ goto L_027F70D8;
|
|
L_027F70C0: ; // 0x27f70c0
|
|
/* 027F70C0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F70C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F70C4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027F70C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F70C8 */ cpu->lr = cpu->r[0];
|
|
/* 027F70CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F70D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F70D4 */ return;
|
|
L_027F70D8: ; // 0x27f70d8
|
|
/* 027F70D8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 027F70D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F70DC */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F70DC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027F70E0 */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F70E4 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F70E8 */ Gambit_fn_0212AC7C(cpu);
|
|
L_027F70EC: ; // 0x27f70ec
|
|
/* 027F70EC */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 027F70EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F70F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 027F70F4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F70F4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F70F4 */ if (_t15) goto L_027F7110; else goto L_027F70F8;
|
|
L_027F70F8: ; // 0x27f70f8
|
|
/* 027F70F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000005u);
|
|
/* 027F70FC */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F70FC */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F70FC */ if (_t17) goto L_027F7138; else goto L_027F7100;
|
|
L_027F7100: ; // 0x27f7100
|
|
/* 027F7100 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Cu);
|
|
/* 027F7104 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7104 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F7104 */ if (_t19) goto L_027F7108; else goto L_027F7120;
|
|
L_027F7108: ; // 0x27f7108
|
|
/* 027F7108 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F710C */ goto L_027F713C;
|
|
L_027F7110: ; // 0x27f7110
|
|
/* 027F7110 */ Gambit_fn_0200961C(cpu);
|
|
/* 027F7114 */ cpu->r[4] = 0x00000064u;
|
|
/* 027F7118 */ Gambit_fn_026FB9D0(cpu);
|
|
/* 027F711C */ goto L_027F7138;
|
|
L_027F7120: ; // 0x27f7120
|
|
/* 027F7120 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F7124 */ cpu->r[12] = cpu->r[12] + 0x00000743u;
|
|
/* 027F7128 */ _t20 = cpu->r[12] + cpu->r[0];
|
|
/* 027F7128 */ cpu->r[31] = rbrew_read8(cpu->mem, _t20);
|
|
/* 027F712C */ Gambit_fn_0200961C(cpu);
|
|
/* 027F7130 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F7134 */ Gambit_fn_026FB9D0(cpu);
|
|
L_027F7138: ; // 0x27f7138
|
|
/* 027F7138 */ cpu->r[3] = 0x00000001u;
|
|
L_027F713C: ; // 0x27f713c
|
|
/* 027F713C */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F713C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F7140 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7140 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F7144 */ cpu->lr = cpu->r[0];
|
|
/* 027F7148 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F714C */ return;
|
|
}
|
|
|
|
// fn_027F7084 @ 0x27f7084
|
|
void Gambit_fn_027F7084(CPUState* cpu) {
|
|
uint32_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_027F7084: ; // 0x27f7084
|
|
/* 027F7084 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F7084 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7084 */ cpu->r[1] = _t0;
|
|
/* 027F7088 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7088 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F708C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7090 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7090 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7094 */ Gambit_fn_027F704C(cpu);
|
|
/* 027F7098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F709C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F709C */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F709C */ if (_t4) goto L_027F70C0; else goto L_027F70A0;
|
|
L_027F70A0: ; // 0x27f70a0
|
|
/* 027F70A0 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 027F70A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F70A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F70A8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F70A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027F70AC */ Gambit_fn_0212C544(cpu);
|
|
/* 027F70B0 */ Gambit_fn_027F7070(cpu);
|
|
/* 027F70B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F70B8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F70B8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F70B8 */ if (_t8) goto L_027F70EC; else goto L_027F70BC;
|
|
L_027F70BC: ; // 0x27f70bc
|
|
/* 027F70BC */ goto L_027F70D8;
|
|
L_027F70C0: ; // 0x27f70c0
|
|
/* 027F70C0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F70C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F70C4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 027F70C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F70C8 */ cpu->lr = cpu->r[0];
|
|
/* 027F70CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F70D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F70D4 */ return;
|
|
L_027F70D8: ; // 0x27f70d8
|
|
/* 027F70D8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 027F70D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F70DC */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F70DC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027F70E0 */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F70E4 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F70E8 */ Gambit_fn_0212AC7C(cpu);
|
|
L_027F70EC: ; // 0x27f70ec
|
|
/* 027F70EC */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 027F70EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F70F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 027F70F4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F70F4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F70F4 */ if (_t15) goto L_027F7110; else goto L_027F70F8;
|
|
L_027F70F8: ; // 0x27f70f8
|
|
/* 027F70F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000005u);
|
|
/* 027F70FC */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F70FC */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F70FC */ if (_t17) goto L_027F7138; else goto L_027F7100;
|
|
L_027F7100: ; // 0x27f7100
|
|
/* 027F7100 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Cu);
|
|
/* 027F7104 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7104 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F7104 */ if (_t19) goto L_027F7108; else goto L_027F7120;
|
|
L_027F7108: ; // 0x27f7108
|
|
/* 027F7108 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F710C */ goto L_027F713C;
|
|
L_027F7110: ; // 0x27f7110
|
|
/* 027F7110 */ Gambit_fn_0200961C(cpu);
|
|
/* 027F7114 */ cpu->r[4] = 0x00000064u;
|
|
/* 027F7118 */ Gambit_fn_026FB9D0(cpu);
|
|
/* 027F711C */ goto L_027F7138;
|
|
L_027F7120: ; // 0x27f7120
|
|
/* 027F7120 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F7124 */ cpu->r[12] = cpu->r[12] + 0x00000743u;
|
|
/* 027F7128 */ _t20 = cpu->r[12] + cpu->r[0];
|
|
/* 027F7128 */ cpu->r[31] = rbrew_read8(cpu->mem, _t20);
|
|
/* 027F712C */ Gambit_fn_0200961C(cpu);
|
|
/* 027F7130 */ cpu->r[4] = cpu->r[31];
|
|
/* 027F7134 */ Gambit_fn_026FB9D0(cpu);
|
|
L_027F7138: ; // 0x27f7138
|
|
/* 027F7138 */ cpu->r[3] = 0x00000001u;
|
|
L_027F713C: ; // 0x27f713c
|
|
/* 027F713C */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F713C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F7140 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7140 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F7144 */ cpu->lr = cpu->r[0];
|
|
/* 027F7148 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F714C */ return;
|
|
}
|
|
|
|
// fn_027F7150 @ 0x27f7150
|
|
void Gambit_fn_027F7150(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_027F7150: ; // 0x27f7150
|
|
/* 027F7150 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7154 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F7154 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F7158 */ cpu->r[4] = cpu->r[3];
|
|
/* 027F715C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F715C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F715C */ cpu->r[1] = _t1;
|
|
/* 027F7160 */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F7164 */ Gambit_fn_0212AC8C(cpu);
|
|
/* 027F7168 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F716C */ cpu->lr = cpu->r[0];
|
|
/* 027F7170 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7174 */ return;
|
|
}
|
|
|
|
// fn_027F715C @ 0x27f715c
|
|
void Gambit_fn_027F715C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_027F715C: ; // 0x27f715c
|
|
/* 027F715C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F715C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F715C */ cpu->r[1] = _t0;
|
|
/* 027F7160 */ Gambit_fn_027F6FAC(cpu);
|
|
/* 027F7164 */ Gambit_fn_0212AC8C(cpu);
|
|
/* 027F7168 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F716C */ cpu->lr = cpu->r[0];
|
|
/* 027F7170 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7174 */ return;
|
|
}
|
|
|
|
// fn_027F7178 @ 0x27f7178
|
|
void Gambit_fn_027F7178(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F7178: ; // 0x27f7178
|
|
/* 027F7178 */ cpu->r[0] = cpu->lr;
|
|
/* 027F717C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F717C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F717C */ cpu->r[1] = _t0;
|
|
/* 027F7180 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7180 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7184 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7188 */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F718C */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027F718C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7190 */ _t3 = cpu->r[3] + 0x000044E8u;
|
|
/* 027F7190 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F7194 */ Gambit_fn_0217E4D0(cpu);
|
|
/* 027F7198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F719C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F719C */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F719C */ if (_t5) goto L_027F7200; else goto L_027F71A0;
|
|
L_027F71A0: ; // 0x27f71a0
|
|
/* 027F71A0 */ Gambit_fn_027F6A4C(cpu);
|
|
/* 027F71A4 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F71A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F71AC */ cpu->r[0] = cpu->r[0] + 0x00000750u;
|
|
/* 027F71B0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F71B0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F71B0 */ if (_t7) goto L_027F71BC; else goto L_027F71B4;
|
|
L_027F71B4: ; // 0x27f71b4
|
|
/* 027F71B4 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F71B8 */ cpu->r[0] = cpu->r[0] + 0x00000758u;
|
|
L_027F71BC: ; // 0x27f71bc
|
|
/* 027F71BC */ cpu->r[12] = 0x10110000u;
|
|
/* 027F71C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F71C4 */ cpu->r[12] = cpu->r[12] + 0x00000720u;
|
|
/* 027F71C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F71C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F71C8 */ if (_t9) goto L_027F71F0; else goto L_027F71CC;
|
|
L_027F71CC: ; // 0x27f71cc
|
|
/* 027F71CC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F71CC */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 027F71D0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F71D4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 027F71D4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027F71D8 */ Gambit_fn_027FAB58(cpu);
|
|
/* 027F71DC */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 027F71DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F71E0 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F71E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F71E4 */ cpu->lr = cpu->r[0];
|
|
/* 027F71E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F71EC */ return;
|
|
L_027F71F0: ; // 0x27f71f0
|
|
/* 027F71F0 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 027F71F0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 027F71F4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F71F8 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 027F71F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027F71FC */ Gambit_fn_027FAB30(cpu);
|
|
L_027F7200: ; // 0x27f7200
|
|
/* 027F7200 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 027F7200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F7204 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F7208 */ cpu->lr = cpu->r[0];
|
|
/* 027F720C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7210 */ return;
|
|
}
|
|
|
|
// fn_027F717C @ 0x27f717c
|
|
void Gambit_fn_027F717C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_027F717C: ; // 0x27f717c
|
|
/* 027F717C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F717C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F717C */ cpu->r[1] = _t0;
|
|
/* 027F7180 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7180 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7184 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7188 */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F718C */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 027F718C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7190 */ _t3 = cpu->r[3] + 0x000044E8u;
|
|
/* 027F7190 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F7194 */ Gambit_fn_0217E4D0(cpu);
|
|
/* 027F7198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F719C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F719C */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F719C */ if (_t5) goto L_027F7200; else goto L_027F71A0;
|
|
L_027F71A0: ; // 0x27f71a0
|
|
/* 027F71A0 */ Gambit_fn_027F6A4C(cpu);
|
|
/* 027F71A4 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F71A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F71AC */ cpu->r[0] = cpu->r[0] + 0x00000750u;
|
|
/* 027F71B0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F71B0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F71B0 */ if (_t7) goto L_027F71BC; else goto L_027F71B4;
|
|
L_027F71B4: ; // 0x27f71b4
|
|
/* 027F71B4 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F71B8 */ cpu->r[0] = cpu->r[0] + 0x00000758u;
|
|
L_027F71BC: ; // 0x27f71bc
|
|
/* 027F71BC */ cpu->r[12] = 0x10110000u;
|
|
/* 027F71C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F71C4 */ cpu->r[12] = cpu->r[12] + 0x00000720u;
|
|
/* 027F71C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F71C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F71C8 */ if (_t9) goto L_027F71F0; else goto L_027F71CC;
|
|
L_027F71CC: ; // 0x27f71cc
|
|
/* 027F71CC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F71CC */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 027F71D0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F71D4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 027F71D4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027F71D8 */ Gambit_fn_027FAB58(cpu);
|
|
/* 027F71DC */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 027F71DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F71E0 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F71E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F71E4 */ cpu->lr = cpu->r[0];
|
|
/* 027F71E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F71EC */ return;
|
|
L_027F71F0: ; // 0x27f71f0
|
|
/* 027F71F0 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 027F71F0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 027F71F4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F71F8 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 027F71F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 027F71FC */ Gambit_fn_027FAB30(cpu);
|
|
L_027F7200: ; // 0x27f7200
|
|
/* 027F7200 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 027F7200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F7204 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F7208 */ cpu->lr = cpu->r[0];
|
|
/* 027F720C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7210 */ return;
|
|
}
|
|
|
|
// fn_027F7214 @ 0x27f7214
|
|
void Gambit_fn_027F7214(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_027F7214: ; // 0x27f7214
|
|
/* 027F7214 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7218 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F7218 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7218 */ cpu->r[1] = _t0;
|
|
/* 027F721C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F721C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7220 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7224 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7224 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F7228 */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F722C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F722C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F7230 */ _t4 = cpu->r[3] + 0x000044E8u;
|
|
/* 027F7230 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F7234 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F7238 */ Gambit_fn_0217E4D0(cpu);
|
|
/* 027F723C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7240 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7240 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F7240 */ if (_t6) goto L_027F7270; else goto L_027F7244;
|
|
L_027F7244: ; // 0x27f7244
|
|
/* 027F7244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F7248 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F724C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F724C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F724C */ if (_t8) goto L_027F726C; else goto L_027F7250;
|
|
L_027F7250: ; // 0x27f7250
|
|
/* 027F7250 */ Gambit_fn_027FAB58(cpu);
|
|
/* 027F7254 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F7258 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7258 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F725C */ cpu->lr = cpu->r[0];
|
|
/* 027F7260 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7260 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F7264 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7268 */ return;
|
|
L_027F726C: ; // 0x27f726c
|
|
/* 027F726C */ Gambit_fn_027FAB30(cpu);
|
|
L_027F7270: ; // 0x27f7270
|
|
/* 027F7270 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7270 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F7274 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7274 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F7278 */ cpu->lr = cpu->r[0];
|
|
/* 027F727C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F727C */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F7280 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7284 */ return;
|
|
}
|
|
|
|
// fn_027F7218 @ 0x27f7218
|
|
void Gambit_fn_027F7218(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_027F7218: ; // 0x27f7218
|
|
/* 027F7218 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F7218 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7218 */ cpu->r[1] = _t0;
|
|
/* 027F721C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F721C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7220 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7224 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7224 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F7228 */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F722C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F722C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F7230 */ _t4 = cpu->r[3] + 0x000044E8u;
|
|
/* 027F7230 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F7234 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F7238 */ Gambit_fn_0217E4D0(cpu);
|
|
/* 027F723C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7240 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7240 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F7240 */ if (_t6) goto L_027F7270; else goto L_027F7244;
|
|
L_027F7244: ; // 0x27f7244
|
|
/* 027F7244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F7248 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F724C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F724C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F724C */ if (_t8) goto L_027F726C; else goto L_027F7250;
|
|
L_027F7250: ; // 0x27f7250
|
|
/* 027F7250 */ Gambit_fn_027FAB58(cpu);
|
|
/* 027F7254 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F7258 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7258 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F725C */ cpu->lr = cpu->r[0];
|
|
/* 027F7260 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7260 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F7264 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7268 */ return;
|
|
L_027F726C: ; // 0x27f726c
|
|
/* 027F726C */ Gambit_fn_027FAB30(cpu);
|
|
L_027F7270: ; // 0x27f7270
|
|
/* 027F7270 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7270 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F7274 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7274 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F7278 */ cpu->lr = cpu->r[0];
|
|
/* 027F727C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F727C */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F7280 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7284 */ return;
|
|
}
|
|
|
|
// fn_027F7288 @ 0x27f7288
|
|
void Gambit_fn_027F7288(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F69F8: ; // 0x27f69f8
|
|
/* 027F69F8 */ cpu->r[0] = cpu->lr;
|
|
/* 027F69FC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F69FC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F6A00 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F6A00 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F6A00 */ cpu->r[1] = _t1;
|
|
/* 027F6A04 */ Gambit_fn_027F692C(cpu);
|
|
/* 027F6A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F6A0C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F6A0C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F6A0C */ if (_t3) goto L_027F6A10; else goto L_027F6A24;
|
|
L_027F6A10: ; // 0x27f6a10
|
|
/* 027F6A10 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F6A14 */ cpu->lr = cpu->r[0];
|
|
/* 027F6A18 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A1C */ cpu->r[3] = 0x00000000u;
|
|
/* 027F6A20 */ return;
|
|
L_027F6A24: ; // 0x27f6a24
|
|
/* 027F6A24 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F6A28 */ _t5 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F6A28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F6A2C */ _t6 = cpu->r[12] + 0x00000018u;
|
|
/* 027F6A2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F6A30 */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 027F6A34 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F6A38 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F6A3C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F6A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F6A40 */ cpu->lr = cpu->r[0];
|
|
/* 027F6A44 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F6A48 */ return;
|
|
L_027F7288: ; // 0x27f7288
|
|
/* 027F7288 */ cpu->r[11] = 0x101C0000u;
|
|
/* 027F728C */ _t8 = cpu->r[11] + 0x0000134Cu;
|
|
/* 027F728C */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F7290 */ _t9 = cpu->r[11] + 0x0000015Du;
|
|
/* 027F7290 */ cpu->r[11] = rbrew_read8(cpu->mem, _t9);
|
|
/* 027F7294 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F729C */ _t10 = cpu->r[12] + 0x000045C4u;
|
|
/* 027F729C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F72A0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F72A0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F72A0 */ if (_t12) goto L_027F7338; else goto L_027F72A4;
|
|
L_027F72A4: ; // 0x27f72a4
|
|
/* 027F72A4 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 027F72A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F72A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 027F72AC */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F72AC */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F72AC */ if (_t15) goto L_027F72C4; else goto L_027F72B0;
|
|
L_027F72B0: ; // 0x27f72b0
|
|
/* 027F72B0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F72B0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F72B0 */ if (_t17) goto L_027F72F0; else goto L_027F72B4;
|
|
L_027F72B4: ; // 0x27f72b4
|
|
/* 027F72B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 027F72B8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F72B8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F72B8 */ if (_t19) goto L_027F7334; else goto L_027F72BC;
|
|
L_027F72BC: ; // 0x27f72bc
|
|
/* 027F72BC */ cpu->r[3] = 0x00000000u;
|
|
/* 027F72C0 */ return;
|
|
L_027F72C4: ; // 0x27f72c4
|
|
/* 027F72C4 */ _t20 = cpu->r[12] + 0x00000019u;
|
|
/* 027F72C4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t20);
|
|
/* 027F72C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F72CC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F72CC */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F72CC */ if (_t22) goto L_027F7334; else goto L_027F72D0;
|
|
L_027F72D0: ; // 0x27f72d0
|
|
/* 027F72D0 */ _t23 = cpu->r[12] + 0x00000018u;
|
|
/* 027F72D0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t23);
|
|
/* 027F72D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F72D8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F72D8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F72D8 */ if (_t25) goto L_027F7334; else goto L_027F72DC;
|
|
L_027F72DC: ; // 0x27f72dc
|
|
/* 027F72DC */ _t26 = cpu->r[12] + 0x000005DCu;
|
|
/* 027F72DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F72E0 */ cpu->r[9] = (uint32_t)(-(int32_t)cpu->r[0]);
|
|
/* 027F72E4 */ _t27 = ~cpu->r[0];
|
|
/* 027F72E4 */ cpu->r[10] = cpu->r[9] & _t27;
|
|
/* 027F72E8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[10], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F72EC */ return;
|
|
L_027F72F0: ; // 0x27f72f0
|
|
/* 027F72F0 */ _t28 = cpu->r[12] + 0x00000019u;
|
|
/* 027F72F0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t28);
|
|
/* 027F72F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F72F8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F72F8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 027F72F8 */ if (_t30) goto L_027F7334; else goto L_027F72FC;
|
|
L_027F72FC: ; // 0x27f72fc
|
|
/* 027F72FC */ _t31 = cpu->r[12] + 0x00000018u;
|
|
/* 027F72FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 027F7300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7304 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7304 */ _t33 = _t32 & 0x00000001u;
|
|
/* 027F7304 */ if (_t33) goto L_027F7334; else goto L_027F7308;
|
|
L_027F7308: ; // 0x27f7308
|
|
/* 027F7308 */ _t34 = cpu->r[12] + 0x000005DCu;
|
|
/* 027F7308 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F730C */ cpu->r[12] = cpu->r[12] + 0x000005D8u;
|
|
/* 027F7310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 027F7314 */ cpu->r[9] = 0x00000000u;
|
|
/* 027F7318 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7318 */ _t36 = _t35 & 0x00000001u;
|
|
/* 027F7318 */ if (_t36) goto L_027F731C; else goto L_027F732C;
|
|
L_027F731C: ; // 0x27f731c
|
|
/* 027F731C */ _t37 = cpu->r[12] + 0x00000018u;
|
|
/* 027F731C */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F7320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7324 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7324 */ _t39 = _t38 & 0x00000001u;
|
|
/* 027F7324 */ if (_t39) goto L_027F732C; else goto L_027F7328;
|
|
L_027F7328: ; // 0x27f7328
|
|
/* 027F7328 */ cpu->r[9] = 0x00000001u;
|
|
L_027F732C: ; // 0x27f732c
|
|
/* 027F732C */ cpu->r[3] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 027F7330 */ return;
|
|
L_027F7334: ; // 0x27f7334
|
|
/* 027F7334 */ goto L_027F69F8;
|
|
L_027F7338: ; // 0x27f7338
|
|
/* 027F7338 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F733C */ return;
|
|
}
|
|
|
|
// fn_027F7340 @ 0x27f7340
|
|
void Gambit_fn_027F7340(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F7340: ; // 0x27f7340
|
|
/* 027F7340 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7344 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F7344 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7344 */ cpu->r[1] = _t0;
|
|
/* 027F7348 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7348 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F734C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F734C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F7350 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7350 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F7354 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7358 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7358 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F735C */ _t5 = cpu->r[12] + 0x0000134Cu;
|
|
/* 027F735C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F7360 */ cpu->r[30] = 0x101C0000u;
|
|
/* 027F7364 */ cpu->r[11] = 0x101C0000u;
|
|
/* 027F7368 */ _t6 = cpu->r[12] + 0x0000015Du;
|
|
/* 027F7368 */ cpu->r[5] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027F736C */ cpu->r[29] = 0x00000000u;
|
|
/* 027F7370 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7374 */ _t7 = cpu->r[30] + 0x0000457Cu;
|
|
/* 027F7374 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F7378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F737C */ _t8 = cpu->r[11] + 0x000045C4u;
|
|
/* 027F737C */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F7380 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7380 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F7380 */ if (_t10) goto L_027F7384; else goto L_027F73C0;
|
|
L_027F7384: ; // 0x27f7384
|
|
/* 027F7384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7388 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F738C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F738C */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F738C */ if (_t12) goto L_027F7390; else goto L_027F73A0;
|
|
L_027F7390: ; // 0x27f7390
|
|
/* 027F7390 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F7394 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F7398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F739C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F739C */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F739C */ if (_t14) goto L_027F755C; else goto L_027F73A0;
|
|
L_027F73A0: ; // 0x27f73a0
|
|
/* 027F73A0 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 027F73A0 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 027F73A4 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F73A4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F73A8 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F73A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F73AC */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 027F73AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F73B0 */ cpu->lr = cpu->r[0];
|
|
/* 027F73B4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 027F73B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F73B8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F73BC */ return;
|
|
L_027F73C0: ; // 0x27f73c0
|
|
/* 027F73C0 */ _t20 = cpu->r[4] + 0x00000000u;
|
|
/* 027F73C0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F73C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000001u);
|
|
/* 027F73C8 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F73C8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F73C8 */ if (_t22) goto L_027F73E8; else goto L_027F73CC;
|
|
L_027F73CC: ; // 0x27f73cc
|
|
/* 027F73CC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73CC */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F73CC */ if (_t24) goto L_027F7454; else goto L_027F73D0;
|
|
L_027F73D0: ; // 0x27f73d0
|
|
/* 027F73D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000002u);
|
|
/* 027F73D4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73D4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F73D4 */ if (_t26) goto L_027F74CC; else goto L_027F73D8;
|
|
L_027F73D8: ; // 0x27f73d8
|
|
/* 027F73D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F73DC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F73E0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73E0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F73E0 */ if (_t28) goto L_027F7548; else goto L_027F73E4;
|
|
L_027F73E4: ; // 0x27f73e4
|
|
/* 027F73E4 */ goto L_027F7558;
|
|
L_027F73E8: ; // 0x27f73e8
|
|
/* 027F73E8 */ _t29 = cpu->r[11] + 0x00000019u;
|
|
/* 027F73E8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t29);
|
|
/* 027F73EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027F73F0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73F0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F73F0 */ if (_t31) goto L_027F753C; else goto L_027F73F4;
|
|
L_027F73F4: ; // 0x27f73f4
|
|
/* 027F73F4 */ _t32 = cpu->r[11] + 0x00000018u;
|
|
/* 027F73F4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t32);
|
|
/* 027F73F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 027F73FC */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73FC */ _t34 = _t33 & 0x00000001u;
|
|
/* 027F73FC */ if (_t34) goto L_027F753C; else goto L_027F7400;
|
|
L_027F7400: ; // 0x27f7400
|
|
/* 027F7400 */ _t35 = cpu->r[11] + 0x000005DCu;
|
|
/* 027F7400 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F7404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F7408 */ cpu->r[8] = cpu->r[11] + 0x000005D8u;
|
|
/* 027F740C */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F740C */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F740C */ if (_t37) goto L_027F7410; else goto L_027F753C;
|
|
L_027F7410: ; // 0x27f7410
|
|
/* 027F7410 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 027F7410 */ cpu->r[30] = rbrew_read8(cpu->mem, _t38);
|
|
/* 027F7414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7418 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F741C */ /* nop */
|
|
/* 027F7420 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7420 */ _t40 = _t39 & 0x00000001u;
|
|
/* 027F7420 */ if (_t40) goto L_027F7424; else goto L_027F7434;
|
|
L_027F7424: ; // 0x27f7424
|
|
/* 027F7424 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F7428 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F742C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7430 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7430 */ _t42 = _t41 & 0x00000001u;
|
|
/* 027F7430 */ if (_t42) goto L_027F755C; else goto L_027F7434;
|
|
L_027F7434: ; // 0x27f7434
|
|
/* 027F7434 */ _t43 = cpu->r[3] + 0x00000000u;
|
|
/* 027F7434 */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
/* 027F7438 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7438 */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F743C */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F743C */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F7440 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7440 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F7444 */ cpu->lr = cpu->r[0];
|
|
/* 027F7448 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 027F744C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7450 */ return;
|
|
L_027F7454: ; // 0x27f7454
|
|
/* 027F7454 */ _t48 = cpu->r[11] + 0x00000019u;
|
|
/* 027F7454 */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 027F7458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F745C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F745C */ _t50 = _t49 & 0x00000001u;
|
|
/* 027F745C */ if (_t50) goto L_027F753C; else goto L_027F7460;
|
|
L_027F7460: ; // 0x27f7460
|
|
/* 027F7460 */ _t51 = cpu->r[11] + 0x00000018u;
|
|
/* 027F7460 */ cpu->r[0] = rbrew_read8(cpu->mem, _t51);
|
|
/* 027F7464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7468 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7468 */ _t53 = _t52 & 0x00000001u;
|
|
/* 027F7468 */ if (_t53) goto L_027F753C; else goto L_027F746C;
|
|
L_027F746C: ; // 0x27f746c
|
|
/* 027F746C */ _t54 = cpu->r[11] + 0x000005DCu;
|
|
/* 027F746C */ cpu->r[5] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F7470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F7474 */ cpu->r[6] = cpu->r[11] + 0x000005D8u;
|
|
/* 027F7478 */ _t55 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7478 */ _t56 = _t55 & 0x00000001u;
|
|
/* 027F7478 */ if (_t56) goto L_027F747C; else goto L_027F753C;
|
|
L_027F747C: ; // 0x27f747c
|
|
/* 027F747C */ _t57 = cpu->r[6] + 0x00000018u;
|
|
/* 027F747C */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F7480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027F7484 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7484 */ _t59 = _t58 & 0x00000001u;
|
|
/* 027F7484 */ if (_t59) goto L_027F7488; else goto L_027F753C;
|
|
L_027F7488: ; // 0x27f7488
|
|
/* 027F7488 */ _t60 = cpu->r[6] + 0x00000014u;
|
|
/* 027F7488 */ cpu->r[30] = rbrew_read8(cpu->mem, _t60);
|
|
/* 027F748C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7490 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F7494 */ /* nop */
|
|
/* 027F7498 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7498 */ _t62 = _t61 & 0x00000001u;
|
|
/* 027F7498 */ if (_t62) goto L_027F749C; else goto L_027F74AC;
|
|
L_027F749C: ; // 0x27f749c
|
|
/* 027F749C */ cpu->r[3] = 0x00000004u;
|
|
/* 027F74A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F74A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F74A8 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F74A8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 027F74A8 */ if (_t64) goto L_027F755C; else goto L_027F74AC;
|
|
L_027F74AC: ; // 0x27f74ac
|
|
/* 027F74AC */ _t65 = cpu->r[3] + 0x00000000u;
|
|
/* 027F74AC */ rbrew_write32(cpu->mem, _t65, cpu->r[30]);
|
|
/* 027F74B0 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F74B0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F74B4 */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F74B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027F74B8 */ _t68 = cpu->r[1] + 0x00000010u;
|
|
/* 027F74B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F74BC */ cpu->lr = cpu->r[0];
|
|
/* 027F74C0 */ _t69 = cpu->r[1] + 0x00000014u;
|
|
/* 027F74C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F74C4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F74C8 */ return;
|
|
L_027F74CC: ; // 0x27f74cc
|
|
/* 027F74CC */ _t70 = cpu->r[30] + 0x0000001Eu;
|
|
/* 027F74CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t70);
|
|
/* 027F74D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F74D4 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F74D4 */ _t72 = _t71 & 0x00000001u;
|
|
/* 027F74D4 */ if (_t72) goto L_027F753C; else goto L_027F74D8;
|
|
L_027F74D8: ; // 0x27f74d8
|
|
/* 027F74D8 */ _t73 = cpu->r[30] + 0x0000001Cu;
|
|
/* 027F74D8 */ cpu->r[3] = rbrew_read16(cpu->mem, _t73);
|
|
/* 027F74DC */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F74E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F74E4 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F74E4 */ _t75 = _t74 & 0x00000001u;
|
|
/* 027F74E4 */ if (_t75) goto L_027F74E8; else goto L_027F753C;
|
|
L_027F74E8: ; // 0x27f74e8
|
|
/* 027F74E8 */ _t76 = cpu->r[30] + 0x00000050u;
|
|
/* 027F74E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 027F74EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F74F0 */ cpu->r[10] = cpu->r[30] + 0x0000004Cu;
|
|
/* 027F74F4 */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F74F4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 027F74F4 */ if (_t78) goto L_027F74F8; else goto L_027F753C;
|
|
L_027F74F8: ; // 0x27f74f8
|
|
/* 027F74F8 */ _t79 = cpu->r[10] + 0x00000000u;
|
|
/* 027F74F8 */ cpu->r[30] = rbrew_read8(cpu->mem, _t79);
|
|
/* 027F74FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7500 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F7504 */ /* nop */
|
|
/* 027F7508 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7508 */ _t81 = _t80 & 0x00000001u;
|
|
/* 027F7508 */ if (_t81) goto L_027F750C; else goto L_027F751C;
|
|
L_027F750C: ; // 0x27f750c
|
|
/* 027F750C */ cpu->r[3] = 0x00000004u;
|
|
/* 027F7510 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F7514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7518 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7518 */ _t83 = _t82 & 0x00000001u;
|
|
/* 027F7518 */ if (_t83) goto L_027F755C; else goto L_027F751C;
|
|
L_027F751C: ; // 0x27f751c
|
|
/* 027F751C */ _t84 = cpu->r[3] + 0x00000000u;
|
|
/* 027F751C */ rbrew_write32(cpu->mem, _t84, cpu->r[30]);
|
|
/* 027F7520 */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7520 */ cpu->r[29] = rbrew_read32(cpu->mem, _t85);
|
|
/* 027F7524 */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 027F7528 */ _t87 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7528 */ cpu->r[30] = rbrew_read32(cpu->mem, _t87);
|
|
/* 027F752C */ cpu->lr = cpu->r[0];
|
|
/* 027F7530 */ _t88 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7530 */ cpu->r[31] = rbrew_read32(cpu->mem, _t88);
|
|
/* 027F7534 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7538 */ return;
|
|
L_027F753C: ; // 0x27f753c
|
|
/* 027F753C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7540 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F7544 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7544 */ _t90 = _t89 & 0x00000001u;
|
|
/* 027F7544 */ if (_t90) goto L_027F7548; else goto L_027F7558;
|
|
L_027F7548: ; // 0x27f7548
|
|
/* 027F7548 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F754C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F7550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7554 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7554 */ _t92 = _t91 & 0x00000001u;
|
|
/* 027F7554 */ if (_t92) goto L_027F755C; else goto L_027F7558;
|
|
L_027F7558: ; // 0x27f7558
|
|
/* 027F7558 */ _t93 = cpu->r[3] + 0x00000000u;
|
|
/* 027F7558 */ rbrew_write32(cpu->mem, _t93, cpu->r[29]);
|
|
L_027F755C: ; // 0x27f755c
|
|
/* 027F755C */ _t94 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F755C */ cpu->r[29] = rbrew_read32(cpu->mem, _t94);
|
|
/* 027F7560 */ _t95 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 027F7564 */ _t96 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7564 */ cpu->r[30] = rbrew_read32(cpu->mem, _t96);
|
|
/* 027F7568 */ cpu->lr = cpu->r[0];
|
|
/* 027F756C */ _t97 = cpu->r[1] + 0x00000014u;
|
|
/* 027F756C */ cpu->r[31] = rbrew_read32(cpu->mem, _t97);
|
|
/* 027F7570 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7574 */ return;
|
|
}
|
|
|
|
// fn_027F7344 @ 0x27f7344
|
|
void Gambit_fn_027F7344(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F7344: ; // 0x27f7344
|
|
/* 027F7344 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F7344 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7344 */ cpu->r[1] = _t0;
|
|
/* 027F7348 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7348 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F734C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F734C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F7350 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7350 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F7354 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7358 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7358 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F735C */ _t5 = cpu->r[12] + 0x0000134Cu;
|
|
/* 027F735C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F7360 */ cpu->r[30] = 0x101C0000u;
|
|
/* 027F7364 */ cpu->r[11] = 0x101C0000u;
|
|
/* 027F7368 */ _t6 = cpu->r[12] + 0x0000015Du;
|
|
/* 027F7368 */ cpu->r[5] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027F736C */ cpu->r[29] = 0x00000000u;
|
|
/* 027F7370 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7374 */ _t7 = cpu->r[30] + 0x0000457Cu;
|
|
/* 027F7374 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F7378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F737C */ _t8 = cpu->r[11] + 0x000045C4u;
|
|
/* 027F737C */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F7380 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7380 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F7380 */ if (_t10) goto L_027F7384; else goto L_027F73C0;
|
|
L_027F7384: ; // 0x27f7384
|
|
/* 027F7384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7388 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F738C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F738C */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F738C */ if (_t12) goto L_027F7390; else goto L_027F73A0;
|
|
L_027F7390: ; // 0x27f7390
|
|
/* 027F7390 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F7394 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F7398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F739C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F739C */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F739C */ if (_t14) goto L_027F755C; else goto L_027F73A0;
|
|
L_027F73A0: ; // 0x27f73a0
|
|
/* 027F73A0 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 027F73A0 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 027F73A4 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F73A4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F73A8 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F73A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F73AC */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 027F73AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F73B0 */ cpu->lr = cpu->r[0];
|
|
/* 027F73B4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 027F73B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F73B8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F73BC */ return;
|
|
L_027F73C0: ; // 0x27f73c0
|
|
/* 027F73C0 */ _t20 = cpu->r[4] + 0x00000000u;
|
|
/* 027F73C0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F73C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000001u);
|
|
/* 027F73C8 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F73C8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F73C8 */ if (_t22) goto L_027F73E8; else goto L_027F73CC;
|
|
L_027F73CC: ; // 0x27f73cc
|
|
/* 027F73CC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73CC */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F73CC */ if (_t24) goto L_027F7454; else goto L_027F73D0;
|
|
L_027F73D0: ; // 0x27f73d0
|
|
/* 027F73D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000002u);
|
|
/* 027F73D4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73D4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F73D4 */ if (_t26) goto L_027F74CC; else goto L_027F73D8;
|
|
L_027F73D8: ; // 0x27f73d8
|
|
/* 027F73D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F73DC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F73E0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73E0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F73E0 */ if (_t28) goto L_027F7548; else goto L_027F73E4;
|
|
L_027F73E4: ; // 0x27f73e4
|
|
/* 027F73E4 */ goto L_027F7558;
|
|
L_027F73E8: ; // 0x27f73e8
|
|
/* 027F73E8 */ _t29 = cpu->r[11] + 0x00000019u;
|
|
/* 027F73E8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t29);
|
|
/* 027F73EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027F73F0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73F0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F73F0 */ if (_t31) goto L_027F753C; else goto L_027F73F4;
|
|
L_027F73F4: ; // 0x27f73f4
|
|
/* 027F73F4 */ _t32 = cpu->r[11] + 0x00000018u;
|
|
/* 027F73F4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t32);
|
|
/* 027F73F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 027F73FC */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F73FC */ _t34 = _t33 & 0x00000001u;
|
|
/* 027F73FC */ if (_t34) goto L_027F753C; else goto L_027F7400;
|
|
L_027F7400: ; // 0x27f7400
|
|
/* 027F7400 */ _t35 = cpu->r[11] + 0x000005DCu;
|
|
/* 027F7400 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F7404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F7408 */ cpu->r[8] = cpu->r[11] + 0x000005D8u;
|
|
/* 027F740C */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F740C */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F740C */ if (_t37) goto L_027F7410; else goto L_027F753C;
|
|
L_027F7410: ; // 0x27f7410
|
|
/* 027F7410 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 027F7410 */ cpu->r[30] = rbrew_read8(cpu->mem, _t38);
|
|
/* 027F7414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7418 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F741C */ /* nop */
|
|
/* 027F7420 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7420 */ _t40 = _t39 & 0x00000001u;
|
|
/* 027F7420 */ if (_t40) goto L_027F7424; else goto L_027F7434;
|
|
L_027F7424: ; // 0x27f7424
|
|
/* 027F7424 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F7428 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F742C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7430 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7430 */ _t42 = _t41 & 0x00000001u;
|
|
/* 027F7430 */ if (_t42) goto L_027F755C; else goto L_027F7434;
|
|
L_027F7434: ; // 0x27f7434
|
|
/* 027F7434 */ _t43 = cpu->r[3] + 0x00000000u;
|
|
/* 027F7434 */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
/* 027F7438 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7438 */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F743C */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F743C */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F7440 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7440 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F7444 */ cpu->lr = cpu->r[0];
|
|
/* 027F7448 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 027F744C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7450 */ return;
|
|
L_027F7454: ; // 0x27f7454
|
|
/* 027F7454 */ _t48 = cpu->r[11] + 0x00000019u;
|
|
/* 027F7454 */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 027F7458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F745C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F745C */ _t50 = _t49 & 0x00000001u;
|
|
/* 027F745C */ if (_t50) goto L_027F753C; else goto L_027F7460;
|
|
L_027F7460: ; // 0x27f7460
|
|
/* 027F7460 */ _t51 = cpu->r[11] + 0x00000018u;
|
|
/* 027F7460 */ cpu->r[0] = rbrew_read8(cpu->mem, _t51);
|
|
/* 027F7464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7468 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7468 */ _t53 = _t52 & 0x00000001u;
|
|
/* 027F7468 */ if (_t53) goto L_027F753C; else goto L_027F746C;
|
|
L_027F746C: ; // 0x27f746c
|
|
/* 027F746C */ _t54 = cpu->r[11] + 0x000005DCu;
|
|
/* 027F746C */ cpu->r[5] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F7470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F7474 */ cpu->r[6] = cpu->r[11] + 0x000005D8u;
|
|
/* 027F7478 */ _t55 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7478 */ _t56 = _t55 & 0x00000001u;
|
|
/* 027F7478 */ if (_t56) goto L_027F747C; else goto L_027F753C;
|
|
L_027F747C: ; // 0x27f747c
|
|
/* 027F747C */ _t57 = cpu->r[6] + 0x00000018u;
|
|
/* 027F747C */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F7480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 027F7484 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7484 */ _t59 = _t58 & 0x00000001u;
|
|
/* 027F7484 */ if (_t59) goto L_027F7488; else goto L_027F753C;
|
|
L_027F7488: ; // 0x27f7488
|
|
/* 027F7488 */ _t60 = cpu->r[6] + 0x00000014u;
|
|
/* 027F7488 */ cpu->r[30] = rbrew_read8(cpu->mem, _t60);
|
|
/* 027F748C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7490 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F7494 */ /* nop */
|
|
/* 027F7498 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7498 */ _t62 = _t61 & 0x00000001u;
|
|
/* 027F7498 */ if (_t62) goto L_027F749C; else goto L_027F74AC;
|
|
L_027F749C: ; // 0x27f749c
|
|
/* 027F749C */ cpu->r[3] = 0x00000004u;
|
|
/* 027F74A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F74A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F74A8 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F74A8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 027F74A8 */ if (_t64) goto L_027F755C; else goto L_027F74AC;
|
|
L_027F74AC: ; // 0x27f74ac
|
|
/* 027F74AC */ _t65 = cpu->r[3] + 0x00000000u;
|
|
/* 027F74AC */ rbrew_write32(cpu->mem, _t65, cpu->r[30]);
|
|
/* 027F74B0 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F74B0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F74B4 */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F74B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027F74B8 */ _t68 = cpu->r[1] + 0x00000010u;
|
|
/* 027F74B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F74BC */ cpu->lr = cpu->r[0];
|
|
/* 027F74C0 */ _t69 = cpu->r[1] + 0x00000014u;
|
|
/* 027F74C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F74C4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F74C8 */ return;
|
|
L_027F74CC: ; // 0x27f74cc
|
|
/* 027F74CC */ _t70 = cpu->r[30] + 0x0000001Eu;
|
|
/* 027F74CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t70);
|
|
/* 027F74D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F74D4 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F74D4 */ _t72 = _t71 & 0x00000001u;
|
|
/* 027F74D4 */ if (_t72) goto L_027F753C; else goto L_027F74D8;
|
|
L_027F74D8: ; // 0x27f74d8
|
|
/* 027F74D8 */ _t73 = cpu->r[30] + 0x0000001Cu;
|
|
/* 027F74D8 */ cpu->r[3] = rbrew_read16(cpu->mem, _t73);
|
|
/* 027F74DC */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F74E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F74E4 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F74E4 */ _t75 = _t74 & 0x00000001u;
|
|
/* 027F74E4 */ if (_t75) goto L_027F74E8; else goto L_027F753C;
|
|
L_027F74E8: ; // 0x27f74e8
|
|
/* 027F74E8 */ _t76 = cpu->r[30] + 0x00000050u;
|
|
/* 027F74E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 027F74EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F74F0 */ cpu->r[10] = cpu->r[30] + 0x0000004Cu;
|
|
/* 027F74F4 */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F74F4 */ _t78 = _t77 & 0x00000001u;
|
|
/* 027F74F4 */ if (_t78) goto L_027F74F8; else goto L_027F753C;
|
|
L_027F74F8: ; // 0x27f74f8
|
|
/* 027F74F8 */ _t79 = cpu->r[10] + 0x00000000u;
|
|
/* 027F74F8 */ cpu->r[30] = rbrew_read8(cpu->mem, _t79);
|
|
/* 027F74FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7500 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F7504 */ /* nop */
|
|
/* 027F7508 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7508 */ _t81 = _t80 & 0x00000001u;
|
|
/* 027F7508 */ if (_t81) goto L_027F750C; else goto L_027F751C;
|
|
L_027F750C: ; // 0x27f750c
|
|
/* 027F750C */ cpu->r[3] = 0x00000004u;
|
|
/* 027F7510 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F7514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7518 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7518 */ _t83 = _t82 & 0x00000001u;
|
|
/* 027F7518 */ if (_t83) goto L_027F755C; else goto L_027F751C;
|
|
L_027F751C: ; // 0x27f751c
|
|
/* 027F751C */ _t84 = cpu->r[3] + 0x00000000u;
|
|
/* 027F751C */ rbrew_write32(cpu->mem, _t84, cpu->r[30]);
|
|
/* 027F7520 */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7520 */ cpu->r[29] = rbrew_read32(cpu->mem, _t85);
|
|
/* 027F7524 */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 027F7528 */ _t87 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7528 */ cpu->r[30] = rbrew_read32(cpu->mem, _t87);
|
|
/* 027F752C */ cpu->lr = cpu->r[0];
|
|
/* 027F7530 */ _t88 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7530 */ cpu->r[31] = rbrew_read32(cpu->mem, _t88);
|
|
/* 027F7534 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7538 */ return;
|
|
L_027F753C: ; // 0x27f753c
|
|
/* 027F753C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7540 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F7544 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7544 */ _t90 = _t89 & 0x00000001u;
|
|
/* 027F7544 */ if (_t90) goto L_027F7548; else goto L_027F7558;
|
|
L_027F7548: ; // 0x27f7548
|
|
/* 027F7548 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F754C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F7550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7554 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7554 */ _t92 = _t91 & 0x00000001u;
|
|
/* 027F7554 */ if (_t92) goto L_027F755C; else goto L_027F7558;
|
|
L_027F7558: ; // 0x27f7558
|
|
/* 027F7558 */ _t93 = cpu->r[3] + 0x00000000u;
|
|
/* 027F7558 */ rbrew_write32(cpu->mem, _t93, cpu->r[29]);
|
|
L_027F755C: ; // 0x27f755c
|
|
/* 027F755C */ _t94 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F755C */ cpu->r[29] = rbrew_read32(cpu->mem, _t94);
|
|
/* 027F7560 */ _t95 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 027F7564 */ _t96 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7564 */ cpu->r[30] = rbrew_read32(cpu->mem, _t96);
|
|
/* 027F7568 */ cpu->lr = cpu->r[0];
|
|
/* 027F756C */ _t97 = cpu->r[1] + 0x00000014u;
|
|
/* 027F756C */ cpu->r[31] = rbrew_read32(cpu->mem, _t97);
|
|
/* 027F7570 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7574 */ return;
|
|
}
|
|
|
|
// fn_027F7578 @ 0x27f7578
|
|
void Gambit_fn_027F7578(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61;
|
|
|
|
L_027F7578: ; // 0x27f7578
|
|
/* 027F7578 */ cpu->r[0] = cpu->lr;
|
|
/* 027F757C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F757C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F757C */ cpu->r[1] = _t0;
|
|
/* 027F7580 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7580 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F7584 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7584 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F7588 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F758C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F758C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F7590 */ _t4 = cpu->r[12] + 0x0000134Cu;
|
|
/* 027F7590 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F7594 */ cpu->r[11] = 0x101C0000u;
|
|
/* 027F7598 */ _t5 = cpu->r[12] + 0x0000015Du;
|
|
/* 027F7598 */ cpu->r[10] = rbrew_read8(cpu->mem, _t5);
|
|
/* 027F759C */ cpu->r[30] = cpu->r[3];
|
|
/* 027F75A0 */ cpu->r[31] = 0x101C0000u;
|
|
/* 027F75A4 */ _t6 = cpu->r[11] + 0x000045C4u;
|
|
/* 027F75A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F75A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F75AC */ _t7 = cpu->r[31] + 0x0000457Cu;
|
|
/* 027F75AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F75B0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75B0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F75B0 */ if (_t9) goto L_027F76B4; else goto L_027F75B4;
|
|
L_027F75B4: ; // 0x27f75b4
|
|
/* 027F75B4 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 027F75B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F75B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 027F75BC */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F75BC */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F75BC */ if (_t12) goto L_027F75D4; else goto L_027F75C0;
|
|
L_027F75C0: ; // 0x27f75c0
|
|
/* 027F75C0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75C0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F75C0 */ if (_t14) goto L_027F7618; else goto L_027F75C4;
|
|
L_027F75C4: ; // 0x27f75c4
|
|
/* 027F75C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000002u);
|
|
/* 027F75C8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75C8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F75C8 */ if (_t16) goto L_027F766C; else goto L_027F75CC;
|
|
L_027F75CC: ; // 0x27f75cc
|
|
/* 027F75CC */ cpu->r[3] = 0x00000000u;
|
|
/* 027F75D0 */ goto L_027F76B8;
|
|
L_027F75D4: ; // 0x27f75d4
|
|
/* 027F75D4 */ _t17 = cpu->r[11] + 0x00000019u;
|
|
/* 027F75D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 027F75D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F75DC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75DC */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F75DC */ if (_t19) goto L_027F76B4; else goto L_027F75E0;
|
|
L_027F75E0: ; // 0x27f75e0
|
|
/* 027F75E0 */ _t20 = cpu->r[11] + 0x00000018u;
|
|
/* 027F75E0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t20);
|
|
/* 027F75E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F75E8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75E8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F75E8 */ if (_t22) goto L_027F76B4; else goto L_027F75EC;
|
|
L_027F75EC: ; // 0x27f75ec
|
|
/* 027F75EC */ _t23 = cpu->r[11] + 0x000005DCu;
|
|
/* 027F75EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F75F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F75F4 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F75F4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F75F4 */ if (_t25) goto L_027F75F8; else goto L_027F76B4;
|
|
L_027F75F8: ; // 0x27f75f8
|
|
/* 027F75F8 */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 027F75F8 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 027F75FC */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 027F75FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F7600 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7600 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027F7604 */ cpu->lr = cpu->r[0];
|
|
/* 027F7608 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7608 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F760C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7610 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7614 */ return;
|
|
L_027F7618: ; // 0x27f7618
|
|
/* 027F7618 */ _t30 = cpu->r[11] + 0x00000019u;
|
|
/* 027F7618 */ cpu->r[12] = rbrew_read8(cpu->mem, _t30);
|
|
/* 027F761C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F7620 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7620 */ _t32 = _t31 & 0x00000001u;
|
|
/* 027F7620 */ if (_t32) goto L_027F76B4; else goto L_027F7624;
|
|
L_027F7624: ; // 0x27f7624
|
|
/* 027F7624 */ _t33 = cpu->r[11] + 0x00000018u;
|
|
/* 027F7624 */ cpu->r[0] = rbrew_read8(cpu->mem, _t33);
|
|
/* 027F7628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F762C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F762C */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F762C */ if (_t35) goto L_027F76B4; else goto L_027F7630;
|
|
L_027F7630: ; // 0x27f7630
|
|
/* 027F7630 */ _t36 = cpu->r[11] + 0x000005DCu;
|
|
/* 027F7630 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F7634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7638 */ cpu->r[12] = cpu->r[11] + 0x000005D8u;
|
|
/* 027F763C */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F763C */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F763C */ if (_t38) goto L_027F7640; else goto L_027F76B4;
|
|
L_027F7640: ; // 0x27f7640
|
|
/* 027F7640 */ _t39 = cpu->r[12] + 0x00000018u;
|
|
/* 027F7640 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F7644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F7648 */ _t40 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7648 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027F7648 */ if (_t41) goto L_027F764C; else goto L_027F76B4;
|
|
L_027F764C: ; // 0x27f764c
|
|
/* 027F764C */ _t42 = cpu->r[30] + 0x00000000u;
|
|
/* 027F764C */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 027F7650 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7650 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F7654 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7654 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F7658 */ cpu->lr = cpu->r[0];
|
|
/* 027F765C */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F765C */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F7660 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7664 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7668 */ return;
|
|
L_027F766C: ; // 0x27f766c
|
|
/* 027F766C */ _t46 = cpu->r[31] + 0x0000001Eu;
|
|
/* 027F766C */ cpu->r[12] = rbrew_read8(cpu->mem, _t46);
|
|
/* 027F7670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F7674 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7674 */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F7674 */ if (_t48) goto L_027F76B4; else goto L_027F7678;
|
|
L_027F7678: ; // 0x27f7678
|
|
/* 027F7678 */ _t49 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F7678 */ cpu->r[3] = rbrew_read16(cpu->mem, _t49);
|
|
/* 027F767C */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F7680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7684 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7684 */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F7684 */ if (_t51) goto L_027F7688; else goto L_027F76B4;
|
|
L_027F7688: ; // 0x27f7688
|
|
/* 027F7688 */ _t52 = cpu->r[31] + 0x00000050u;
|
|
/* 027F7688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F768C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7690 */ _t53 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7690 */ _t54 = _t53 & 0x00000001u;
|
|
/* 027F7690 */ if (_t54) goto L_027F7694; else goto L_027F76B4;
|
|
L_027F7694: ; // 0x27f7694
|
|
/* 027F7694 */ _t55 = cpu->r[30] + 0x00000000u;
|
|
/* 027F7694 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 027F7698 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027F769C */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 027F769C */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F76A0 */ cpu->lr = cpu->r[0];
|
|
/* 027F76A4 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F76A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 027F76A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F76AC */ cpu->r[3] = 0x00000001u;
|
|
/* 027F76B0 */ return;
|
|
L_027F76B4: ; // 0x27f76b4
|
|
/* 027F76B4 */ cpu->r[3] = 0x00000000u;
|
|
L_027F76B8: ; // 0x27f76b8
|
|
/* 027F76B8 */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 027F76B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 027F76BC */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 027F76BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027F76C0 */ cpu->lr = cpu->r[0];
|
|
/* 027F76C4 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F76C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F76C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F76CC */ return;
|
|
}
|
|
|
|
// fn_027F757C @ 0x27f757c
|
|
void Gambit_fn_027F757C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61;
|
|
|
|
L_027F757C: ; // 0x27f757c
|
|
/* 027F757C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F757C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F757C */ cpu->r[1] = _t0;
|
|
/* 027F7580 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7580 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F7584 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7584 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F7588 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F758C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F758C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F7590 */ _t4 = cpu->r[12] + 0x0000134Cu;
|
|
/* 027F7590 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F7594 */ cpu->r[11] = 0x101C0000u;
|
|
/* 027F7598 */ _t5 = cpu->r[12] + 0x0000015Du;
|
|
/* 027F7598 */ cpu->r[10] = rbrew_read8(cpu->mem, _t5);
|
|
/* 027F759C */ cpu->r[30] = cpu->r[3];
|
|
/* 027F75A0 */ cpu->r[31] = 0x101C0000u;
|
|
/* 027F75A4 */ _t6 = cpu->r[11] + 0x000045C4u;
|
|
/* 027F75A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F75A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F75AC */ _t7 = cpu->r[31] + 0x0000457Cu;
|
|
/* 027F75AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F75B0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75B0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F75B0 */ if (_t9) goto L_027F76B4; else goto L_027F75B4;
|
|
L_027F75B4: ; // 0x27f75b4
|
|
/* 027F75B4 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 027F75B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F75B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 027F75BC */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F75BC */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F75BC */ if (_t12) goto L_027F75D4; else goto L_027F75C0;
|
|
L_027F75C0: ; // 0x27f75c0
|
|
/* 027F75C0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75C0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F75C0 */ if (_t14) goto L_027F7618; else goto L_027F75C4;
|
|
L_027F75C4: ; // 0x27f75c4
|
|
/* 027F75C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000002u);
|
|
/* 027F75C8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75C8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F75C8 */ if (_t16) goto L_027F766C; else goto L_027F75CC;
|
|
L_027F75CC: ; // 0x27f75cc
|
|
/* 027F75CC */ cpu->r[3] = 0x00000000u;
|
|
/* 027F75D0 */ goto L_027F76B8;
|
|
L_027F75D4: ; // 0x27f75d4
|
|
/* 027F75D4 */ _t17 = cpu->r[11] + 0x00000019u;
|
|
/* 027F75D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 027F75D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F75DC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75DC */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F75DC */ if (_t19) goto L_027F76B4; else goto L_027F75E0;
|
|
L_027F75E0: ; // 0x27f75e0
|
|
/* 027F75E0 */ _t20 = cpu->r[11] + 0x00000018u;
|
|
/* 027F75E0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t20);
|
|
/* 027F75E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F75E8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F75E8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F75E8 */ if (_t22) goto L_027F76B4; else goto L_027F75EC;
|
|
L_027F75EC: ; // 0x27f75ec
|
|
/* 027F75EC */ _t23 = cpu->r[11] + 0x000005DCu;
|
|
/* 027F75EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F75F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F75F4 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F75F4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F75F4 */ if (_t25) goto L_027F75F8; else goto L_027F76B4;
|
|
L_027F75F8: ; // 0x27f75f8
|
|
/* 027F75F8 */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 027F75F8 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 027F75FC */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 027F75FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F7600 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7600 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027F7604 */ cpu->lr = cpu->r[0];
|
|
/* 027F7608 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7608 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F760C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7610 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7614 */ return;
|
|
L_027F7618: ; // 0x27f7618
|
|
/* 027F7618 */ _t30 = cpu->r[11] + 0x00000019u;
|
|
/* 027F7618 */ cpu->r[12] = rbrew_read8(cpu->mem, _t30);
|
|
/* 027F761C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F7620 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7620 */ _t32 = _t31 & 0x00000001u;
|
|
/* 027F7620 */ if (_t32) goto L_027F76B4; else goto L_027F7624;
|
|
L_027F7624: ; // 0x27f7624
|
|
/* 027F7624 */ _t33 = cpu->r[11] + 0x00000018u;
|
|
/* 027F7624 */ cpu->r[0] = rbrew_read8(cpu->mem, _t33);
|
|
/* 027F7628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F762C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F762C */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F762C */ if (_t35) goto L_027F76B4; else goto L_027F7630;
|
|
L_027F7630: ; // 0x27f7630
|
|
/* 027F7630 */ _t36 = cpu->r[11] + 0x000005DCu;
|
|
/* 027F7630 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F7634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7638 */ cpu->r[12] = cpu->r[11] + 0x000005D8u;
|
|
/* 027F763C */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F763C */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F763C */ if (_t38) goto L_027F7640; else goto L_027F76B4;
|
|
L_027F7640: ; // 0x27f7640
|
|
/* 027F7640 */ _t39 = cpu->r[12] + 0x00000018u;
|
|
/* 027F7640 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F7644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F7648 */ _t40 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7648 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027F7648 */ if (_t41) goto L_027F764C; else goto L_027F76B4;
|
|
L_027F764C: ; // 0x27f764c
|
|
/* 027F764C */ _t42 = cpu->r[30] + 0x00000000u;
|
|
/* 027F764C */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 027F7650 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7650 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F7654 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7654 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F7658 */ cpu->lr = cpu->r[0];
|
|
/* 027F765C */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F765C */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F7660 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7664 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7668 */ return;
|
|
L_027F766C: ; // 0x27f766c
|
|
/* 027F766C */ _t46 = cpu->r[31] + 0x0000001Eu;
|
|
/* 027F766C */ cpu->r[12] = rbrew_read8(cpu->mem, _t46);
|
|
/* 027F7670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F7674 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7674 */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F7674 */ if (_t48) goto L_027F76B4; else goto L_027F7678;
|
|
L_027F7678: ; // 0x27f7678
|
|
/* 027F7678 */ _t49 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F7678 */ cpu->r[3] = rbrew_read16(cpu->mem, _t49);
|
|
/* 027F767C */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F7680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7684 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7684 */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F7684 */ if (_t51) goto L_027F7688; else goto L_027F76B4;
|
|
L_027F7688: ; // 0x27f7688
|
|
/* 027F7688 */ _t52 = cpu->r[31] + 0x00000050u;
|
|
/* 027F7688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F768C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7690 */ _t53 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7690 */ _t54 = _t53 & 0x00000001u;
|
|
/* 027F7690 */ if (_t54) goto L_027F7694; else goto L_027F76B4;
|
|
L_027F7694: ; // 0x27f7694
|
|
/* 027F7694 */ _t55 = cpu->r[30] + 0x00000000u;
|
|
/* 027F7694 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 027F7698 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7698 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027F769C */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 027F769C */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F76A0 */ cpu->lr = cpu->r[0];
|
|
/* 027F76A4 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F76A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 027F76A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F76AC */ cpu->r[3] = 0x00000001u;
|
|
/* 027F76B0 */ return;
|
|
L_027F76B4: ; // 0x27f76b4
|
|
/* 027F76B4 */ cpu->r[3] = 0x00000000u;
|
|
L_027F76B8: ; // 0x27f76b8
|
|
/* 027F76B8 */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 027F76B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 027F76BC */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 027F76BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027F76C0 */ cpu->lr = cpu->r[0];
|
|
/* 027F76C4 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F76C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F76C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F76CC */ return;
|
|
}
|
|
|
|
// fn_027F76D0 @ 0x27f76d0
|
|
void Gambit_fn_027F76D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71;
|
|
|
|
L_027F76D0: ; // 0x27f76d0
|
|
/* 027F76D0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F76D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F76D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F76D4 */ cpu->r[1] = _t0;
|
|
/* 027F76D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F76D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F76DC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027F76DC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F76E0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F76E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F76E4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F76E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F76E8 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F76EC */ cpu->r[9] = 0x101C0000u;
|
|
/* 027F76F0 */ _t5 = cpu->r[4] + 0x00000000u;
|
|
/* 027F76F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F76F4 */ cpu->r[30] = cpu->r[5];
|
|
/* 027F76F8 */ cpu->r[31] = 0x101C0000u;
|
|
/* 027F76FC */ _t6 = cpu->r[9] + 0x000045C4u;
|
|
/* 027F76FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F7700 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 027F7704 */ _t7 = cpu->r[31] + 0x0000457Cu;
|
|
/* 027F7704 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F7708 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7708 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F7708 */ if (_t9) goto L_027F7720; else goto L_027F770C;
|
|
L_027F770C: ; // 0x27f770c
|
|
/* 027F770C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F770C */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F770C */ if (_t11) goto L_027F7774; else goto L_027F7710;
|
|
L_027F7710: ; // 0x27f7710
|
|
/* 027F7710 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000002u);
|
|
/* 027F7714 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7714 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F7714 */ if (_t13) goto L_027F77D4; else goto L_027F7718;
|
|
L_027F7718: ; // 0x27f7718
|
|
/* 027F7718 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F771C */ goto L_027F7848;
|
|
L_027F7720: ; // 0x27f7720
|
|
/* 027F7720 */ _t14 = cpu->r[9] + 0x00000019u;
|
|
/* 027F7720 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14);
|
|
/* 027F7724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F7728 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7728 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F7728 */ if (_t16) goto L_027F7844; else goto L_027F772C;
|
|
L_027F772C: ; // 0x27f772c
|
|
/* 027F772C */ _t17 = cpu->r[9] + 0x00000018u;
|
|
/* 027F772C */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 027F7730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7734 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7734 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F7734 */ if (_t19) goto L_027F7844; else goto L_027F7738;
|
|
L_027F7738: ; // 0x27f7738
|
|
/* 027F7738 */ _t20 = cpu->r[9] + 0x000005DCu;
|
|
/* 027F7738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F773C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7740 */ cpu->r[10] = cpu->r[9] + 0x000005D8u;
|
|
/* 027F7744 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7744 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F7744 */ if (_t22) goto L_027F7748; else goto L_027F7844;
|
|
L_027F7748: ; // 0x27f7748
|
|
/* 027F7748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 027F774C */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F774C */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F774C */ if (_t24) goto L_027F7750; else goto L_027F7844;
|
|
L_027F7750: ; // 0x27f7750
|
|
/* 027F7750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 027F7754 */ cpu->r[11] = cpu->r[10] + 0x00000008u;
|
|
/* 027F7758 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7758 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F7758 */ if (_t26) goto L_027F775C; else goto L_027F7764;
|
|
L_027F775C: ; // 0x27f775c
|
|
/* 027F775C */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7760 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_027F7764: ; // 0x27f7764
|
|
/* 027F7764 */ _t27 = cpu->r[11] + 0x00000000u;
|
|
/* 027F7764 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F7768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 027F776C */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F776C */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F776C */ if (_t29) goto L_027F7844; else goto L_027F7770;
|
|
L_027F7770: ; // 0x27f7770
|
|
/* 027F7770 */ goto L_027F7820;
|
|
L_027F7774: ; // 0x27f7774
|
|
/* 027F7774 */ _t30 = cpu->r[9] + 0x00000019u;
|
|
/* 027F7774 */ cpu->r[11] = rbrew_read8(cpu->mem, _t30);
|
|
/* 027F7778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F777C */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F777C */ _t32 = _t31 & 0x00000001u;
|
|
/* 027F777C */ if (_t32) goto L_027F7844; else goto L_027F7780;
|
|
L_027F7780: ; // 0x27f7780
|
|
/* 027F7780 */ _t33 = cpu->r[9] + 0x00000018u;
|
|
/* 027F7780 */ cpu->r[12] = rbrew_read8(cpu->mem, _t33);
|
|
/* 027F7784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F7788 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7788 */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F7788 */ if (_t35) goto L_027F7844; else goto L_027F778C;
|
|
L_027F778C: ; // 0x27f778c
|
|
/* 027F778C */ _t36 = cpu->r[9] + 0x000005DCu;
|
|
/* 027F778C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F7790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7794 */ cpu->r[12] = cpu->r[9] + 0x000005D8u;
|
|
/* 027F7798 */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7798 */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F7798 */ if (_t38) goto L_027F779C; else goto L_027F7844;
|
|
L_027F779C: ; // 0x27f779c
|
|
/* 027F779C */ _t39 = cpu->r[12] + 0x00000018u;
|
|
/* 027F779C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F77A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F77A4 */ _t40 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F77A4 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027F77A4 */ if (_t41) goto L_027F77A8; else goto L_027F7844;
|
|
L_027F77A8: ; // 0x27f77a8
|
|
/* 027F77A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 027F77AC */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F77AC */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F77AC */ if (_t43) goto L_027F77B0; else goto L_027F7844;
|
|
L_027F77B0: ; // 0x27f77b0
|
|
/* 027F77B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 027F77B4 */ cpu->r[10] = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F77B8 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F77B8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F77B8 */ if (_t45) goto L_027F77BC; else goto L_027F77C4;
|
|
L_027F77BC: ; // 0x27f77bc
|
|
/* 027F77BC */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F77C0 */ cpu->r[10] = cpu->r[10] + cpu->r[11];
|
|
L_027F77C4: ; // 0x27f77c4
|
|
/* 027F77C4 */ _t46 = cpu->r[10] + 0x00000000u;
|
|
/* 027F77C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F77C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 027F77CC */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F77CC */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F77CC */ if (_t48) goto L_027F7844; else goto L_027F77D0;
|
|
L_027F77D0: ; // 0x27f77d0
|
|
/* 027F77D0 */ goto L_027F7820;
|
|
L_027F77D4: ; // 0x27f77d4
|
|
/* 027F77D4 */ _t49 = cpu->r[31] + 0x0000001Eu;
|
|
/* 027F77D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t49);
|
|
/* 027F77D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F77DC */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F77DC */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F77DC */ if (_t51) goto L_027F7844; else goto L_027F77E0;
|
|
L_027F77E0: ; // 0x27f77e0
|
|
/* 027F77E0 */ _t52 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F77E0 */ cpu->r[3] = rbrew_read16(cpu->mem, _t52);
|
|
/* 027F77E4 */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F77E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F77EC */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F77EC */ _t54 = _t53 & 0x00000001u;
|
|
/* 027F77EC */ if (_t54) goto L_027F77F0; else goto L_027F7844;
|
|
L_027F77F0: ; // 0x27f77f0
|
|
/* 027F77F0 */ _t55 = cpu->r[31] + 0x00000050u;
|
|
/* 027F77F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F77F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F77F8 */ cpu->r[9] = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F77FC */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F77FC */ _t57 = _t56 & 0x00000001u;
|
|
/* 027F77FC */ if (_t57) goto L_027F7800; else goto L_027F7844;
|
|
L_027F7800: ; // 0x27f7800
|
|
/* 027F7800 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 027F7804 */ cpu->r[12] = cpu->r[9] + 0x00000008u;
|
|
/* 027F7808 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7808 */ _t59 = _t58 & 0x00000001u;
|
|
/* 027F7808 */ if (_t59) goto L_027F780C; else goto L_027F7814;
|
|
L_027F780C: ; // 0x27f780c
|
|
/* 027F780C */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7810 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_027F7814: ; // 0x27f7814
|
|
/* 027F7814 */ _t60 = cpu->r[12] + 0x00000000u;
|
|
/* 027F7814 */ cpu->r[9] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027F7818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 027F781C */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F781C */ _t62 = _t61 & 0x00000001u;
|
|
/* 027F781C */ if (_t62) goto L_027F7844; else goto L_027F7820;
|
|
L_027F7820: ; // 0x27f7820
|
|
/* 027F7820 */ _t63 = cpu->r[29] + 0x00000000u;
|
|
/* 027F7820 */ rbrew_write32(cpu->mem, _t63, cpu->r[9]);
|
|
/* 027F7824 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7824 */ cpu->r[29] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F7828 */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 027F782C */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 027F782C */ cpu->r[30] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F7830 */ cpu->lr = cpu->r[0];
|
|
/* 027F7834 */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027F7838 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F783C */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7840 */ return;
|
|
L_027F7844: ; // 0x27f7844
|
|
/* 027F7844 */ cpu->r[3] = 0x00000000u;
|
|
L_027F7848: ; // 0x27f7848
|
|
/* 027F7848 */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7848 */ cpu->r[29] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F784C */ _t69 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F784C */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F7850 */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7850 */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 027F7854 */ cpu->lr = cpu->r[0];
|
|
/* 027F7858 */ _t71 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7858 */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 027F785C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7860 */ return;
|
|
}
|
|
|
|
// fn_027F76D4 @ 0x27f76d4
|
|
void Gambit_fn_027F76D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71;
|
|
|
|
L_027F76D4: ; // 0x27f76d4
|
|
/* 027F76D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F76D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F76D4 */ cpu->r[1] = _t0;
|
|
/* 027F76D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F76D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F76DC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027F76DC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F76E0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F76E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F76E4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F76E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F76E8 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F76EC */ cpu->r[9] = 0x101C0000u;
|
|
/* 027F76F0 */ _t5 = cpu->r[4] + 0x00000000u;
|
|
/* 027F76F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F76F4 */ cpu->r[30] = cpu->r[5];
|
|
/* 027F76F8 */ cpu->r[31] = 0x101C0000u;
|
|
/* 027F76FC */ _t6 = cpu->r[9] + 0x000045C4u;
|
|
/* 027F76FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F7700 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 027F7704 */ _t7 = cpu->r[31] + 0x0000457Cu;
|
|
/* 027F7704 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F7708 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7708 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F7708 */ if (_t9) goto L_027F7720; else goto L_027F770C;
|
|
L_027F770C: ; // 0x27f770c
|
|
/* 027F770C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F770C */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F770C */ if (_t11) goto L_027F7774; else goto L_027F7710;
|
|
L_027F7710: ; // 0x27f7710
|
|
/* 027F7710 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000002u);
|
|
/* 027F7714 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7714 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F7714 */ if (_t13) goto L_027F77D4; else goto L_027F7718;
|
|
L_027F7718: ; // 0x27f7718
|
|
/* 027F7718 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F771C */ goto L_027F7848;
|
|
L_027F7720: ; // 0x27f7720
|
|
/* 027F7720 */ _t14 = cpu->r[9] + 0x00000019u;
|
|
/* 027F7720 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14);
|
|
/* 027F7724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F7728 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7728 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F7728 */ if (_t16) goto L_027F7844; else goto L_027F772C;
|
|
L_027F772C: ; // 0x27f772c
|
|
/* 027F772C */ _t17 = cpu->r[9] + 0x00000018u;
|
|
/* 027F772C */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 027F7730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7734 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7734 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F7734 */ if (_t19) goto L_027F7844; else goto L_027F7738;
|
|
L_027F7738: ; // 0x27f7738
|
|
/* 027F7738 */ _t20 = cpu->r[9] + 0x000005DCu;
|
|
/* 027F7738 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F773C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7740 */ cpu->r[10] = cpu->r[9] + 0x000005D8u;
|
|
/* 027F7744 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7744 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F7744 */ if (_t22) goto L_027F7748; else goto L_027F7844;
|
|
L_027F7748: ; // 0x27f7748
|
|
/* 027F7748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 027F774C */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F774C */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F774C */ if (_t24) goto L_027F7750; else goto L_027F7844;
|
|
L_027F7750: ; // 0x27f7750
|
|
/* 027F7750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 027F7754 */ cpu->r[11] = cpu->r[10] + 0x00000008u;
|
|
/* 027F7758 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7758 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F7758 */ if (_t26) goto L_027F775C; else goto L_027F7764;
|
|
L_027F775C: ; // 0x27f775c
|
|
/* 027F775C */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7760 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_027F7764: ; // 0x27f7764
|
|
/* 027F7764 */ _t27 = cpu->r[11] + 0x00000000u;
|
|
/* 027F7764 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F7768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 027F776C */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F776C */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F776C */ if (_t29) goto L_027F7844; else goto L_027F7770;
|
|
L_027F7770: ; // 0x27f7770
|
|
/* 027F7770 */ goto L_027F7820;
|
|
L_027F7774: ; // 0x27f7774
|
|
/* 027F7774 */ _t30 = cpu->r[9] + 0x00000019u;
|
|
/* 027F7774 */ cpu->r[11] = rbrew_read8(cpu->mem, _t30);
|
|
/* 027F7778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F777C */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F777C */ _t32 = _t31 & 0x00000001u;
|
|
/* 027F777C */ if (_t32) goto L_027F7844; else goto L_027F7780;
|
|
L_027F7780: ; // 0x27f7780
|
|
/* 027F7780 */ _t33 = cpu->r[9] + 0x00000018u;
|
|
/* 027F7780 */ cpu->r[12] = rbrew_read8(cpu->mem, _t33);
|
|
/* 027F7784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 027F7788 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7788 */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F7788 */ if (_t35) goto L_027F7844; else goto L_027F778C;
|
|
L_027F778C: ; // 0x27f778c
|
|
/* 027F778C */ _t36 = cpu->r[9] + 0x000005DCu;
|
|
/* 027F778C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F7790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7794 */ cpu->r[12] = cpu->r[9] + 0x000005D8u;
|
|
/* 027F7798 */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7798 */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F7798 */ if (_t38) goto L_027F779C; else goto L_027F7844;
|
|
L_027F779C: ; // 0x27f779c
|
|
/* 027F779C */ _t39 = cpu->r[12] + 0x00000018u;
|
|
/* 027F779C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F77A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F77A4 */ _t40 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F77A4 */ _t41 = _t40 & 0x00000001u;
|
|
/* 027F77A4 */ if (_t41) goto L_027F77A8; else goto L_027F7844;
|
|
L_027F77A8: ; // 0x27f77a8
|
|
/* 027F77A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 027F77AC */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F77AC */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F77AC */ if (_t43) goto L_027F77B0; else goto L_027F7844;
|
|
L_027F77B0: ; // 0x27f77b0
|
|
/* 027F77B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 027F77B4 */ cpu->r[10] = cpu->r[12] + 0x0000001Cu;
|
|
/* 027F77B8 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F77B8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F77B8 */ if (_t45) goto L_027F77BC; else goto L_027F77C4;
|
|
L_027F77BC: ; // 0x27f77bc
|
|
/* 027F77BC */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F77C0 */ cpu->r[10] = cpu->r[10] + cpu->r[11];
|
|
L_027F77C4: ; // 0x27f77c4
|
|
/* 027F77C4 */ _t46 = cpu->r[10] + 0x00000000u;
|
|
/* 027F77C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F77C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 027F77CC */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F77CC */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F77CC */ if (_t48) goto L_027F7844; else goto L_027F77D0;
|
|
L_027F77D0: ; // 0x27f77d0
|
|
/* 027F77D0 */ goto L_027F7820;
|
|
L_027F77D4: ; // 0x27f77d4
|
|
/* 027F77D4 */ _t49 = cpu->r[31] + 0x0000001Eu;
|
|
/* 027F77D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t49);
|
|
/* 027F77D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F77DC */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F77DC */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F77DC */ if (_t51) goto L_027F7844; else goto L_027F77E0;
|
|
L_027F77E0: ; // 0x27f77e0
|
|
/* 027F77E0 */ _t52 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F77E0 */ cpu->r[3] = rbrew_read16(cpu->mem, _t52);
|
|
/* 027F77E4 */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F77E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F77EC */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F77EC */ _t54 = _t53 & 0x00000001u;
|
|
/* 027F77EC */ if (_t54) goto L_027F77F0; else goto L_027F7844;
|
|
L_027F77F0: ; // 0x27f77f0
|
|
/* 027F77F0 */ _t55 = cpu->r[31] + 0x00000050u;
|
|
/* 027F77F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F77F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 027F77F8 */ cpu->r[9] = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F77FC */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F77FC */ _t57 = _t56 & 0x00000001u;
|
|
/* 027F77FC */ if (_t57) goto L_027F7800; else goto L_027F7844;
|
|
L_027F7800: ; // 0x27f7800
|
|
/* 027F7800 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 027F7804 */ cpu->r[12] = cpu->r[9] + 0x00000008u;
|
|
/* 027F7808 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7808 */ _t59 = _t58 & 0x00000001u;
|
|
/* 027F7808 */ if (_t59) goto L_027F780C; else goto L_027F7814;
|
|
L_027F780C: ; // 0x27f780c
|
|
/* 027F780C */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7810 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_027F7814: ; // 0x27f7814
|
|
/* 027F7814 */ _t60 = cpu->r[12] + 0x00000000u;
|
|
/* 027F7814 */ cpu->r[9] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027F7818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 027F781C */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F781C */ _t62 = _t61 & 0x00000001u;
|
|
/* 027F781C */ if (_t62) goto L_027F7844; else goto L_027F7820;
|
|
L_027F7820: ; // 0x27f7820
|
|
/* 027F7820 */ _t63 = cpu->r[29] + 0x00000000u;
|
|
/* 027F7820 */ rbrew_write32(cpu->mem, _t63, cpu->r[9]);
|
|
/* 027F7824 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7824 */ cpu->r[29] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F7828 */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 027F782C */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 027F782C */ cpu->r[30] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F7830 */ cpu->lr = cpu->r[0];
|
|
/* 027F7834 */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027F7838 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F783C */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7840 */ return;
|
|
L_027F7844: ; // 0x27f7844
|
|
/* 027F7844 */ cpu->r[3] = 0x00000000u;
|
|
L_027F7848: ; // 0x27f7848
|
|
/* 027F7848 */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7848 */ cpu->r[29] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F784C */ _t69 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F784C */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F7850 */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7850 */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 027F7854 */ cpu->lr = cpu->r[0];
|
|
/* 027F7858 */ _t71 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7858 */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 027F785C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7860 */ return;
|
|
}
|
|
|
|
// fn_027F7864 @ 0x27f7864
|
|
void Gambit_fn_027F7864(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190;
|
|
|
|
L_027F7864: ; // 0x27f7864
|
|
/* 027F7864 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7868 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F7868 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7868 */ cpu->r[1] = _t0;
|
|
/* 027F786C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F786C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7870 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7874 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7874 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7878 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 027F7878 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F787C */ cpu->r[31] = 0x101C0000u;
|
|
/* 027F7880 */ _t4 = cpu->r[12] + 0x000045C4u;
|
|
/* 027F7880 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F7884 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 027F7888 */ _t5 = cpu->r[31] + 0x0000457Cu;
|
|
/* 027F7888 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F788C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F788C */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F788C */ if (_t7) goto L_027F78A4; else goto L_027F7890;
|
|
L_027F7890: ; // 0x27f7890
|
|
/* 027F7890 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7890 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F7890 */ if (_t9) goto L_027F7A50; else goto L_027F7894;
|
|
L_027F7894: ; // 0x27f7894
|
|
/* 027F7894 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000002u);
|
|
/* 027F7898 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7898 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F7898 */ if (_t11) goto L_027F7C08; else goto L_027F789C;
|
|
L_027F789C: ; // 0x27f789c
|
|
/* 027F789C */ cpu->r[3] = 0x00000000u;
|
|
/* 027F78A0 */ goto L_027F7DBC;
|
|
L_027F78A4: ; // 0x27f78a4
|
|
/* 027F78A4 */ _t12 = cpu->r[12] + 0x00000019u;
|
|
/* 027F78A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027F78A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F78AC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F78AC */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F78AC */ if (_t14) goto L_027F7DB8; else goto L_027F78B0;
|
|
L_027F78B0: ; // 0x27f78b0
|
|
/* 027F78B0 */ _t15 = cpu->r[12] + 0x00000018u;
|
|
/* 027F78B0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t15);
|
|
/* 027F78B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F78B8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F78B8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F78B8 */ if (_t17) goto L_027F7DB8; else goto L_027F78BC;
|
|
L_027F78BC: ; // 0x27f78bc
|
|
/* 027F78BC */ _t18 = cpu->r[12] + 0x000005DCu;
|
|
/* 027F78BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F78C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F78C4 */ cpu->r[31] = cpu->r[12] + 0x000005D8u;
|
|
/* 027F78C8 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F78C8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F78C8 */ if (_t20) goto L_027F78CC; else goto L_027F7DB8;
|
|
L_027F78CC: ; // 0x27f78cc
|
|
/* 027F78CC */ cpu->r[3] = 0x00000000u;
|
|
/* 027F78D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F78D4 */ cpu->r[5] = cpu->r[31] + 0x00000008u;
|
|
/* 027F78D8 */ goto L_027F78F0;
|
|
L_027F78DC: ; // 0x27f78dc
|
|
/* 027F78DC */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 027F78DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F78E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[6]);
|
|
/* 027F78E4 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F78E4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F78E4 */ if (_t23) goto L_027F78E8; else goto L_027F7958;
|
|
L_027F78E8: ; // 0x27f78e8
|
|
/* 027F78E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F78EC */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F78EC */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F78EC */ if (_t25) goto L_027F78F0; else goto L_027F7900;
|
|
L_027F78F0: ; // 0x27f78f0
|
|
/* 027F78F0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F78F4 */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 027F78F8 */ cpu->r[11] = cpu->r[4] + cpu->r[7];
|
|
/* 027F78FC */ goto L_027F7904;
|
|
L_027F7900: ; // 0x27f7900
|
|
/* 027F7900 */ cpu->r[11] = cpu->r[1] + 0x00000008u;
|
|
L_027F7904: ; // 0x27f7904
|
|
/* 027F7904 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F7908 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7908 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F7908 */ if (_t27) goto L_027F790C; else goto L_027F792C;
|
|
L_027F790C: ; // 0x27f790c
|
|
/* 027F790C */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7910 */ cpu->r[6] = cpu->r[5] + cpu->r[8];
|
|
/* 027F7914 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7918 */ _t28 = cpu->r[6] + 0x00000003u;
|
|
/* 027F7918 */ cpu->r[9] = rbrew_read8(cpu->mem, _t28);
|
|
/* 027F791C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7920 */ _t29 = cpu->r[11] + 0x00000000u;
|
|
/* 027F7920 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 027F7924 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7924 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F7924 */ if (_t31) goto L_027F7940; else goto L_027F7928;
|
|
L_027F7928: ; // 0x27f7928
|
|
/* 027F7928 */ goto L_027F797C;
|
|
L_027F792C: ; // 0x27f792c
|
|
/* 027F792C */ _t32 = cpu->r[5] + 0x00000003u;
|
|
/* 027F792C */ cpu->r[9] = rbrew_read8(cpu->mem, _t32);
|
|
/* 027F7930 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7938 */ _t33 = cpu->r[11] + 0x00000000u;
|
|
/* 027F7938 */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 027F793C */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F793C */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F793C */ if (_t35) goto L_027F7940; else goto L_027F797C;
|
|
L_027F7940: ; // 0x27f7940
|
|
/* 027F7940 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 027F7940 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F7944 */ cpu->r[10] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7948 */ cpu->r[9] = 0x000000FFu;
|
|
/* 027F794C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[11]);
|
|
/* 027F7950 */ cpu->r[11] = cpu->r[12] + cpu->r[10];
|
|
/* 027F7954 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7954 */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F7954 */ if (_t38) goto L_027F78E8; else goto L_027F7958;
|
|
L_027F7958: ; // 0x27f7958
|
|
/* 027F7958 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F795C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7960 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7960 */ _t40 = _t39 & 0x00000001u;
|
|
/* 027F7960 */ if (_t40) goto L_027F7964; else goto L_027F7968;
|
|
L_027F7964: ; // 0x27f7964
|
|
/* 027F7964 */ cpu->r[7] = cpu->r[11];
|
|
L_027F7968: ; // 0x27f7968
|
|
/* 027F7968 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F796C */ _t41 = cpu->r[7] + 0x00000000u;
|
|
/* 027F796C */ rbrew_write32(cpu->mem, _t41, cpu->r[9]);
|
|
/* 027F7970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7974 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 027F7978 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7978 */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F7978 */ if (_t43) goto L_027F78DC; else goto L_027F797C;
|
|
L_027F797C: ; // 0x27f797c
|
|
/* 027F797C */ cpu->r[5] = 0x00000001u;
|
|
/* 027F7980 */ cpu->r[11] = 0x00000002u;
|
|
/* 027F7984 */ cpu->r[7] = cpu->r[5];
|
|
/* 027F7988 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F798C */ cpu->r[8] = 0x00000000u;
|
|
L_027F7990: ; // 0x27f7990
|
|
/* 027F7990 */ cpu->r[9] = cpu->r[8] + 0x00000001u;
|
|
/* 027F7994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 027F7998 */ cpu->r[0] = cpu->r[5] + 0x00000001u;
|
|
/* 027F799C */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F799C */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F799C */ if (_t45) goto L_027F79A4; else goto L_027F79A0;
|
|
L_027F79A0: ; // 0x27f79a0
|
|
/* 027F79A0 */ cpu->r[0] = 0x00000001u;
|
|
L_027F79A4: ; // 0x27f79a4
|
|
/* 027F79A4 */ cpu->ctr = cpu->r[0];
|
|
L_027F79A8: ; // 0x27f79a8
|
|
/* 027F79A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 027F79AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F79B0 */ cpu->r[12] = cpu->r[6] + 0xFFFFFFFCu;
|
|
/* 027F79B4 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F79B4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F79B4 */ if (_t47) goto L_027F79B8; else goto L_027F79BC;
|
|
L_027F79B8: ; // 0x27f79b8
|
|
/* 027F79B8 */ cpu->r[4] = cpu->r[6];
|
|
L_027F79BC: ; // 0x27f79bc
|
|
/* 027F79BC */ _t48 = cpu->r[12] + 0x00000000u;
|
|
/* 027F79BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 027F79C0 */ _t49 = cpu->r[4] + 0x00000000u;
|
|
/* 027F79C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F79C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 027F79C8 */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F79C8 */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F79C8 */ if (_t51) goto L_027F79CC; else goto L_027F7A04;
|
|
L_027F79CC: ; // 0x27f79cc
|
|
/* 027F79CC */ cpu->r[9] = cpu->r[6] + 0xFFFFFFFCu;
|
|
/* 027F79D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 027F79D4 */ cpu->r[10] = cpu->r[1] + 0x00000008u;
|
|
/* 027F79D8 */ _t52 = cpu->r[6] + 0xFFFFFFFCu;
|
|
/* 027F79D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F79DC */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F79DC */ _t54 = _t53 & 0x00000001u;
|
|
/* 027F79DC */ if (_t54) goto L_027F79E0; else goto L_027F79E4;
|
|
L_027F79E0: ; // 0x27f79e0
|
|
/* 027F79E0 */ cpu->r[10] = cpu->r[6];
|
|
L_027F79E4: ; // 0x27f79e4
|
|
/* 027F79E4 */ _t55 = cpu->r[10] + 0x00000000u;
|
|
/* 027F79E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F79E8 */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 027F79EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 027F79F0 */ _t56 = cpu->r[9] + 0x00000000u;
|
|
/* 027F79F0 */ rbrew_write32(cpu->mem, _t56, cpu->r[4]);
|
|
/* 027F79F4 */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F79F4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 027F79F4 */ if (_t58) goto L_027F79F8; else goto L_027F79FC;
|
|
L_027F79F8: ; // 0x27f79f8
|
|
/* 027F79F8 */ cpu->r[12] = cpu->r[6];
|
|
L_027F79FC: ; // 0x27f79fc
|
|
/* 027F79FC */ _t59 = cpu->r[12] + 0x00000000u;
|
|
/* 027F79FC */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 027F7A00 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F7A00 */ _t60 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F7A00 */ _t61 = _t60 >> (0x00000002u & 31u);
|
|
/* 027F7A00 */ _t62 = _t61 & 0x00000001u;
|
|
/* 027F7A00 */ if (_t62) goto L_027F79A8; else goto L_027F7A04;
|
|
L_027F7A04: ; // 0x27f7a04
|
|
/* 027F7A04 */ cpu->r[6] = cpu->r[6] + 0x00000004u;
|
|
/* 027F7A08 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 027F7A0C */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 027F7A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F7A10 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 027F7A14 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 027F7A18 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7A18 */ _t64 = _t63 & 0x00000001u;
|
|
/* 027F7A18 */ if (_t64) goto L_027F7A1C; else goto L_027F7990;
|
|
L_027F7A1C: ; // 0x27f7a1c
|
|
/* 027F7A1C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7A1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t65);
|
|
/* 027F7A20 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7A20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F7A24 */ cpu->r[5] = rbrew_rlwinm(cpu->r[6], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 027F7A28 */ cpu->r[3] = cpu->r[5] | 0xFF000000u;
|
|
/* 027F7A2C */ cpu->r[7] = rbrew_rlwinm(cpu->r[10], 0x00000008u, 0x00000000u, 0x00000017u);
|
|
/* 027F7A30 */ _t67 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027F7A34 */ cpu->r[3] = cpu->r[3] | cpu->r[7];
|
|
/* 027F7A38 */ cpu->r[3] = cpu->r[3] | cpu->r[0];
|
|
/* 027F7A3C */ _t68 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F7A40 */ _t69 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F7A40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F7A44 */ cpu->lr = cpu->r[0];
|
|
/* 027F7A48 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F7A4C */ return;
|
|
L_027F7A50: ; // 0x27f7a50
|
|
/* 027F7A50 */ _t70 = cpu->r[12] + 0x00000019u;
|
|
/* 027F7A50 */ cpu->r[4] = rbrew_read8(cpu->mem, _t70);
|
|
/* 027F7A54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F7A58 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7A58 */ _t72 = _t71 & 0x00000001u;
|
|
/* 027F7A58 */ if (_t72) goto L_027F7DB8; else goto L_027F7A5C;
|
|
L_027F7A5C: ; // 0x27f7a5c
|
|
/* 027F7A5C */ _t73 = cpu->r[12] + 0x00000018u;
|
|
/* 027F7A5C */ cpu->r[6] = rbrew_read8(cpu->mem, _t73);
|
|
/* 027F7A60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F7A64 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7A64 */ _t75 = _t74 & 0x00000001u;
|
|
/* 027F7A64 */ if (_t75) goto L_027F7DB8; else goto L_027F7A68;
|
|
L_027F7A68: ; // 0x27f7a68
|
|
/* 027F7A68 */ _t76 = cpu->r[12] + 0x000005DCu;
|
|
/* 027F7A68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t76);
|
|
/* 027F7A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 027F7A70 */ cpu->r[31] = cpu->r[12] + 0x000005D8u;
|
|
/* 027F7A74 */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7A74 */ _t78 = _t77 & 0x00000001u;
|
|
/* 027F7A74 */ if (_t78) goto L_027F7A78; else goto L_027F7DB8;
|
|
L_027F7A78: ; // 0x27f7a78
|
|
/* 027F7A78 */ _t79 = cpu->r[31] + 0x00000018u;
|
|
/* 027F7A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F7A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7A80 */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7A80 */ _t81 = _t80 & 0x00000001u;
|
|
/* 027F7A80 */ if (_t81) goto L_027F7A84; else goto L_027F7DB8;
|
|
L_027F7A84: ; // 0x27f7a84
|
|
/* 027F7A84 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7A88 */ cpu->r[10] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7A8C */ cpu->r[12] = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F7A90 */ goto L_027F7AA8;
|
|
L_027F7A94: ; // 0x27f7a94
|
|
/* 027F7A94 */ _t82 = cpu->r[31] + 0x00000018u;
|
|
/* 027F7A94 */ cpu->r[4] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F7A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[4]);
|
|
/* 027F7A9C */ _t83 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7A9C */ _t84 = _t83 & 0x00000001u;
|
|
/* 027F7A9C */ if (_t84) goto L_027F7AA0; else goto L_027F7B10;
|
|
L_027F7AA0: ; // 0x27f7aa0
|
|
/* 027F7AA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F7AA4 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7AA4 */ _t86 = _t85 & 0x00000001u;
|
|
/* 027F7AA4 */ if (_t86) goto L_027F7AA8; else goto L_027F7AB8;
|
|
L_027F7AA8: ; // 0x27f7aa8
|
|
/* 027F7AA8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7AAC */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7AB0 */ cpu->r[6] = cpu->r[10] + cpu->r[6];
|
|
/* 027F7AB4 */ goto L_027F7ABC;
|
|
L_027F7AB8: ; // 0x27f7ab8
|
|
/* 027F7AB8 */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
L_027F7ABC: ; // 0x27f7abc
|
|
/* 027F7ABC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F7AC0 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7AC0 */ _t88 = _t87 & 0x00000001u;
|
|
/* 027F7AC0 */ if (_t88) goto L_027F7AC4; else goto L_027F7AE4;
|
|
L_027F7AC4: ; // 0x27f7ac4
|
|
/* 027F7AC4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7AC8 */ cpu->r[7] = cpu->r[12] + cpu->r[9];
|
|
/* 027F7ACC */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7AD0 */ _t89 = cpu->r[7] + 0x00000003u;
|
|
/* 027F7AD0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t89);
|
|
/* 027F7AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7AD8 */ _t90 = cpu->r[6] + 0x00000000u;
|
|
/* 027F7AD8 */ rbrew_write32(cpu->mem, _t90, cpu->r[11]);
|
|
/* 027F7ADC */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7ADC */ _t92 = _t91 & 0x00000001u;
|
|
/* 027F7ADC */ if (_t92) goto L_027F7AF8; else goto L_027F7AE0;
|
|
L_027F7AE0: ; // 0x27f7ae0
|
|
/* 027F7AE0 */ goto L_027F7B34;
|
|
L_027F7AE4: ; // 0x27f7ae4
|
|
/* 027F7AE4 */ _t93 = cpu->r[12] + 0x00000003u;
|
|
/* 027F7AE4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t93);
|
|
/* 027F7AE8 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7AF0 */ _t94 = cpu->r[6] + 0x00000000u;
|
|
/* 027F7AF0 */ rbrew_write32(cpu->mem, _t94, cpu->r[11]);
|
|
/* 027F7AF4 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7AF4 */ _t96 = _t95 & 0x00000001u;
|
|
/* 027F7AF4 */ if (_t96) goto L_027F7AF8; else goto L_027F7B34;
|
|
L_027F7AF8: ; // 0x27f7af8
|
|
/* 027F7AF8 */ _t97 = cpu->r[31] + 0x00000018u;
|
|
/* 027F7AF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t97);
|
|
/* 027F7AFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7B00 */ cpu->r[11] = 0x000000FFu;
|
|
/* 027F7B04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[5]);
|
|
/* 027F7B08 */ cpu->r[7] = cpu->r[8] + cpu->r[0];
|
|
/* 027F7B0C */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B0C */ _t99 = _t98 & 0x00000001u;
|
|
/* 027F7B0C */ if (_t99) goto L_027F7AA0; else goto L_027F7B10;
|
|
L_027F7B10: ; // 0x27f7b10
|
|
/* 027F7B10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F7B14 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7B18 */ _t100 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B18 */ _t101 = _t100 & 0x00000001u;
|
|
/* 027F7B18 */ if (_t101) goto L_027F7B1C; else goto L_027F7B20;
|
|
L_027F7B1C: ; // 0x27f7b1c
|
|
/* 027F7B1C */ cpu->r[9] = cpu->r[7];
|
|
L_027F7B20: ; // 0x27f7b20
|
|
/* 027F7B20 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7B24 */ _t102 = cpu->r[9] + 0x00000000u;
|
|
/* 027F7B24 */ rbrew_write32(cpu->mem, _t102, cpu->r[11]);
|
|
/* 027F7B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7B2C */ cpu->r[7] = cpu->r[7] + 0x00000004u;
|
|
/* 027F7B30 */ _t103 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B30 */ _t104 = _t103 & 0x00000001u;
|
|
/* 027F7B30 */ if (_t104) goto L_027F7A94; else goto L_027F7B34;
|
|
L_027F7B34: ; // 0x27f7b34
|
|
/* 027F7B34 */ cpu->r[4] = 0x00000001u;
|
|
/* 027F7B38 */ cpu->r[3] = 0x00000002u;
|
|
/* 027F7B3C */ cpu->r[11] = cpu->r[4];
|
|
/* 027F7B40 */ cpu->r[10] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7B44 */ cpu->r[12] = 0x00000000u;
|
|
L_027F7B48: ; // 0x27f7b48
|
|
/* 027F7B48 */ cpu->r[7] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 027F7B50 */ cpu->r[8] = cpu->r[4] + 0x00000001u;
|
|
/* 027F7B54 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B54 */ _t106 = _t105 & 0x00000001u;
|
|
/* 027F7B54 */ if (_t106) goto L_027F7B5C; else goto L_027F7B58;
|
|
L_027F7B58: ; // 0x27f7b58
|
|
/* 027F7B58 */ cpu->r[8] = 0x00000001u;
|
|
L_027F7B5C: ; // 0x27f7b5c
|
|
/* 027F7B5C */ cpu->ctr = cpu->r[8];
|
|
L_027F7B60: ; // 0x27f7b60
|
|
/* 027F7B60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 027F7B64 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7B68 */ cpu->r[6] = cpu->r[10] + 0xFFFFFFFCu;
|
|
/* 027F7B6C */ _t107 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B6C */ _t108 = _t107 & 0x00000001u;
|
|
/* 027F7B6C */ if (_t108) goto L_027F7B70; else goto L_027F7B74;
|
|
L_027F7B70: ; // 0x27f7b70
|
|
/* 027F7B70 */ cpu->r[9] = cpu->r[10];
|
|
L_027F7B74: ; // 0x27f7b74
|
|
/* 027F7B74 */ _t109 = cpu->r[6] + 0x00000000u;
|
|
/* 027F7B74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t109);
|
|
/* 027F7B78 */ _t110 = cpu->r[9] + 0x00000000u;
|
|
/* 027F7B78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t110);
|
|
/* 027F7B7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 027F7B80 */ _t111 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7B80 */ _t112 = _t111 & 0x00000001u;
|
|
/* 027F7B80 */ if (_t112) goto L_027F7B84; else goto L_027F7BBC;
|
|
L_027F7B84: ; // 0x27f7b84
|
|
/* 027F7B84 */ cpu->r[5] = cpu->r[10] + 0xFFFFFFFCu;
|
|
/* 027F7B88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 027F7B8C */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7B90 */ _t113 = cpu->r[10] + 0xFFFFFFFCu;
|
|
/* 027F7B90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t113);
|
|
/* 027F7B94 */ _t114 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B94 */ _t115 = _t114 & 0x00000001u;
|
|
/* 027F7B94 */ if (_t115) goto L_027F7B98; else goto L_027F7B9C;
|
|
L_027F7B98: ; // 0x27f7b98
|
|
/* 027F7B98 */ cpu->r[7] = cpu->r[10];
|
|
L_027F7B9C: ; // 0x27f7b9c
|
|
/* 027F7B9C */ _t116 = cpu->r[7] + 0x00000000u;
|
|
/* 027F7B9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t116);
|
|
/* 027F7BA0 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7BA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 027F7BA8 */ _t117 = cpu->r[5] + 0x00000000u;
|
|
/* 027F7BA8 */ rbrew_write32(cpu->mem, _t117, cpu->r[9]);
|
|
/* 027F7BAC */ _t118 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7BAC */ _t119 = _t118 & 0x00000001u;
|
|
/* 027F7BAC */ if (_t119) goto L_027F7BB0; else goto L_027F7BB4;
|
|
L_027F7BB0: ; // 0x27f7bb0
|
|
/* 027F7BB0 */ cpu->r[8] = cpu->r[10];
|
|
L_027F7BB4: ; // 0x27f7bb4
|
|
/* 027F7BB4 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 027F7BB4 */ rbrew_write32(cpu->mem, _t120, cpu->r[6]);
|
|
/* 027F7BB8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F7BB8 */ _t121 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F7BB8 */ _t122 = _t121 >> (0x00000002u & 31u);
|
|
/* 027F7BB8 */ _t123 = _t122 & 0x00000001u;
|
|
/* 027F7BB8 */ if (_t123) goto L_027F7B60; else goto L_027F7BBC;
|
|
L_027F7BBC: ; // 0x27f7bbc
|
|
/* 027F7BBC */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 027F7BC0 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 027F7BC4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 027F7BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7BC8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7BCC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 027F7BD0 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7BD0 */ _t125 = _t124 & 0x00000001u;
|
|
/* 027F7BD0 */ if (_t125) goto L_027F7BD4; else goto L_027F7B48;
|
|
L_027F7BD4: ; // 0x27f7bd4
|
|
/* 027F7BD4 */ _t126 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7BD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t126);
|
|
/* 027F7BD8 */ _t127 = cpu->r[1] + 0x00000018u;
|
|
/* 027F7BD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 027F7BDC */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 027F7BE0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000008u, 0x00000000u, 0x00000017u);
|
|
/* 027F7BE4 */ _t128 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7BE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t128);
|
|
/* 027F7BE8 */ cpu->r[3] = cpu->r[10] | 0xFF000000u;
|
|
/* 027F7BEC */ cpu->lr = cpu->r[0];
|
|
/* 027F7BF0 */ _t129 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7BF0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t129);
|
|
/* 027F7BF4 */ cpu->r[3] = cpu->r[3] | cpu->r[12];
|
|
/* 027F7BF8 */ _t130 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F7BF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t130);
|
|
/* 027F7BFC */ cpu->r[3] = cpu->r[3] | cpu->r[4];
|
|
/* 027F7C00 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F7C04 */ return;
|
|
L_027F7C08: ; // 0x27f7c08
|
|
/* 027F7C08 */ _t131 = cpu->r[31] + 0x0000001Eu;
|
|
/* 027F7C08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t131);
|
|
/* 027F7C0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7C10 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7C10 */ _t133 = _t132 & 0x00000001u;
|
|
/* 027F7C10 */ if (_t133) goto L_027F7DB8; else goto L_027F7C14;
|
|
L_027F7C14: ; // 0x27f7c14
|
|
/* 027F7C14 */ _t134 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F7C14 */ cpu->r[3] = rbrew_read16(cpu->mem, _t134);
|
|
/* 027F7C18 */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F7C1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7C20 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7C20 */ _t136 = _t135 & 0x00000001u;
|
|
/* 027F7C20 */ if (_t136) goto L_027F7C24; else goto L_027F7DB8;
|
|
L_027F7C24: ; // 0x27f7c24
|
|
/* 027F7C24 */ _t137 = cpu->r[31] + 0x00000050u;
|
|
/* 027F7C24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 027F7C28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7C2C */ cpu->r[8] = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F7C30 */ _t138 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7C30 */ _t139 = _t138 & 0x00000001u;
|
|
/* 027F7C30 */ if (_t139) goto L_027F7C34; else goto L_027F7DB8;
|
|
L_027F7C34: ; // 0x27f7c34
|
|
/* 027F7C34 */ cpu->r[12] = 0x00000000u;
|
|
/* 027F7C38 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7C3C */ cpu->r[10] = cpu->r[8] + 0x00000008u;
|
|
/* 027F7C40 */ goto L_027F7C58;
|
|
L_027F7C44: ; // 0x27f7c44
|
|
/* 027F7C44 */ _t140 = cpu->r[8] + 0x00000004u;
|
|
/* 027F7C44 */ cpu->r[7] = rbrew_read32(cpu->mem, _t140);
|
|
/* 027F7C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[7]);
|
|
/* 027F7C4C */ _t141 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7C4C */ _t142 = _t141 & 0x00000001u;
|
|
/* 027F7C4C */ if (_t142) goto L_027F7C50; else goto L_027F7CC0;
|
|
L_027F7C50: ; // 0x27f7c50
|
|
/* 027F7C50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000003u);
|
|
/* 027F7C54 */ _t143 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7C54 */ _t144 = _t143 & 0x00000001u;
|
|
/* 027F7C54 */ if (_t144) goto L_027F7C58; else goto L_027F7C68;
|
|
L_027F7C58: ; // 0x27f7c58
|
|
/* 027F7C58 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7C5C */ cpu->r[31] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7C60 */ cpu->r[5] = cpu->r[3] + cpu->r[0];
|
|
/* 027F7C64 */ goto L_027F7C6C;
|
|
L_027F7C68: ; // 0x27f7c68
|
|
/* 027F7C68 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
L_027F7C6C: ; // 0x27f7c6c
|
|
/* 027F7C6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000003u);
|
|
/* 027F7C70 */ _t145 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7C70 */ _t146 = _t145 & 0x00000001u;
|
|
/* 027F7C70 */ if (_t146) goto L_027F7C74; else goto L_027F7C94;
|
|
L_027F7C74: ; // 0x27f7c74
|
|
/* 027F7C74 */ cpu->r[6] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7C78 */ cpu->r[7] = cpu->r[10] + cpu->r[6];
|
|
/* 027F7C7C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7C80 */ _t147 = cpu->r[7] + 0x00000003u;
|
|
/* 027F7C80 */ cpu->r[11] = rbrew_read8(cpu->mem, _t147);
|
|
/* 027F7C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 027F7C88 */ _t148 = cpu->r[5] + 0x00000000u;
|
|
/* 027F7C88 */ rbrew_write32(cpu->mem, _t148, cpu->r[11]);
|
|
/* 027F7C8C */ _t149 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7C8C */ _t150 = _t149 & 0x00000001u;
|
|
/* 027F7C8C */ if (_t150) goto L_027F7CA8; else goto L_027F7C90;
|
|
L_027F7C90: ; // 0x27f7c90
|
|
/* 027F7C90 */ goto L_027F7CE4;
|
|
L_027F7C94: ; // 0x27f7c94
|
|
/* 027F7C94 */ _t151 = cpu->r[10] + 0x00000003u;
|
|
/* 027F7C94 */ cpu->r[11] = rbrew_read8(cpu->mem, _t151);
|
|
/* 027F7C98 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 027F7CA0 */ _t152 = cpu->r[5] + 0x00000000u;
|
|
/* 027F7CA0 */ rbrew_write32(cpu->mem, _t152, cpu->r[11]);
|
|
/* 027F7CA4 */ _t153 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7CA4 */ _t154 = _t153 & 0x00000001u;
|
|
/* 027F7CA4 */ if (_t154) goto L_027F7CA8; else goto L_027F7CE4;
|
|
L_027F7CA8: ; // 0x27f7ca8
|
|
/* 027F7CA8 */ _t155 = cpu->r[8] + 0x00000004u;
|
|
/* 027F7CA8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t155);
|
|
/* 027F7CAC */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7CB0 */ cpu->r[5] = 0x000000FFu;
|
|
/* 027F7CB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[4]);
|
|
/* 027F7CB8 */ cpu->r[4] = cpu->r[31] + cpu->r[0];
|
|
/* 027F7CBC */ _t156 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7CBC */ _t157 = _t156 & 0x00000001u;
|
|
/* 027F7CBC */ if (_t157) goto L_027F7C50; else goto L_027F7CC0;
|
|
L_027F7CC0: ; // 0x27f7cc0
|
|
/* 027F7CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000003u);
|
|
/* 027F7CC4 */ cpu->r[9] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7CC8 */ _t158 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7CC8 */ _t159 = _t158 & 0x00000001u;
|
|
/* 027F7CC8 */ if (_t159) goto L_027F7CCC; else goto L_027F7CD0;
|
|
L_027F7CCC: ; // 0x27f7ccc
|
|
/* 027F7CCC */ cpu->r[9] = cpu->r[4];
|
|
L_027F7CD0: ; // 0x27f7cd0
|
|
/* 027F7CD0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7CD4 */ _t160 = cpu->r[9] + 0x00000000u;
|
|
/* 027F7CD4 */ rbrew_write32(cpu->mem, _t160, cpu->r[5]);
|
|
/* 027F7CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 027F7CDC */ cpu->r[4] = cpu->r[4] + 0x00000004u;
|
|
/* 027F7CE0 */ _t161 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7CE0 */ _t162 = _t161 & 0x00000001u;
|
|
/* 027F7CE0 */ if (_t162) goto L_027F7C44; else goto L_027F7CE4;
|
|
L_027F7CE4: ; // 0x27f7ce4
|
|
/* 027F7CE4 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7CE8 */ cpu->r[31] = 0x00000002u;
|
|
/* 027F7CEC */ cpu->r[9] = cpu->r[3];
|
|
/* 027F7CF0 */ cpu->r[8] = cpu->r[1] + 0x00000024u;
|
|
/* 027F7CF4 */ cpu->r[11] = 0x00000000u;
|
|
L_027F7CF8: ; // 0x27f7cf8
|
|
/* 027F7CF8 */ cpu->r[5] = cpu->r[11] + 0x00000001u;
|
|
/* 027F7CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000002u);
|
|
/* 027F7D00 */ cpu->r[6] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7D04 */ _t163 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7D04 */ _t164 = _t163 & 0x00000001u;
|
|
/* 027F7D04 */ if (_t164) goto L_027F7D0C; else goto L_027F7D08;
|
|
L_027F7D08: ; // 0x27f7d08
|
|
/* 027F7D08 */ cpu->r[6] = 0x00000001u;
|
|
L_027F7D0C: ; // 0x27f7d0c
|
|
/* 027F7D0C */ cpu->ctr = cpu->r[6];
|
|
L_027F7D10: ; // 0x27f7d10
|
|
/* 027F7D10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 027F7D14 */ cpu->r[7] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7D18 */ cpu->r[5] = cpu->r[8] + 0xFFFFFFFCu;
|
|
/* 027F7D1C */ _t165 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7D1C */ _t166 = _t165 & 0x00000001u;
|
|
/* 027F7D1C */ if (_t166) goto L_027F7D20; else goto L_027F7D24;
|
|
L_027F7D20: ; // 0x27f7d20
|
|
/* 027F7D20 */ cpu->r[7] = cpu->r[8];
|
|
L_027F7D24: ; // 0x27f7d24
|
|
/* 027F7D24 */ _t167 = cpu->r[7] + 0x00000000u;
|
|
/* 027F7D24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t167);
|
|
/* 027F7D28 */ _t168 = cpu->r[5] + 0x00000000u;
|
|
/* 027F7D28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t168);
|
|
/* 027F7D2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 027F7D30 */ _t169 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7D30 */ _t170 = _t169 & 0x00000001u;
|
|
/* 027F7D30 */ if (_t170) goto L_027F7D34; else goto L_027F7D6C;
|
|
L_027F7D34: ; // 0x27f7d34
|
|
/* 027F7D34 */ cpu->r[12] = cpu->r[8] + 0xFFFFFFFCu;
|
|
/* 027F7D38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 027F7D3C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7D40 */ _t171 = cpu->r[8] + 0xFFFFFFFCu;
|
|
/* 027F7D40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t171);
|
|
/* 027F7D44 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7D44 */ _t173 = _t172 & 0x00000001u;
|
|
/* 027F7D44 */ if (_t173) goto L_027F7D48; else goto L_027F7D4C;
|
|
L_027F7D48: ; // 0x27f7d48
|
|
/* 027F7D48 */ cpu->r[4] = cpu->r[8];
|
|
L_027F7D4C: ; // 0x27f7d4c
|
|
/* 027F7D4C */ _t174 = cpu->r[4] + 0x00000000u;
|
|
/* 027F7D4C */ cpu->r[7] = rbrew_read32(cpu->mem, _t174);
|
|
/* 027F7D50 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7D54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 027F7D58 */ _t175 = cpu->r[12] + 0x00000000u;
|
|
/* 027F7D58 */ rbrew_write32(cpu->mem, _t175, cpu->r[7]);
|
|
/* 027F7D5C */ _t176 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7D5C */ _t177 = _t176 & 0x00000001u;
|
|
/* 027F7D5C */ if (_t177) goto L_027F7D60; else goto L_027F7D64;
|
|
L_027F7D60: ; // 0x27f7d60
|
|
/* 027F7D60 */ cpu->r[6] = cpu->r[8];
|
|
L_027F7D64: ; // 0x27f7d64
|
|
/* 027F7D64 */ _t178 = cpu->r[6] + 0x00000000u;
|
|
/* 027F7D64 */ rbrew_write32(cpu->mem, _t178, cpu->r[10]);
|
|
/* 027F7D68 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F7D68 */ _t179 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F7D68 */ _t180 = _t179 >> (0x00000002u & 31u);
|
|
/* 027F7D68 */ _t181 = _t180 & 0x00000001u;
|
|
/* 027F7D68 */ if (_t181) goto L_027F7D10; else goto L_027F7D6C;
|
|
L_027F7D6C: ; // 0x27f7d6c
|
|
/* 027F7D6C */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 027F7D70 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 027F7D74 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 027F7D74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7D78 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 027F7D7C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 027F7D80 */ _t182 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7D80 */ _t183 = _t182 & 0x00000001u;
|
|
/* 027F7D80 */ if (_t183) goto L_027F7D84; else goto L_027F7CF8;
|
|
L_027F7D84: ; // 0x27f7d84
|
|
/* 027F7D84 */ _t184 = cpu->r[1] + 0x00000028u;
|
|
/* 027F7D84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t184);
|
|
/* 027F7D88 */ _t185 = cpu->r[1] + 0x00000024u;
|
|
/* 027F7D88 */ cpu->r[4] = rbrew_read32(cpu->mem, _t185);
|
|
/* 027F7D8C */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 027F7D90 */ cpu->r[3] = cpu->r[11] | 0xFF000000u;
|
|
/* 027F7D94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000008u, 0x00000000u, 0x00000017u);
|
|
/* 027F7D98 */ _t186 = cpu->r[1] + 0x00000020u;
|
|
/* 027F7D98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t186);
|
|
/* 027F7D9C */ cpu->r[3] = cpu->r[3] | cpu->r[0];
|
|
/* 027F7DA0 */ _t187 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t187);
|
|
/* 027F7DA4 */ _t188 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F7DA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t188);
|
|
/* 027F7DA8 */ cpu->lr = cpu->r[0];
|
|
/* 027F7DAC */ cpu->r[3] = cpu->r[3] | cpu->r[9];
|
|
/* 027F7DB0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F7DB4 */ return;
|
|
L_027F7DB8: ; // 0x27f7db8
|
|
/* 027F7DB8 */ cpu->r[3] = 0x00000000u;
|
|
L_027F7DBC: ; // 0x27f7dbc
|
|
/* 027F7DBC */ _t189 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7DBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t189);
|
|
/* 027F7DC0 */ _t190 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F7DC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t190);
|
|
/* 027F7DC4 */ cpu->lr = cpu->r[0];
|
|
/* 027F7DC8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F7DCC */ return;
|
|
}
|
|
|
|
// fn_027F7868 @ 0x27f7868
|
|
void Gambit_fn_027F7868(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190;
|
|
|
|
L_027F7868: ; // 0x27f7868
|
|
/* 027F7868 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 027F7868 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7868 */ cpu->r[1] = _t0;
|
|
/* 027F786C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F786C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7870 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7874 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7874 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7878 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 027F7878 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F787C */ cpu->r[31] = 0x101C0000u;
|
|
/* 027F7880 */ _t4 = cpu->r[12] + 0x000045C4u;
|
|
/* 027F7880 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F7884 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 027F7888 */ _t5 = cpu->r[31] + 0x0000457Cu;
|
|
/* 027F7888 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F788C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F788C */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F788C */ if (_t7) goto L_027F78A4; else goto L_027F7890;
|
|
L_027F7890: ; // 0x27f7890
|
|
/* 027F7890 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7890 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F7890 */ if (_t9) goto L_027F7A50; else goto L_027F7894;
|
|
L_027F7894: ; // 0x27f7894
|
|
/* 027F7894 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000002u);
|
|
/* 027F7898 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7898 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F7898 */ if (_t11) goto L_027F7C08; else goto L_027F789C;
|
|
L_027F789C: ; // 0x27f789c
|
|
/* 027F789C */ cpu->r[3] = 0x00000000u;
|
|
/* 027F78A0 */ goto L_027F7DBC;
|
|
L_027F78A4: ; // 0x27f78a4
|
|
/* 027F78A4 */ _t12 = cpu->r[12] + 0x00000019u;
|
|
/* 027F78A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 027F78A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F78AC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F78AC */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F78AC */ if (_t14) goto L_027F7DB8; else goto L_027F78B0;
|
|
L_027F78B0: ; // 0x27f78b0
|
|
/* 027F78B0 */ _t15 = cpu->r[12] + 0x00000018u;
|
|
/* 027F78B0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t15);
|
|
/* 027F78B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F78B8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F78B8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F78B8 */ if (_t17) goto L_027F7DB8; else goto L_027F78BC;
|
|
L_027F78BC: ; // 0x27f78bc
|
|
/* 027F78BC */ _t18 = cpu->r[12] + 0x000005DCu;
|
|
/* 027F78BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F78C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 027F78C4 */ cpu->r[31] = cpu->r[12] + 0x000005D8u;
|
|
/* 027F78C8 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F78C8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F78C8 */ if (_t20) goto L_027F78CC; else goto L_027F7DB8;
|
|
L_027F78CC: ; // 0x27f78cc
|
|
/* 027F78CC */ cpu->r[3] = 0x00000000u;
|
|
/* 027F78D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F78D4 */ cpu->r[5] = cpu->r[31] + 0x00000008u;
|
|
/* 027F78D8 */ goto L_027F78F0;
|
|
L_027F78DC: ; // 0x27f78dc
|
|
/* 027F78DC */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 027F78DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F78E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[6]);
|
|
/* 027F78E4 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F78E4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F78E4 */ if (_t23) goto L_027F78E8; else goto L_027F7958;
|
|
L_027F78E8: ; // 0x27f78e8
|
|
/* 027F78E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F78EC */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F78EC */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F78EC */ if (_t25) goto L_027F78F0; else goto L_027F7900;
|
|
L_027F78F0: ; // 0x27f78f0
|
|
/* 027F78F0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F78F4 */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 027F78F8 */ cpu->r[11] = cpu->r[4] + cpu->r[7];
|
|
/* 027F78FC */ goto L_027F7904;
|
|
L_027F7900: ; // 0x27f7900
|
|
/* 027F7900 */ cpu->r[11] = cpu->r[1] + 0x00000008u;
|
|
L_027F7904: ; // 0x27f7904
|
|
/* 027F7904 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F7908 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7908 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F7908 */ if (_t27) goto L_027F790C; else goto L_027F792C;
|
|
L_027F790C: ; // 0x27f790c
|
|
/* 027F790C */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7910 */ cpu->r[6] = cpu->r[5] + cpu->r[8];
|
|
/* 027F7914 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7918 */ _t28 = cpu->r[6] + 0x00000003u;
|
|
/* 027F7918 */ cpu->r[9] = rbrew_read8(cpu->mem, _t28);
|
|
/* 027F791C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7920 */ _t29 = cpu->r[11] + 0x00000000u;
|
|
/* 027F7920 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 027F7924 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7924 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F7924 */ if (_t31) goto L_027F7940; else goto L_027F7928;
|
|
L_027F7928: ; // 0x27f7928
|
|
/* 027F7928 */ goto L_027F797C;
|
|
L_027F792C: ; // 0x27f792c
|
|
/* 027F792C */ _t32 = cpu->r[5] + 0x00000003u;
|
|
/* 027F792C */ cpu->r[9] = rbrew_read8(cpu->mem, _t32);
|
|
/* 027F7930 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7938 */ _t33 = cpu->r[11] + 0x00000000u;
|
|
/* 027F7938 */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 027F793C */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F793C */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F793C */ if (_t35) goto L_027F7940; else goto L_027F797C;
|
|
L_027F7940: ; // 0x27f7940
|
|
/* 027F7940 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 027F7940 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F7944 */ cpu->r[10] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7948 */ cpu->r[9] = 0x000000FFu;
|
|
/* 027F794C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[11]);
|
|
/* 027F7950 */ cpu->r[11] = cpu->r[12] + cpu->r[10];
|
|
/* 027F7954 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7954 */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F7954 */ if (_t38) goto L_027F78E8; else goto L_027F7958;
|
|
L_027F7958: ; // 0x27f7958
|
|
/* 027F7958 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F795C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7960 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7960 */ _t40 = _t39 & 0x00000001u;
|
|
/* 027F7960 */ if (_t40) goto L_027F7964; else goto L_027F7968;
|
|
L_027F7964: ; // 0x27f7964
|
|
/* 027F7964 */ cpu->r[7] = cpu->r[11];
|
|
L_027F7968: ; // 0x27f7968
|
|
/* 027F7968 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F796C */ _t41 = cpu->r[7] + 0x00000000u;
|
|
/* 027F796C */ rbrew_write32(cpu->mem, _t41, cpu->r[9]);
|
|
/* 027F7970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7974 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 027F7978 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7978 */ _t43 = _t42 & 0x00000001u;
|
|
/* 027F7978 */ if (_t43) goto L_027F78DC; else goto L_027F797C;
|
|
L_027F797C: ; // 0x27f797c
|
|
/* 027F797C */ cpu->r[5] = 0x00000001u;
|
|
/* 027F7980 */ cpu->r[11] = 0x00000002u;
|
|
/* 027F7984 */ cpu->r[7] = cpu->r[5];
|
|
/* 027F7988 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F798C */ cpu->r[8] = 0x00000000u;
|
|
L_027F7990: ; // 0x27f7990
|
|
/* 027F7990 */ cpu->r[9] = cpu->r[8] + 0x00000001u;
|
|
/* 027F7994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 027F7998 */ cpu->r[0] = cpu->r[5] + 0x00000001u;
|
|
/* 027F799C */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F799C */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F799C */ if (_t45) goto L_027F79A4; else goto L_027F79A0;
|
|
L_027F79A0: ; // 0x27f79a0
|
|
/* 027F79A0 */ cpu->r[0] = 0x00000001u;
|
|
L_027F79A4: ; // 0x27f79a4
|
|
/* 027F79A4 */ cpu->ctr = cpu->r[0];
|
|
L_027F79A8: ; // 0x27f79a8
|
|
/* 027F79A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 027F79AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F79B0 */ cpu->r[12] = cpu->r[6] + 0xFFFFFFFCu;
|
|
/* 027F79B4 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F79B4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F79B4 */ if (_t47) goto L_027F79B8; else goto L_027F79BC;
|
|
L_027F79B8: ; // 0x27f79b8
|
|
/* 027F79B8 */ cpu->r[4] = cpu->r[6];
|
|
L_027F79BC: ; // 0x27f79bc
|
|
/* 027F79BC */ _t48 = cpu->r[12] + 0x00000000u;
|
|
/* 027F79BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 027F79C0 */ _t49 = cpu->r[4] + 0x00000000u;
|
|
/* 027F79C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F79C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 027F79C8 */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F79C8 */ _t51 = _t50 & 0x00000001u;
|
|
/* 027F79C8 */ if (_t51) goto L_027F79CC; else goto L_027F7A04;
|
|
L_027F79CC: ; // 0x27f79cc
|
|
/* 027F79CC */ cpu->r[9] = cpu->r[6] + 0xFFFFFFFCu;
|
|
/* 027F79D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 027F79D4 */ cpu->r[10] = cpu->r[1] + 0x00000008u;
|
|
/* 027F79D8 */ _t52 = cpu->r[6] + 0xFFFFFFFCu;
|
|
/* 027F79D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F79DC */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F79DC */ _t54 = _t53 & 0x00000001u;
|
|
/* 027F79DC */ if (_t54) goto L_027F79E0; else goto L_027F79E4;
|
|
L_027F79E0: ; // 0x27f79e0
|
|
/* 027F79E0 */ cpu->r[10] = cpu->r[6];
|
|
L_027F79E4: ; // 0x27f79e4
|
|
/* 027F79E4 */ _t55 = cpu->r[10] + 0x00000000u;
|
|
/* 027F79E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F79E8 */ cpu->r[12] = cpu->r[1] + 0x00000008u;
|
|
/* 027F79EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 027F79F0 */ _t56 = cpu->r[9] + 0x00000000u;
|
|
/* 027F79F0 */ rbrew_write32(cpu->mem, _t56, cpu->r[4]);
|
|
/* 027F79F4 */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F79F4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 027F79F4 */ if (_t58) goto L_027F79F8; else goto L_027F79FC;
|
|
L_027F79F8: ; // 0x27f79f8
|
|
/* 027F79F8 */ cpu->r[12] = cpu->r[6];
|
|
L_027F79FC: ; // 0x27f79fc
|
|
/* 027F79FC */ _t59 = cpu->r[12] + 0x00000000u;
|
|
/* 027F79FC */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 027F7A00 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F7A00 */ _t60 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F7A00 */ _t61 = _t60 >> (0x00000002u & 31u);
|
|
/* 027F7A00 */ _t62 = _t61 & 0x00000001u;
|
|
/* 027F7A00 */ if (_t62) goto L_027F79A8; else goto L_027F7A04;
|
|
L_027F7A04: ; // 0x27f7a04
|
|
/* 027F7A04 */ cpu->r[6] = cpu->r[6] + 0x00000004u;
|
|
/* 027F7A08 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 027F7A0C */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 027F7A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 027F7A10 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 027F7A14 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 027F7A18 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7A18 */ _t64 = _t63 & 0x00000001u;
|
|
/* 027F7A18 */ if (_t64) goto L_027F7A1C; else goto L_027F7990;
|
|
L_027F7A1C: ; // 0x27f7a1c
|
|
/* 027F7A1C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7A1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t65);
|
|
/* 027F7A20 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7A20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F7A24 */ cpu->r[5] = rbrew_rlwinm(cpu->r[6], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 027F7A28 */ cpu->r[3] = cpu->r[5] | 0xFF000000u;
|
|
/* 027F7A2C */ cpu->r[7] = rbrew_rlwinm(cpu->r[10], 0x00000008u, 0x00000000u, 0x00000017u);
|
|
/* 027F7A30 */ _t67 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 027F7A34 */ cpu->r[3] = cpu->r[3] | cpu->r[7];
|
|
/* 027F7A38 */ cpu->r[3] = cpu->r[3] | cpu->r[0];
|
|
/* 027F7A3C */ _t68 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F7A40 */ _t69 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F7A40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F7A44 */ cpu->lr = cpu->r[0];
|
|
/* 027F7A48 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F7A4C */ return;
|
|
L_027F7A50: ; // 0x27f7a50
|
|
/* 027F7A50 */ _t70 = cpu->r[12] + 0x00000019u;
|
|
/* 027F7A50 */ cpu->r[4] = rbrew_read8(cpu->mem, _t70);
|
|
/* 027F7A54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 027F7A58 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7A58 */ _t72 = _t71 & 0x00000001u;
|
|
/* 027F7A58 */ if (_t72) goto L_027F7DB8; else goto L_027F7A5C;
|
|
L_027F7A5C: ; // 0x27f7a5c
|
|
/* 027F7A5C */ _t73 = cpu->r[12] + 0x00000018u;
|
|
/* 027F7A5C */ cpu->r[6] = rbrew_read8(cpu->mem, _t73);
|
|
/* 027F7A60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 027F7A64 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7A64 */ _t75 = _t74 & 0x00000001u;
|
|
/* 027F7A64 */ if (_t75) goto L_027F7DB8; else goto L_027F7A68;
|
|
L_027F7A68: ; // 0x27f7a68
|
|
/* 027F7A68 */ _t76 = cpu->r[12] + 0x000005DCu;
|
|
/* 027F7A68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t76);
|
|
/* 027F7A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 027F7A70 */ cpu->r[31] = cpu->r[12] + 0x000005D8u;
|
|
/* 027F7A74 */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7A74 */ _t78 = _t77 & 0x00000001u;
|
|
/* 027F7A74 */ if (_t78) goto L_027F7A78; else goto L_027F7DB8;
|
|
L_027F7A78: ; // 0x27f7a78
|
|
/* 027F7A78 */ _t79 = cpu->r[31] + 0x00000018u;
|
|
/* 027F7A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F7A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7A80 */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7A80 */ _t81 = _t80 & 0x00000001u;
|
|
/* 027F7A80 */ if (_t81) goto L_027F7A84; else goto L_027F7DB8;
|
|
L_027F7A84: ; // 0x27f7a84
|
|
/* 027F7A84 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7A88 */ cpu->r[10] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7A8C */ cpu->r[12] = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F7A90 */ goto L_027F7AA8;
|
|
L_027F7A94: ; // 0x27f7a94
|
|
/* 027F7A94 */ _t82 = cpu->r[31] + 0x00000018u;
|
|
/* 027F7A94 */ cpu->r[4] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F7A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[4]);
|
|
/* 027F7A9C */ _t83 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7A9C */ _t84 = _t83 & 0x00000001u;
|
|
/* 027F7A9C */ if (_t84) goto L_027F7AA0; else goto L_027F7B10;
|
|
L_027F7AA0: ; // 0x27f7aa0
|
|
/* 027F7AA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F7AA4 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7AA4 */ _t86 = _t85 & 0x00000001u;
|
|
/* 027F7AA4 */ if (_t86) goto L_027F7AA8; else goto L_027F7AB8;
|
|
L_027F7AA8: ; // 0x27f7aa8
|
|
/* 027F7AA8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7AAC */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7AB0 */ cpu->r[6] = cpu->r[10] + cpu->r[6];
|
|
/* 027F7AB4 */ goto L_027F7ABC;
|
|
L_027F7AB8: ; // 0x27f7ab8
|
|
/* 027F7AB8 */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
L_027F7ABC: ; // 0x27f7abc
|
|
/* 027F7ABC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F7AC0 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7AC0 */ _t88 = _t87 & 0x00000001u;
|
|
/* 027F7AC0 */ if (_t88) goto L_027F7AC4; else goto L_027F7AE4;
|
|
L_027F7AC4: ; // 0x27f7ac4
|
|
/* 027F7AC4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7AC8 */ cpu->r[7] = cpu->r[12] + cpu->r[9];
|
|
/* 027F7ACC */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7AD0 */ _t89 = cpu->r[7] + 0x00000003u;
|
|
/* 027F7AD0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t89);
|
|
/* 027F7AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7AD8 */ _t90 = cpu->r[6] + 0x00000000u;
|
|
/* 027F7AD8 */ rbrew_write32(cpu->mem, _t90, cpu->r[11]);
|
|
/* 027F7ADC */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7ADC */ _t92 = _t91 & 0x00000001u;
|
|
/* 027F7ADC */ if (_t92) goto L_027F7AF8; else goto L_027F7AE0;
|
|
L_027F7AE0: ; // 0x27f7ae0
|
|
/* 027F7AE0 */ goto L_027F7B34;
|
|
L_027F7AE4: ; // 0x27f7ae4
|
|
/* 027F7AE4 */ _t93 = cpu->r[12] + 0x00000003u;
|
|
/* 027F7AE4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t93);
|
|
/* 027F7AE8 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7AF0 */ _t94 = cpu->r[6] + 0x00000000u;
|
|
/* 027F7AF0 */ rbrew_write32(cpu->mem, _t94, cpu->r[11]);
|
|
/* 027F7AF4 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7AF4 */ _t96 = _t95 & 0x00000001u;
|
|
/* 027F7AF4 */ if (_t96) goto L_027F7AF8; else goto L_027F7B34;
|
|
L_027F7AF8: ; // 0x27f7af8
|
|
/* 027F7AF8 */ _t97 = cpu->r[31] + 0x00000018u;
|
|
/* 027F7AF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t97);
|
|
/* 027F7AFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7B00 */ cpu->r[11] = 0x000000FFu;
|
|
/* 027F7B04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[5]);
|
|
/* 027F7B08 */ cpu->r[7] = cpu->r[8] + cpu->r[0];
|
|
/* 027F7B0C */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B0C */ _t99 = _t98 & 0x00000001u;
|
|
/* 027F7B0C */ if (_t99) goto L_027F7AA0; else goto L_027F7B10;
|
|
L_027F7B10: ; // 0x27f7b10
|
|
/* 027F7B10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000003u);
|
|
/* 027F7B14 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7B18 */ _t100 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B18 */ _t101 = _t100 & 0x00000001u;
|
|
/* 027F7B18 */ if (_t101) goto L_027F7B1C; else goto L_027F7B20;
|
|
L_027F7B1C: ; // 0x27f7b1c
|
|
/* 027F7B1C */ cpu->r[9] = cpu->r[7];
|
|
L_027F7B20: ; // 0x27f7b20
|
|
/* 027F7B20 */ cpu->r[3] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7B24 */ _t102 = cpu->r[9] + 0x00000000u;
|
|
/* 027F7B24 */ rbrew_write32(cpu->mem, _t102, cpu->r[11]);
|
|
/* 027F7B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7B2C */ cpu->r[7] = cpu->r[7] + 0x00000004u;
|
|
/* 027F7B30 */ _t103 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B30 */ _t104 = _t103 & 0x00000001u;
|
|
/* 027F7B30 */ if (_t104) goto L_027F7A94; else goto L_027F7B34;
|
|
L_027F7B34: ; // 0x27f7b34
|
|
/* 027F7B34 */ cpu->r[4] = 0x00000001u;
|
|
/* 027F7B38 */ cpu->r[3] = 0x00000002u;
|
|
/* 027F7B3C */ cpu->r[11] = cpu->r[4];
|
|
/* 027F7B40 */ cpu->r[10] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7B44 */ cpu->r[12] = 0x00000000u;
|
|
L_027F7B48: ; // 0x27f7b48
|
|
/* 027F7B48 */ cpu->r[7] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 027F7B50 */ cpu->r[8] = cpu->r[4] + 0x00000001u;
|
|
/* 027F7B54 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B54 */ _t106 = _t105 & 0x00000001u;
|
|
/* 027F7B54 */ if (_t106) goto L_027F7B5C; else goto L_027F7B58;
|
|
L_027F7B58: ; // 0x27f7b58
|
|
/* 027F7B58 */ cpu->r[8] = 0x00000001u;
|
|
L_027F7B5C: ; // 0x27f7b5c
|
|
/* 027F7B5C */ cpu->ctr = cpu->r[8];
|
|
L_027F7B60: ; // 0x27f7b60
|
|
/* 027F7B60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 027F7B64 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7B68 */ cpu->r[6] = cpu->r[10] + 0xFFFFFFFCu;
|
|
/* 027F7B6C */ _t107 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B6C */ _t108 = _t107 & 0x00000001u;
|
|
/* 027F7B6C */ if (_t108) goto L_027F7B70; else goto L_027F7B74;
|
|
L_027F7B70: ; // 0x27f7b70
|
|
/* 027F7B70 */ cpu->r[9] = cpu->r[10];
|
|
L_027F7B74: ; // 0x27f7b74
|
|
/* 027F7B74 */ _t109 = cpu->r[6] + 0x00000000u;
|
|
/* 027F7B74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t109);
|
|
/* 027F7B78 */ _t110 = cpu->r[9] + 0x00000000u;
|
|
/* 027F7B78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t110);
|
|
/* 027F7B7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 027F7B80 */ _t111 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7B80 */ _t112 = _t111 & 0x00000001u;
|
|
/* 027F7B80 */ if (_t112) goto L_027F7B84; else goto L_027F7BBC;
|
|
L_027F7B84: ; // 0x27f7b84
|
|
/* 027F7B84 */ cpu->r[5] = cpu->r[10] + 0xFFFFFFFCu;
|
|
/* 027F7B88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 027F7B8C */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7B90 */ _t113 = cpu->r[10] + 0xFFFFFFFCu;
|
|
/* 027F7B90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t113);
|
|
/* 027F7B94 */ _t114 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7B94 */ _t115 = _t114 & 0x00000001u;
|
|
/* 027F7B94 */ if (_t115) goto L_027F7B98; else goto L_027F7B9C;
|
|
L_027F7B98: ; // 0x27f7b98
|
|
/* 027F7B98 */ cpu->r[7] = cpu->r[10];
|
|
L_027F7B9C: ; // 0x27f7b9c
|
|
/* 027F7B9C */ _t116 = cpu->r[7] + 0x00000000u;
|
|
/* 027F7B9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t116);
|
|
/* 027F7BA0 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 027F7BA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 027F7BA8 */ _t117 = cpu->r[5] + 0x00000000u;
|
|
/* 027F7BA8 */ rbrew_write32(cpu->mem, _t117, cpu->r[9]);
|
|
/* 027F7BAC */ _t118 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7BAC */ _t119 = _t118 & 0x00000001u;
|
|
/* 027F7BAC */ if (_t119) goto L_027F7BB0; else goto L_027F7BB4;
|
|
L_027F7BB0: ; // 0x27f7bb0
|
|
/* 027F7BB0 */ cpu->r[8] = cpu->r[10];
|
|
L_027F7BB4: ; // 0x27f7bb4
|
|
/* 027F7BB4 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 027F7BB4 */ rbrew_write32(cpu->mem, _t120, cpu->r[6]);
|
|
/* 027F7BB8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F7BB8 */ _t121 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F7BB8 */ _t122 = _t121 >> (0x00000002u & 31u);
|
|
/* 027F7BB8 */ _t123 = _t122 & 0x00000001u;
|
|
/* 027F7BB8 */ if (_t123) goto L_027F7B60; else goto L_027F7BBC;
|
|
L_027F7BBC: ; // 0x27f7bbc
|
|
/* 027F7BBC */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 027F7BC0 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 027F7BC4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 027F7BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7BC8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7BCC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 027F7BD0 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7BD0 */ _t125 = _t124 & 0x00000001u;
|
|
/* 027F7BD0 */ if (_t125) goto L_027F7BD4; else goto L_027F7B48;
|
|
L_027F7BD4: ; // 0x27f7bd4
|
|
/* 027F7BD4 */ _t126 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7BD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t126);
|
|
/* 027F7BD8 */ _t127 = cpu->r[1] + 0x00000018u;
|
|
/* 027F7BD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 027F7BDC */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 027F7BE0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000008u, 0x00000000u, 0x00000017u);
|
|
/* 027F7BE4 */ _t128 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7BE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t128);
|
|
/* 027F7BE8 */ cpu->r[3] = cpu->r[10] | 0xFF000000u;
|
|
/* 027F7BEC */ cpu->lr = cpu->r[0];
|
|
/* 027F7BF0 */ _t129 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7BF0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t129);
|
|
/* 027F7BF4 */ cpu->r[3] = cpu->r[3] | cpu->r[12];
|
|
/* 027F7BF8 */ _t130 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F7BF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t130);
|
|
/* 027F7BFC */ cpu->r[3] = cpu->r[3] | cpu->r[4];
|
|
/* 027F7C00 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F7C04 */ return;
|
|
L_027F7C08: ; // 0x27f7c08
|
|
/* 027F7C08 */ _t131 = cpu->r[31] + 0x0000001Eu;
|
|
/* 027F7C08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t131);
|
|
/* 027F7C0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7C10 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7C10 */ _t133 = _t132 & 0x00000001u;
|
|
/* 027F7C10 */ if (_t133) goto L_027F7DB8; else goto L_027F7C14;
|
|
L_027F7C14: ; // 0x27f7c14
|
|
/* 027F7C14 */ _t134 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F7C14 */ cpu->r[3] = rbrew_read16(cpu->mem, _t134);
|
|
/* 027F7C18 */ Gambit_fn_0282A11C(cpu);
|
|
/* 027F7C1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 027F7C20 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7C20 */ _t136 = _t135 & 0x00000001u;
|
|
/* 027F7C20 */ if (_t136) goto L_027F7C24; else goto L_027F7DB8;
|
|
L_027F7C24: ; // 0x27f7c24
|
|
/* 027F7C24 */ _t137 = cpu->r[31] + 0x00000050u;
|
|
/* 027F7C24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 027F7C28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7C2C */ cpu->r[8] = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F7C30 */ _t138 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7C30 */ _t139 = _t138 & 0x00000001u;
|
|
/* 027F7C30 */ if (_t139) goto L_027F7C34; else goto L_027F7DB8;
|
|
L_027F7C34: ; // 0x27f7c34
|
|
/* 027F7C34 */ cpu->r[12] = 0x00000000u;
|
|
/* 027F7C38 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7C3C */ cpu->r[10] = cpu->r[8] + 0x00000008u;
|
|
/* 027F7C40 */ goto L_027F7C58;
|
|
L_027F7C44: ; // 0x27f7c44
|
|
/* 027F7C44 */ _t140 = cpu->r[8] + 0x00000004u;
|
|
/* 027F7C44 */ cpu->r[7] = rbrew_read32(cpu->mem, _t140);
|
|
/* 027F7C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[7]);
|
|
/* 027F7C4C */ _t141 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7C4C */ _t142 = _t141 & 0x00000001u;
|
|
/* 027F7C4C */ if (_t142) goto L_027F7C50; else goto L_027F7CC0;
|
|
L_027F7C50: ; // 0x27f7c50
|
|
/* 027F7C50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000003u);
|
|
/* 027F7C54 */ _t143 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7C54 */ _t144 = _t143 & 0x00000001u;
|
|
/* 027F7C54 */ if (_t144) goto L_027F7C58; else goto L_027F7C68;
|
|
L_027F7C58: ; // 0x27f7c58
|
|
/* 027F7C58 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7C5C */ cpu->r[31] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7C60 */ cpu->r[5] = cpu->r[3] + cpu->r[0];
|
|
/* 027F7C64 */ goto L_027F7C6C;
|
|
L_027F7C68: ; // 0x27f7c68
|
|
/* 027F7C68 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
L_027F7C6C: ; // 0x27f7c6c
|
|
/* 027F7C6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000003u);
|
|
/* 027F7C70 */ _t145 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7C70 */ _t146 = _t145 & 0x00000001u;
|
|
/* 027F7C70 */ if (_t146) goto L_027F7C74; else goto L_027F7C94;
|
|
L_027F7C74: ; // 0x27f7c74
|
|
/* 027F7C74 */ cpu->r[6] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7C78 */ cpu->r[7] = cpu->r[10] + cpu->r[6];
|
|
/* 027F7C7C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7C80 */ _t147 = cpu->r[7] + 0x00000003u;
|
|
/* 027F7C80 */ cpu->r[11] = rbrew_read8(cpu->mem, _t147);
|
|
/* 027F7C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 027F7C88 */ _t148 = cpu->r[5] + 0x00000000u;
|
|
/* 027F7C88 */ rbrew_write32(cpu->mem, _t148, cpu->r[11]);
|
|
/* 027F7C8C */ _t149 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7C8C */ _t150 = _t149 & 0x00000001u;
|
|
/* 027F7C8C */ if (_t150) goto L_027F7CA8; else goto L_027F7C90;
|
|
L_027F7C90: ; // 0x27f7c90
|
|
/* 027F7C90 */ goto L_027F7CE4;
|
|
L_027F7C94: ; // 0x27f7c94
|
|
/* 027F7C94 */ _t151 = cpu->r[10] + 0x00000003u;
|
|
/* 027F7C94 */ cpu->r[11] = rbrew_read8(cpu->mem, _t151);
|
|
/* 027F7C98 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 027F7CA0 */ _t152 = cpu->r[5] + 0x00000000u;
|
|
/* 027F7CA0 */ rbrew_write32(cpu->mem, _t152, cpu->r[11]);
|
|
/* 027F7CA4 */ _t153 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7CA4 */ _t154 = _t153 & 0x00000001u;
|
|
/* 027F7CA4 */ if (_t154) goto L_027F7CA8; else goto L_027F7CE4;
|
|
L_027F7CA8: ; // 0x27f7ca8
|
|
/* 027F7CA8 */ _t155 = cpu->r[8] + 0x00000004u;
|
|
/* 027F7CA8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t155);
|
|
/* 027F7CAC */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 027F7CB0 */ cpu->r[5] = 0x000000FFu;
|
|
/* 027F7CB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[4]);
|
|
/* 027F7CB8 */ cpu->r[4] = cpu->r[31] + cpu->r[0];
|
|
/* 027F7CBC */ _t156 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7CBC */ _t157 = _t156 & 0x00000001u;
|
|
/* 027F7CBC */ if (_t157) goto L_027F7C50; else goto L_027F7CC0;
|
|
L_027F7CC0: ; // 0x27f7cc0
|
|
/* 027F7CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000003u);
|
|
/* 027F7CC4 */ cpu->r[9] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7CC8 */ _t158 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7CC8 */ _t159 = _t158 & 0x00000001u;
|
|
/* 027F7CC8 */ if (_t159) goto L_027F7CCC; else goto L_027F7CD0;
|
|
L_027F7CCC: ; // 0x27f7ccc
|
|
/* 027F7CCC */ cpu->r[9] = cpu->r[4];
|
|
L_027F7CD0: ; // 0x27f7cd0
|
|
/* 027F7CD0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F7CD4 */ _t160 = cpu->r[9] + 0x00000000u;
|
|
/* 027F7CD4 */ rbrew_write32(cpu->mem, _t160, cpu->r[5]);
|
|
/* 027F7CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 027F7CDC */ cpu->r[4] = cpu->r[4] + 0x00000004u;
|
|
/* 027F7CE0 */ _t161 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7CE0 */ _t162 = _t161 & 0x00000001u;
|
|
/* 027F7CE0 */ if (_t162) goto L_027F7C44; else goto L_027F7CE4;
|
|
L_027F7CE4: ; // 0x27f7ce4
|
|
/* 027F7CE4 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7CE8 */ cpu->r[31] = 0x00000002u;
|
|
/* 027F7CEC */ cpu->r[9] = cpu->r[3];
|
|
/* 027F7CF0 */ cpu->r[8] = cpu->r[1] + 0x00000024u;
|
|
/* 027F7CF4 */ cpu->r[11] = 0x00000000u;
|
|
L_027F7CF8: ; // 0x27f7cf8
|
|
/* 027F7CF8 */ cpu->r[5] = cpu->r[11] + 0x00000001u;
|
|
/* 027F7CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000002u);
|
|
/* 027F7D00 */ cpu->r[6] = cpu->r[3] + 0x00000001u;
|
|
/* 027F7D04 */ _t163 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7D04 */ _t164 = _t163 & 0x00000001u;
|
|
/* 027F7D04 */ if (_t164) goto L_027F7D0C; else goto L_027F7D08;
|
|
L_027F7D08: ; // 0x27f7d08
|
|
/* 027F7D08 */ cpu->r[6] = 0x00000001u;
|
|
L_027F7D0C: ; // 0x27f7d0c
|
|
/* 027F7D0C */ cpu->ctr = cpu->r[6];
|
|
L_027F7D10: ; // 0x27f7d10
|
|
/* 027F7D10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 027F7D14 */ cpu->r[7] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7D18 */ cpu->r[5] = cpu->r[8] + 0xFFFFFFFCu;
|
|
/* 027F7D1C */ _t165 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7D1C */ _t166 = _t165 & 0x00000001u;
|
|
/* 027F7D1C */ if (_t166) goto L_027F7D20; else goto L_027F7D24;
|
|
L_027F7D20: ; // 0x27f7d20
|
|
/* 027F7D20 */ cpu->r[7] = cpu->r[8];
|
|
L_027F7D24: ; // 0x27f7d24
|
|
/* 027F7D24 */ _t167 = cpu->r[7] + 0x00000000u;
|
|
/* 027F7D24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t167);
|
|
/* 027F7D28 */ _t168 = cpu->r[5] + 0x00000000u;
|
|
/* 027F7D28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t168);
|
|
/* 027F7D2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 027F7D30 */ _t169 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F7D30 */ _t170 = _t169 & 0x00000001u;
|
|
/* 027F7D30 */ if (_t170) goto L_027F7D34; else goto L_027F7D6C;
|
|
L_027F7D34: ; // 0x27f7d34
|
|
/* 027F7D34 */ cpu->r[12] = cpu->r[8] + 0xFFFFFFFCu;
|
|
/* 027F7D38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 027F7D3C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7D40 */ _t171 = cpu->r[8] + 0xFFFFFFFCu;
|
|
/* 027F7D40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t171);
|
|
/* 027F7D44 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7D44 */ _t173 = _t172 & 0x00000001u;
|
|
/* 027F7D44 */ if (_t173) goto L_027F7D48; else goto L_027F7D4C;
|
|
L_027F7D48: ; // 0x27f7d48
|
|
/* 027F7D48 */ cpu->r[4] = cpu->r[8];
|
|
L_027F7D4C: ; // 0x27f7d4c
|
|
/* 027F7D4C */ _t174 = cpu->r[4] + 0x00000000u;
|
|
/* 027F7D4C */ cpu->r[7] = rbrew_read32(cpu->mem, _t174);
|
|
/* 027F7D50 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 027F7D54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 027F7D58 */ _t175 = cpu->r[12] + 0x00000000u;
|
|
/* 027F7D58 */ rbrew_write32(cpu->mem, _t175, cpu->r[7]);
|
|
/* 027F7D5C */ _t176 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7D5C */ _t177 = _t176 & 0x00000001u;
|
|
/* 027F7D5C */ if (_t177) goto L_027F7D60; else goto L_027F7D64;
|
|
L_027F7D60: ; // 0x27f7d60
|
|
/* 027F7D60 */ cpu->r[6] = cpu->r[8];
|
|
L_027F7D64: ; // 0x27f7d64
|
|
/* 027F7D64 */ _t178 = cpu->r[6] + 0x00000000u;
|
|
/* 027F7D64 */ rbrew_write32(cpu->mem, _t178, cpu->r[10]);
|
|
/* 027F7D68 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F7D68 */ _t179 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F7D68 */ _t180 = _t179 >> (0x00000002u & 31u);
|
|
/* 027F7D68 */ _t181 = _t180 & 0x00000001u;
|
|
/* 027F7D68 */ if (_t181) goto L_027F7D10; else goto L_027F7D6C;
|
|
L_027F7D6C: ; // 0x27f7d6c
|
|
/* 027F7D6C */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 027F7D70 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 027F7D74 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 027F7D74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7D78 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 027F7D7C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 027F7D80 */ _t182 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7D80 */ _t183 = _t182 & 0x00000001u;
|
|
/* 027F7D80 */ if (_t183) goto L_027F7D84; else goto L_027F7CF8;
|
|
L_027F7D84: ; // 0x27f7d84
|
|
/* 027F7D84 */ _t184 = cpu->r[1] + 0x00000028u;
|
|
/* 027F7D84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t184);
|
|
/* 027F7D88 */ _t185 = cpu->r[1] + 0x00000024u;
|
|
/* 027F7D88 */ cpu->r[4] = rbrew_read32(cpu->mem, _t185);
|
|
/* 027F7D8C */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000010u, 0x00000000u, 0x0000000Fu);
|
|
/* 027F7D90 */ cpu->r[3] = cpu->r[11] | 0xFF000000u;
|
|
/* 027F7D94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000008u, 0x00000000u, 0x00000017u);
|
|
/* 027F7D98 */ _t186 = cpu->r[1] + 0x00000020u;
|
|
/* 027F7D98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t186);
|
|
/* 027F7D9C */ cpu->r[3] = cpu->r[3] | cpu->r[0];
|
|
/* 027F7DA0 */ _t187 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t187);
|
|
/* 027F7DA4 */ _t188 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F7DA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t188);
|
|
/* 027F7DA8 */ cpu->lr = cpu->r[0];
|
|
/* 027F7DAC */ cpu->r[3] = cpu->r[3] | cpu->r[9];
|
|
/* 027F7DB0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F7DB4 */ return;
|
|
L_027F7DB8: ; // 0x27f7db8
|
|
/* 027F7DB8 */ cpu->r[3] = 0x00000000u;
|
|
L_027F7DBC: ; // 0x27f7dbc
|
|
/* 027F7DBC */ _t189 = cpu->r[1] + 0x00000034u;
|
|
/* 027F7DBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t189);
|
|
/* 027F7DC0 */ _t190 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F7DC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t190);
|
|
/* 027F7DC4 */ cpu->lr = cpu->r[0];
|
|
/* 027F7DC8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 027F7DCC */ return;
|
|
}
|
|
|
|
// fn_027F7DD0 @ 0x27f7dd0
|
|
void Gambit_fn_027F7DD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_027F7DD0: ; // 0x27f7dd0
|
|
/* 027F7DD0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7DD4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 027F7DD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 027F7DD8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F7DD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 027F7DD8 */ cpu->r[1] = _t1;
|
|
/* 027F7DDC */ Gambit_fn_027F692C(cpu);
|
|
/* 027F7DE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7DE4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7DE4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F7DE4 */ if (_t3) goto L_027F7DE8; else goto L_027F7DFC;
|
|
L_027F7DE8: ; // 0x27f7de8
|
|
/* 027F7DE8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F7DEC */ cpu->lr = cpu->r[0];
|
|
/* 027F7DF0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7DF4 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7DF8 */ return;
|
|
L_027F7DFC: ; // 0x27f7dfc
|
|
/* 027F7DFC */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7E00 */ _t5 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F7E00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F7E04 */ _t6 = cpu->r[12] + 0x00000018u;
|
|
/* 027F7E04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F7E08 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 027F7E0C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F7E10 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F7E14 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F7E18 */ cpu->lr = cpu->r[0];
|
|
/* 027F7E1C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7E20 */ return;
|
|
}
|
|
|
|
// fn_027F7DD8 @ 0x27f7dd8
|
|
void Gambit_fn_027F7DD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_027F7DD8: ; // 0x27f7dd8
|
|
/* 027F7DD8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 027F7DD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7DD8 */ cpu->r[1] = _t0;
|
|
/* 027F7DDC */ Gambit_fn_027F692C(cpu);
|
|
/* 027F7DE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7DE4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7DE4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F7DE4 */ if (_t2) goto L_027F7DE8; else goto L_027F7DFC;
|
|
L_027F7DE8: ; // 0x27f7de8
|
|
/* 027F7DE8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F7DEC */ cpu->lr = cpu->r[0];
|
|
/* 027F7DF0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7DF4 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7DF8 */ return;
|
|
L_027F7DFC: ; // 0x27f7dfc
|
|
/* 027F7DFC */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7E00 */ _t4 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F7E00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F7E04 */ _t5 = cpu->r[12] + 0x00000018u;
|
|
/* 027F7E04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F7E08 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 027F7E0C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 027F7E10 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F7E14 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F7E18 */ cpu->lr = cpu->r[0];
|
|
/* 027F7E1C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7E20 */ return;
|
|
}
|
|
|
|
// fn_027F7E24 @ 0x27f7e24
|
|
void Gambit_fn_027F7E24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027F7E24: ; // 0x27f7e24
|
|
/* 027F7E24 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7E28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F7E28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7E28 */ cpu->r[1] = _t0;
|
|
/* 027F7E2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7E30 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7E30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7E34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7E34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7E38 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7E38 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F7E38 */ if (_t4) goto L_027F7E48; else goto L_027F7E3C;
|
|
L_027F7E3C: ; // 0x27f7e3c
|
|
/* 027F7E3C */ Gambit_fn_027F7DD0(cpu);
|
|
/* 027F7E40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7E44 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7E44 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F7E44 */ if (_t6) goto L_027F7E48; else goto L_027F7E60;
|
|
L_027F7E48: ; // 0x27f7e48
|
|
/* 027F7E48 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7E48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F7E4C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F7E50 */ cpu->lr = cpu->r[0];
|
|
/* 027F7E54 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7E58 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7E5C */ return;
|
|
L_027F7E60: ; // 0x27f7e60
|
|
/* 027F7E60 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7E64 */ _t9 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F7E64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F7E68 */ _t10 = cpu->r[12] + 0x00000024u;
|
|
/* 027F7E68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F7E6C */ cpu->r[10] = cpu->r[9] ^ cpu->r[31];
|
|
/* 027F7E70 */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 027F7E74 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F7E78 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F7E7C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F7E80 */ cpu->lr = cpu->r[0];
|
|
/* 027F7E84 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7E88 */ return;
|
|
}
|
|
|
|
// fn_027F7E28 @ 0x27f7e28
|
|
void Gambit_fn_027F7E28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027F7E28: ; // 0x27f7e28
|
|
/* 027F7E28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F7E28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7E28 */ cpu->r[1] = _t0;
|
|
/* 027F7E2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7E30 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7E30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7E34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7E34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7E38 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7E38 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F7E38 */ if (_t4) goto L_027F7E48; else goto L_027F7E3C;
|
|
L_027F7E3C: ; // 0x27f7e3c
|
|
/* 027F7E3C */ Gambit_fn_027F7DD0(cpu);
|
|
/* 027F7E40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7E44 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7E44 */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F7E44 */ if (_t6) goto L_027F7E48; else goto L_027F7E60;
|
|
L_027F7E48: ; // 0x27f7e48
|
|
/* 027F7E48 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7E48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F7E4C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F7E50 */ cpu->lr = cpu->r[0];
|
|
/* 027F7E54 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7E58 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7E5C */ return;
|
|
L_027F7E60: ; // 0x27f7e60
|
|
/* 027F7E60 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7E64 */ _t9 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F7E64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F7E68 */ _t10 = cpu->r[12] + 0x00000024u;
|
|
/* 027F7E68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F7E6C */ cpu->r[10] = cpu->r[9] ^ cpu->r[31];
|
|
/* 027F7E70 */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 027F7E74 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F7E78 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F7E7C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F7E80 */ cpu->lr = cpu->r[0];
|
|
/* 027F7E84 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7E88 */ return;
|
|
}
|
|
|
|
// fn_027F7E8C @ 0x27f7e8c
|
|
void Gambit_fn_027F7E8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027F7E8C: ; // 0x27f7e8c
|
|
/* 027F7E8C */ cpu->r[0] = cpu->lr;
|
|
/* 027F7E90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F7E90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7E90 */ cpu->r[1] = _t0;
|
|
/* 027F7E94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7E98 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7E9C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7E9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7EA0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7EA0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F7EA0 */ if (_t4) goto L_027F7EB0; else goto L_027F7EA4;
|
|
L_027F7EA4: ; // 0x27f7ea4
|
|
/* 027F7EA4 */ Gambit_fn_027F69F8(cpu);
|
|
/* 027F7EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7EAC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7EAC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F7EAC */ if (_t6) goto L_027F7EB0; else goto L_027F7EC8;
|
|
L_027F7EB0: ; // 0x27f7eb0
|
|
/* 027F7EB0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F7EB4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7EB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F7EB8 */ cpu->lr = cpu->r[0];
|
|
/* 027F7EBC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7EC0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7EC4 */ return;
|
|
L_027F7EC8: ; // 0x27f7ec8
|
|
/* 027F7EC8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7ECC */ _t9 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F7ECC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F7ED0 */ _t10 = cpu->r[12] + 0x00000024u;
|
|
/* 027F7ED0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F7ED4 */ cpu->r[10] = cpu->r[9] ^ cpu->r[31];
|
|
/* 027F7ED8 */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 027F7EDC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F7EE0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F7EE4 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7EE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F7EE8 */ cpu->lr = cpu->r[0];
|
|
/* 027F7EEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7EF0 */ return;
|
|
}
|
|
|
|
// fn_027F7E90 @ 0x27f7e90
|
|
void Gambit_fn_027F7E90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_027F7E90: ; // 0x27f7e90
|
|
/* 027F7E90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F7E90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7E90 */ cpu->r[1] = _t0;
|
|
/* 027F7E94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7E94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7E98 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F7E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7E9C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7E9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F7EA0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7EA0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F7EA0 */ if (_t4) goto L_027F7EB0; else goto L_027F7EA4;
|
|
L_027F7EA4: ; // 0x27f7ea4
|
|
/* 027F7EA4 */ Gambit_fn_027F69F8(cpu);
|
|
/* 027F7EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7EAC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7EAC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F7EAC */ if (_t6) goto L_027F7EB0; else goto L_027F7EC8;
|
|
L_027F7EB0: ; // 0x27f7eb0
|
|
/* 027F7EB0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F7EB4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7EB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F7EB8 */ cpu->lr = cpu->r[0];
|
|
/* 027F7EBC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7EC0 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7EC4 */ return;
|
|
L_027F7EC8: ; // 0x27f7ec8
|
|
/* 027F7EC8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7ECC */ _t9 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F7ECC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F7ED0 */ _t10 = cpu->r[12] + 0x00000024u;
|
|
/* 027F7ED0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F7ED4 */ cpu->r[10] = cpu->r[9] ^ cpu->r[31];
|
|
/* 027F7ED8 */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 027F7EDC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F7EE0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F7EE4 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7EE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F7EE8 */ cpu->lr = cpu->r[0];
|
|
/* 027F7EEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F7EF0 */ return;
|
|
}
|
|
|
|
// fn_027F7EF4 @ 0x27f7ef4
|
|
void Gambit_fn_027F7EF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_027F7EF4: ; // 0x27f7ef4
|
|
/* 027F7EF4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7EF8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F7EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7EF8 */ cpu->r[1] = _t0;
|
|
/* 027F7EFC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7F00 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7F00 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F7F04 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F7F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F7F08 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F7F0C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7F0C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F7F10 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7F10 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F7F10 */ if (_t5) goto L_027F7F98; else goto L_027F7F14;
|
|
L_027F7F14: ; // 0x27f7f14
|
|
/* 027F7F14 */ _t6 = cpu->r[4] + 0x00000000u;
|
|
/* 027F7F14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F7F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7F1C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F1C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F7F1C */ if (_t8) goto L_027F7F28; else goto L_027F7F20;
|
|
L_027F7F20: ; // 0x27f7f20
|
|
/* 027F7F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F7F24 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F24 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F7F24 */ if (_t10) goto L_027F7F28; else goto L_027F7F98;
|
|
L_027F7F28: ; // 0x27f7f28
|
|
/* 027F7F28 */ Gambit_fn_027F692C(cpu);
|
|
/* 027F7F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7F30 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F30 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F7F30 */ if (_t12) goto L_027F7F98; else goto L_027F7F34;
|
|
L_027F7F34: ; // 0x27f7f34
|
|
/* 027F7F34 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7F38 */ _t13 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F7F38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F7F3C */ _t14 = cpu->r[12] + 0x00000024u;
|
|
/* 027F7F3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F7F40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 027F7F44 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F44 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F7F44 */ if (_t16) goto L_027F7F48; else goto L_027F7F98;
|
|
L_027F7F48: ; // 0x27f7f48
|
|
/* 027F7F48 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7F4C */ Gambit_fn_027F6BAC(cpu);
|
|
/* 027F7F50 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7F50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F7F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7F58 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F58 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F7F58 */ if (_t19) goto L_027F7F5C; else goto L_027F7F98;
|
|
L_027F7F5C: ; // 0x27f7f5c
|
|
/* 027F7F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7F60 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F60 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F7F60 */ if (_t21) goto L_027F7FB4; else goto L_027F7F64;
|
|
L_027F7F64: ; // 0x27f7f64
|
|
/* 027F7F64 */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F7F68 */ _t22 = cpu->r[3] + 0x00003D9Cu;
|
|
/* 027F7F68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F7F6C */ cpu->r[4] = cpu->r[30];
|
|
/* 027F7F70 */ Gambit_fn_0212FBCC(cpu);
|
|
/* 027F7F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7F78 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F78 */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F7F78 */ if (_t24) goto L_027F7F98; else goto L_027F7F7C;
|
|
L_027F7F7C: ; // 0x27f7f7c
|
|
/* 027F7F7C */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F7F80 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7F80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F7F84 */ cpu->lr = cpu->r[0];
|
|
/* 027F7F88 */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 027F7F88 */ cpu->r[3] = rbrew_read8(cpu->mem, _t27);
|
|
/* 027F7F8C */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7F8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027F7F90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7F94 */ return;
|
|
L_027F7F98: ; // 0x27f7f98
|
|
/* 027F7F98 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F7F9C */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7F9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F7FA0 */ cpu->lr = cpu->r[0];
|
|
/* 027F7FA4 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7FA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F7FA8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7FAC */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7FB0 */ return;
|
|
L_027F7FB4: ; // 0x27f7fb4
|
|
/* 027F7FB4 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7FB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F7FB8 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7FB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F7FBC */ cpu->lr = cpu->r[0];
|
|
/* 027F7FC0 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7FC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F7FC4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7FC8 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7FCC */ return;
|
|
}
|
|
|
|
// fn_027F7EF8 @ 0x27f7ef8
|
|
void Gambit_fn_027F7EF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_027F7EF8: ; // 0x27f7ef8
|
|
/* 027F7EF8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F7EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7EF8 */ cpu->r[1] = _t0;
|
|
/* 027F7EFC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F7F00 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7F00 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 027F7F04 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F7F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F7F08 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F7F0C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7F0C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F7F10 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F7F10 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F7F10 */ if (_t5) goto L_027F7F98; else goto L_027F7F14;
|
|
L_027F7F14: ; // 0x27f7f14
|
|
/* 027F7F14 */ _t6 = cpu->r[4] + 0x00000000u;
|
|
/* 027F7F14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F7F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7F1C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F1C */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F7F1C */ if (_t8) goto L_027F7F28; else goto L_027F7F20;
|
|
L_027F7F20: ; // 0x27f7f20
|
|
/* 027F7F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F7F24 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F24 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F7F24 */ if (_t10) goto L_027F7F28; else goto L_027F7F98;
|
|
L_027F7F28: ; // 0x27f7f28
|
|
/* 027F7F28 */ Gambit_fn_027F692C(cpu);
|
|
/* 027F7F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7F30 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F30 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F7F30 */ if (_t12) goto L_027F7F98; else goto L_027F7F34;
|
|
L_027F7F34: ; // 0x27f7f34
|
|
/* 027F7F34 */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F7F38 */ _t13 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F7F38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F7F3C */ _t14 = cpu->r[12] + 0x00000024u;
|
|
/* 027F7F3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F7F40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 027F7F44 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F44 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F7F44 */ if (_t16) goto L_027F7F48; else goto L_027F7F98;
|
|
L_027F7F48: ; // 0x27f7f48
|
|
/* 027F7F48 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F7F4C */ Gambit_fn_027F6BAC(cpu);
|
|
/* 027F7F50 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 027F7F50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F7F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F7F58 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F58 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F7F58 */ if (_t19) goto L_027F7F5C; else goto L_027F7F98;
|
|
L_027F7F5C: ; // 0x27f7f5c
|
|
/* 027F7F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F7F60 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F60 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F7F60 */ if (_t21) goto L_027F7FB4; else goto L_027F7F64;
|
|
L_027F7F64: ; // 0x27f7f64
|
|
/* 027F7F64 */ cpu->r[3] = 0x101C0000u;
|
|
/* 027F7F68 */ _t22 = cpu->r[3] + 0x00003D9Cu;
|
|
/* 027F7F68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F7F6C */ cpu->r[4] = cpu->r[30];
|
|
/* 027F7F70 */ Gambit_fn_0212FBCC(cpu);
|
|
/* 027F7F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7F78 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7F78 */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F7F78 */ if (_t24) goto L_027F7F98; else goto L_027F7F7C;
|
|
L_027F7F7C: ; // 0x27f7f7c
|
|
/* 027F7F7C */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F7F80 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7F80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F7F84 */ cpu->lr = cpu->r[0];
|
|
/* 027F7F88 */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 027F7F88 */ cpu->r[3] = rbrew_read8(cpu->mem, _t27);
|
|
/* 027F7F8C */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7F8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 027F7F90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7F94 */ return;
|
|
L_027F7F98: ; // 0x27f7f98
|
|
/* 027F7F98 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F7F9C */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7F9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F7FA0 */ cpu->lr = cpu->r[0];
|
|
/* 027F7FA4 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7FA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F7FA8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7FAC */ cpu->r[3] = 0x00000000u;
|
|
/* 027F7FB0 */ return;
|
|
L_027F7FB4: ; // 0x27f7fb4
|
|
/* 027F7FB4 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7FB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F7FB8 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7FB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F7FBC */ cpu->lr = cpu->r[0];
|
|
/* 027F7FC0 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7FC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F7FC4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F7FC8 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F7FCC */ return;
|
|
}
|
|
|
|
// fn_027F7FD0 @ 0x27f7fd0
|
|
void Gambit_fn_027F7FD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65;
|
|
|
|
L_027F7FD0: ; // 0x27f7fd0
|
|
/* 027F7FD0 */ cpu->r[0] = cpu->lr;
|
|
/* 027F7FD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F7FD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7FD4 */ cpu->r[1] = _t0;
|
|
/* 027F7FD8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7FD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F7FDC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7FDC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F7FE0 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F7FE4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F7FE8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7FE8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F7FEC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7FEC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F7FF0 */ cpu->r[29] = cpu->r[4];
|
|
/* 027F7FF4 */ Gambit_fn_027F692C(cpu);
|
|
/* 027F7FF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7FFC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7FFC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F7FFC */ if (_t6) goto L_027F8000; else goto L_027F803C;
|
|
L_027F8000: ; // 0x27f8000
|
|
/* 027F8000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F8004 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8004 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F8004 */ if (_t8) goto L_027F8008; else goto L_027F8018;
|
|
L_027F8008: ; // 0x27f8008
|
|
/* 027F8008 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F800C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8010 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F8010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F8014 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8014 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F8014 */ if (_t10) goto L_027F8158; else goto L_027F8018;
|
|
L_027F8018: ; // 0x27f8018
|
|
/* 027F8018 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027F801C */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 027F801C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027F8020 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8020 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F8024 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F8024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F8028 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8028 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F802C */ cpu->lr = cpu->r[0];
|
|
/* 027F8030 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8030 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F8034 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F8038 */ return;
|
|
L_027F803C: ; // 0x27f803c
|
|
/* 027F803C */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F8040 */ _t16 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F8040 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F8044 */ _t17 = cpu->r[12] + 0x00000018u;
|
|
/* 027F8044 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F8048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u);
|
|
/* 027F804C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F804C */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F804C */ if (_t19) goto L_027F80A0; else goto L_027F8050;
|
|
L_027F8050: ; // 0x27f8050
|
|
/* 027F8050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 027F8054 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8054 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F8054 */ if (_t21) goto L_027F80A0; else goto L_027F8058;
|
|
L_027F8058: ; // 0x27f8058
|
|
/* 027F8058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u);
|
|
/* 027F805C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F805C */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F805C */ if (_t23) goto L_027F80A0; else goto L_027F8060;
|
|
L_027F8060: ; // 0x27f8060
|
|
/* 027F8060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F8064 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8068 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8068 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F8068 */ if (_t25) goto L_027F806C; else goto L_027F807C;
|
|
L_027F806C: ; // 0x27f806c
|
|
/* 027F806C */ cpu->r[3] = 0x00000004u;
|
|
/* 027F8070 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8078 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8078 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F8078 */ if (_t27) goto L_027F8158; else goto L_027F807C;
|
|
L_027F807C: ; // 0x27f807c
|
|
/* 027F807C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027F8080 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8080 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 027F8084 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8084 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F8088 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F8088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F808C */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 027F808C */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F8090 */ cpu->lr = cpu->r[0];
|
|
/* 027F8094 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8094 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F8098 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F809C */ return;
|
|
L_027F80A0: ; // 0x27f80a0
|
|
/* 027F80A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F80A4 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F80A4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 027F80A4 */ if (_t34) goto L_027F80A8; else goto L_027F80E8;
|
|
L_027F80A8: ; // 0x27f80a8
|
|
/* 027F80A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F80AC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F80B0 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F80B0 */ _t36 = _t35 & 0x00000001u;
|
|
/* 027F80B0 */ if (_t36) goto L_027F80B4; else goto L_027F80C4;
|
|
L_027F80B4: ; // 0x27f80b4
|
|
/* 027F80B4 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F80B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F80BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F80C0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F80C0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F80C0 */ if (_t38) goto L_027F8158; else goto L_027F80C4;
|
|
L_027F80C4: ; // 0x27f80c4
|
|
/* 027F80C4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 027F80C8 */ _t39 = cpu->r[3] + 0x00000000u;
|
|
/* 027F80C8 */ rbrew_write32(cpu->mem, _t39, cpu->r[11]);
|
|
/* 027F80CC */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F80CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F80D0 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F80D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F80D4 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 027F80D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F80D8 */ cpu->lr = cpu->r[0];
|
|
/* 027F80DC */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 027F80DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F80E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F80E4 */ return;
|
|
L_027F80E8: ; // 0x27f80e8
|
|
/* 027F80E8 */ _t44 = cpu->r[12] + 0x00000024u;
|
|
/* 027F80E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F80EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[12]);
|
|
/* 027F80F0 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F80F0 */ _t46 = _t45 & 0x00000001u;
|
|
/* 027F80F0 */ if (_t46) goto L_027F8134; else goto L_027F80F4;
|
|
L_027F80F4: ; // 0x27f80f4
|
|
/* 027F80F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F80F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F80FC */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F80FC */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F80FC */ if (_t48) goto L_027F8100; else goto L_027F8110;
|
|
L_027F8100: ; // 0x27f8100
|
|
/* 027F8100 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F8104 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F810C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F810C */ _t50 = _t49 & 0x00000001u;
|
|
/* 027F810C */ if (_t50) goto L_027F8158; else goto L_027F8110;
|
|
L_027F8110: ; // 0x27f8110
|
|
/* 027F8110 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027F8114 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8114 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 027F8118 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8118 */ cpu->r[29] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F811C */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F811C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F8120 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8120 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F8124 */ cpu->lr = cpu->r[0];
|
|
/* 027F8128 */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8128 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F812C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F8130 */ return;
|
|
L_027F8134: ; // 0x27f8134
|
|
/* 027F8134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F8138 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F813C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F813C */ _t57 = _t56 & 0x00000001u;
|
|
/* 027F813C */ if (_t57) goto L_027F8140; else goto L_027F8150;
|
|
L_027F8140: ; // 0x27f8140
|
|
/* 027F8140 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F8144 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F814C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F814C */ _t59 = _t58 & 0x00000001u;
|
|
/* 027F814C */ if (_t59) goto L_027F8158; else goto L_027F8150;
|
|
L_027F8150: ; // 0x27f8150
|
|
/* 027F8150 */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 027F8150 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027F8154 */ _t61 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8154 */ rbrew_write32(cpu->mem, _t61, cpu->r[8]);
|
|
L_027F8158: ; // 0x27f8158
|
|
/* 027F8158 */ _t62 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8158 */ cpu->r[29] = rbrew_read32(cpu->mem, _t62);
|
|
/* 027F815C */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F815C */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F8160 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8160 */ cpu->r[30] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F8164 */ cpu->lr = cpu->r[0];
|
|
/* 027F8168 */ _t65 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8168 */ cpu->r[31] = rbrew_read32(cpu->mem, _t65);
|
|
/* 027F816C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F8170 */ return;
|
|
}
|
|
|
|
// fn_027F7FD4 @ 0x27f7fd4
|
|
void Gambit_fn_027F7FD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65;
|
|
|
|
L_027F7FD4: ; // 0x27f7fd4
|
|
/* 027F7FD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F7FD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F7FD4 */ cpu->r[1] = _t0;
|
|
/* 027F7FD8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F7FD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F7FDC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F7FDC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F7FE0 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F7FE4 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F7FE8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F7FE8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F7FEC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F7FEC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 027F7FF0 */ cpu->r[29] = cpu->r[4];
|
|
/* 027F7FF4 */ Gambit_fn_027F692C(cpu);
|
|
/* 027F7FF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F7FFC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F7FFC */ _t6 = _t5 & 0x00000001u;
|
|
/* 027F7FFC */ if (_t6) goto L_027F8000; else goto L_027F803C;
|
|
L_027F8000: ; // 0x27f8000
|
|
/* 027F8000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F8004 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8004 */ _t8 = _t7 & 0x00000001u;
|
|
/* 027F8004 */ if (_t8) goto L_027F8008; else goto L_027F8018;
|
|
L_027F8008: ; // 0x27f8008
|
|
/* 027F8008 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F800C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8010 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F8010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F8014 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8014 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F8014 */ if (_t10) goto L_027F8158; else goto L_027F8018;
|
|
L_027F8018: ; // 0x27f8018
|
|
/* 027F8018 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027F801C */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 027F801C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 027F8020 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8020 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F8024 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F8024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F8028 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8028 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F802C */ cpu->lr = cpu->r[0];
|
|
/* 027F8030 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8030 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F8034 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F8038 */ return;
|
|
L_027F803C: ; // 0x27f803c
|
|
/* 027F803C */ cpu->r[12] = 0x101C0000u;
|
|
/* 027F8040 */ _t16 = cpu->r[12] + 0x0000457Cu;
|
|
/* 027F8040 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F8044 */ _t17 = cpu->r[12] + 0x00000018u;
|
|
/* 027F8044 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F8048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u);
|
|
/* 027F804C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F804C */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F804C */ if (_t19) goto L_027F80A0; else goto L_027F8050;
|
|
L_027F8050: ; // 0x27f8050
|
|
/* 027F8050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u);
|
|
/* 027F8054 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8054 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F8054 */ if (_t21) goto L_027F80A0; else goto L_027F8058;
|
|
L_027F8058: ; // 0x27f8058
|
|
/* 027F8058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u);
|
|
/* 027F805C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F805C */ _t23 = _t22 & 0x00000001u;
|
|
/* 027F805C */ if (_t23) goto L_027F80A0; else goto L_027F8060;
|
|
L_027F8060: ; // 0x27f8060
|
|
/* 027F8060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F8064 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8068 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8068 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F8068 */ if (_t25) goto L_027F806C; else goto L_027F807C;
|
|
L_027F806C: ; // 0x27f806c
|
|
/* 027F806C */ cpu->r[3] = 0x00000004u;
|
|
/* 027F8070 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8078 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8078 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F8078 */ if (_t27) goto L_027F8158; else goto L_027F807C;
|
|
L_027F807C: ; // 0x27f807c
|
|
/* 027F807C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027F8080 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8080 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 027F8084 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8084 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F8088 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F8088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F808C */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 027F808C */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F8090 */ cpu->lr = cpu->r[0];
|
|
/* 027F8094 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8094 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F8098 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F809C */ return;
|
|
L_027F80A0: ; // 0x27f80a0
|
|
/* 027F80A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F80A4 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F80A4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 027F80A4 */ if (_t34) goto L_027F80A8; else goto L_027F80E8;
|
|
L_027F80A8: ; // 0x27f80a8
|
|
/* 027F80A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F80AC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F80B0 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F80B0 */ _t36 = _t35 & 0x00000001u;
|
|
/* 027F80B0 */ if (_t36) goto L_027F80B4; else goto L_027F80C4;
|
|
L_027F80B4: ; // 0x27f80b4
|
|
/* 027F80B4 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F80B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F80BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F80C0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F80C0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F80C0 */ if (_t38) goto L_027F8158; else goto L_027F80C4;
|
|
L_027F80C4: ; // 0x27f80c4
|
|
/* 027F80C4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 027F80C8 */ _t39 = cpu->r[3] + 0x00000000u;
|
|
/* 027F80C8 */ rbrew_write32(cpu->mem, _t39, cpu->r[11]);
|
|
/* 027F80CC */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F80CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F80D0 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F80D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F80D4 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 027F80D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F80D8 */ cpu->lr = cpu->r[0];
|
|
/* 027F80DC */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 027F80DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F80E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F80E4 */ return;
|
|
L_027F80E8: ; // 0x27f80e8
|
|
/* 027F80E8 */ _t44 = cpu->r[12] + 0x00000024u;
|
|
/* 027F80E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F80EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[12]);
|
|
/* 027F80F0 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F80F0 */ _t46 = _t45 & 0x00000001u;
|
|
/* 027F80F0 */ if (_t46) goto L_027F8134; else goto L_027F80F4;
|
|
L_027F80F4: ; // 0x27f80f4
|
|
/* 027F80F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F80F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F80FC */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F80FC */ _t48 = _t47 & 0x00000001u;
|
|
/* 027F80FC */ if (_t48) goto L_027F8100; else goto L_027F8110;
|
|
L_027F8100: ; // 0x27f8100
|
|
/* 027F8100 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F8104 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F810C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F810C */ _t50 = _t49 & 0x00000001u;
|
|
/* 027F810C */ if (_t50) goto L_027F8158; else goto L_027F8110;
|
|
L_027F8110: ; // 0x27f8110
|
|
/* 027F8110 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 027F8114 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8114 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 027F8118 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8118 */ cpu->r[29] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F811C */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F811C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F8120 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8120 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F8124 */ cpu->lr = cpu->r[0];
|
|
/* 027F8128 */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8128 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F812C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F8130 */ return;
|
|
L_027F8134: ; // 0x27f8134
|
|
/* 027F8134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F8138 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F813C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F813C */ _t57 = _t56 & 0x00000001u;
|
|
/* 027F813C */ if (_t57) goto L_027F8140; else goto L_027F8150;
|
|
L_027F8140: ; // 0x27f8140
|
|
/* 027F8140 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F8144 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F814C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F814C */ _t59 = _t58 & 0x00000001u;
|
|
/* 027F814C */ if (_t59) goto L_027F8158; else goto L_027F8150;
|
|
L_027F8150: ; // 0x27f8150
|
|
/* 027F8150 */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 027F8150 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027F8154 */ _t61 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8154 */ rbrew_write32(cpu->mem, _t61, cpu->r[8]);
|
|
L_027F8158: ; // 0x27f8158
|
|
/* 027F8158 */ _t62 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8158 */ cpu->r[29] = rbrew_read32(cpu->mem, _t62);
|
|
/* 027F815C */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F815C */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F8160 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8160 */ cpu->r[30] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F8164 */ cpu->lr = cpu->r[0];
|
|
/* 027F8168 */ _t65 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8168 */ cpu->r[31] = rbrew_read32(cpu->mem, _t65);
|
|
/* 027F816C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F8170 */ return;
|
|
}
|
|
|
|
// fn_027F817C @ 0x27f817c
|
|
void Gambit_fn_027F817C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F817C: ; // 0x27f817c
|
|
/* 027F817C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F817C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F817C */ cpu->r[1] = _t0;
|
|
/* 027F8180 */ _t1 = cpu->r[4] + 0x000000B4u;
|
|
/* 027F8180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F8184 */ _t2 = cpu->r[4] + 0x000000B8u;
|
|
/* 027F8184 */ cpu->r[4] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F8188 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 027F818C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 027F818C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F8190 */ Gambit_fn_027F7FD0(cpu);
|
|
/* 027F8194 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F8194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8198 */ cpu->lr = cpu->r[0];
|
|
/* 027F819C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F81A0 */ return;
|
|
}
|
|
|
|
// fn_027F81A8 @ 0x27f81a8
|
|
void Gambit_fn_027F81A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F81A8: ; // 0x27f81a8
|
|
/* 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_027F8204 @ 0x27f8204
|
|
void Gambit_fn_027F8204(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137;
|
|
|
|
L_027F8204: ; // 0x27f8204
|
|
/* 027F8204 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 027F8204 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8204 */ cpu->r[1] = _t0;
|
|
/* 027F8208 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 027F8208 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 027F820C */ /* nop */
|
|
/* 027F8210 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 027F8210 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 027F8214 */ /* nop */
|
|
/* 027F8218 */ /* nop */
|
|
/* 027F821C */ cpu->r[0] = cpu->lr;
|
|
/* 027F8220 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 027F8220 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 027F8224 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 027F8224 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 027F8228 */ /* nop */
|
|
/* 027F822C */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 027F822C */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 027F8230 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 027F8230 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 027F8234 */ /* nop */
|
|
/* 027F8238 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 027F8238 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 027F823C */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 027F8240 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 027F8240 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 027F8244 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 027F8248 */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F824C */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F824C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F8250 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 027F8254 */ _t10 = cpu->r[7] + 0x00003BFCu;
|
|
/* 027F8254 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 027F8254 */ cpu->r[7] = _t10;
|
|
/* 027F8258 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F825C */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F8260 */ _t11 = cpu->r[5] + 0x00003C04u;
|
|
/* 027F8260 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 027F8260 */ cpu->r[5] = _t11;
|
|
/* 027F8264 */ cpu->r[10] = cpu->r[10] + 0x00003C14u;
|
|
/* 027F8268 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 027F8268 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 027F826C */ cpu->r[9] = 0x101F0000u;
|
|
/* 027F8270 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 027F8270 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 027F8274 */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 027F8278 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 027F8278 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 027F827C */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F8280 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 027F8280 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F8284 */ cpu->r[31] = 0x101F0000u;
|
|
/* 027F8288 */ _t16 = cpu->r[12] + 0x00003C0Cu;
|
|
/* 027F8288 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 027F8288 */ cpu->r[12] = _t16;
|
|
/* 027F828C */ cpu->r[11] = 0x00000002u;
|
|
/* 027F8290 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 027F8290 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F8294 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 027F8294 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F8298 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8298 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 027F829C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027F829C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F82A0 */ _t21 = cpu->r[31] + 0x00003C28u;
|
|
/* 027F82A0 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 027F82A0 */ cpu->r[31] = _t21;
|
|
/* 027F82A4 */ cpu->r[0] = 0x00000004u;
|
|
/* 027F82A8 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 027F82A8 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 027F82AC */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F82B0 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 027F82B0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F82B4 */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 027F82B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F82B4 */ cpu->r[12] = _t24;
|
|
/* 027F82B8 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 027F82B8 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 027F82BC */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 027F82BC */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 027F82C0 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 027F82C0 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 027F82C4 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 027F82C4 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 027F82C8 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 027F82C8 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 027F82CC */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 027F82CC */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 027F82D0 */ cpu->r[7] = 0x101F0000u;
|
|
/* 027F82D4 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 027F82D4 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 027F82D8 */ cpu->r[6] = 0x101F0000u;
|
|
/* 027F82DC */ _t32 = cpu->r[7] + 0x00003C24u;
|
|
/* 027F82DC */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 027F82E0 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 027F82E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F82E0 */ cpu->r[6] = _t33;
|
|
/* 027F82E4 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 027F82E4 */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 027F82E8 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 027F82E8 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 027F82EC */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F82F0 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F82F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F82F4 */ _t37 = cpu->r[5] + 0x00003C1Cu;
|
|
/* 027F82F4 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 027F82F4 */ cpu->r[5] = _t37;
|
|
/* 027F82F8 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 027F82F8 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 027F82FC */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 027F82FC */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 027F8300 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 027F8300 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 027F8304 */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 027F8304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F8308 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 027F8308 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F830C */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 027F830C */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F8310 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 027F8310 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 027F8314 */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 027F8314 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 027F8318 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 027F8318 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 027F831C */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 027F831C */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 027F8320 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 027F8320 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 027F8324 */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 027F8324 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F8328 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F8328 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 027F832C */ cpu->r[11] = 0x101F0000u;
|
|
/* 027F8330 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 027F8330 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F8334 */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 027F8334 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F8334 */ cpu->r[11] = _t52;
|
|
/* 027F8338 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 027F8338 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F833C */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 027F833C */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F8340 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 027F8340 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F8344 */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 027F8344 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 027F8348 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 027F8348 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 027F834C */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 027F834C */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 027F8350 */ cpu->r[12] = 0x101F0000u;
|
|
/* 027F8354 */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F8354 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 027F8358 */ cpu->r[5] = 0x101F0000u;
|
|
/* 027F835C */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 027F835C */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 027F8360 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 027F8364 */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 027F8364 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F8364 */ cpu->r[12] = _t61;
|
|
/* 027F8368 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 027F8368 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 027F836C */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 027F836C */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F8370 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 027F8370 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 027F8374 */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 027F8374 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 027F8378 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 027F8378 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 027F837C */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 027F837C */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 027F8380 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 027F8380 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 027F8384 */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 027F8384 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 027F8388 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 027F8388 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 027F838C */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 027F838C */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 027F8390 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 027F8390 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 027F8394 */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 027F8394 */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 027F8398 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 027F8398 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 027F839C */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 027F839C */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 027F83A0 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 027F83A0 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 027F83A4 */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 027F83A4 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 027F83A8 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 027F83A8 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 027F83AC */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 027F83AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 027F83B0 */ cpu->r[10] = 0x101F0000u;
|
|
/* 027F83B4 */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 027F83B4 */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 027F83B8 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 027F83B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 027F83B8 */ cpu->r[10] = _t81;
|
|
/* 027F83BC */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 027F83BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F83C0 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 027F83C0 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 027F83C4 */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 027F83C4 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 027F83C8 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 027F83C8 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 027F83CC */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 027F83CC */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 027F83D0 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F83D4 */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 027F83D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 027F83D8 */ _t88 = cpu->r[12] + 0x00000770u;
|
|
/* 027F83D8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 027F83DC */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 027F83DC */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 027F83E0 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 027F83E0 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 027F83E4 */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 027F83E4 */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 027F83E8 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 027F83E8 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 027F83EC */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 027F83EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 027F83F0 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 027F83F0 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 027F83F4 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F83F8 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 027F83F8 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 027F83FC */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 027F8400 */ _t96 = cpu->r[12] + 0x00000768u;
|
|
/* 027F8400 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 027F8404 */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 027F8404 */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 027F8408 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F840C */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 027F840C */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 027F8410 */ _t99 = cpu->r[12] + 0x00000764u;
|
|
/* 027F8410 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 027F8414 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F8418 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 027F8418 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 027F841C */ _t101 = cpu->r[11] + 0x0000076Cu;
|
|
/* 027F841C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 027F8420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 027F8424 */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 027F8424 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 027F8428 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8428 */ _t104 = _t103 & 0x00000001u;
|
|
/* 027F8428 */ if (_t104) goto L_027F842C; else goto L_027F843C;
|
|
L_027F842C: ; // 0x27f842c
|
|
/* 027F842C */ cpu->r[3] = 0x00000010u;
|
|
/* 027F8430 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8434 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8438 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8438 */ _t106 = _t105 & 0x00000001u;
|
|
/* 027F8438 */ if (_t106) goto L_027F844C; else goto L_027F843C;
|
|
L_027F843C: ; // 0x27f843c
|
|
/* 027F843C */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 027F843C */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 027F8440 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 027F8440 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 027F8444 */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8444 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 027F8448 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F8448 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_027F844C: ; // 0x27f844c
|
|
/* 027F844C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 027F8450 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 027F8454 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8454 */ _t112 = _t111 & 0x00000001u;
|
|
/* 027F8454 */ if (_t112) goto L_027F8458; else goto L_027F8468;
|
|
L_027F8458: ; // 0x27f8458
|
|
/* 027F8458 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F845C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8464 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8464 */ _t114 = _t113 & 0x00000001u;
|
|
/* 027F8464 */ if (_t114) goto L_027F8478; else goto L_027F8468;
|
|
L_027F8468: ; // 0x27f8468
|
|
/* 027F8468 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 027F8468 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 027F846C */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 027F846C */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 027F8470 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8470 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 027F8474 */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F8474 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_027F8478: ; // 0x27f8478
|
|
/* 027F8478 */ cpu->r[8] = 0x101F0000u;
|
|
/* 027F847C */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 027F8480 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 027F8480 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 027F8484 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 027F8484 */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 027F8488 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 027F8488 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 027F848C */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 027F848C */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 027F8490 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 027F8490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 027F8494 */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 027F8494 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 027F8498 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 027F8498 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 027F849C */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 027F849C */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 027F84A0 */ /* nop */
|
|
/* 027F84A4 */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 027F84A4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 027F84A8 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 027F84A8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 027F84AC */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 027F84AC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 027F84B0 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 027F84B0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 027F84B4 */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 027F84B4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 027F84B8 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 027F84B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 027F84BC */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 027F84BC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 027F84C0 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 027F84C0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 027F84C4 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F84C4 */ _t136 = _t135 & 0x00000001u;
|
|
/* 027F84C4 */ if (_t136) goto L_027F84C8; // else: addr-0 trap, fall-through
|
|
L_027F84C8: ; // 0x27f84c8
|
|
/* 027F84C8 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 027F84C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 027F84CC */ cpu->lr = cpu->r[0];
|
|
/* 027F84D0 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 027F84D4 */ return;
|
|
}
|
|
|
|
// fn_027F84D8 @ 0x27f84d8
|
|
void Gambit_fn_027F84D8(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_027F84D8: ; // 0x27f84d8
|
|
/* 027F84D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F84DC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F84DC */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F84DC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F84DC */ goto L_027F84E0;
|
|
L_027F84E0: ; // 0x27f84e0
|
|
/* 027F84E0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F84E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F84E4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F84E4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F84E4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F84E4 */ goto L_027F84E8;
|
|
L_027F84E8: ; // 0x27f84e8
|
|
/* 027F84E8 */ 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_027F84EC @ 0x27f84ec
|
|
void Gambit_fn_027F84EC(CPUState* cpu) {
|
|
L_027F84EC: ; // 0x27f84ec
|
|
/* 027F84EC */ return;
|
|
}
|
|
|
|
// fn_027F84F0 @ 0x27f84f0
|
|
void Gambit_fn_027F84F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_027F84F0: ; // 0x27f84f0
|
|
/* 027F84F0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027F84F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F84F0 */ cpu->r[1] = _t0;
|
|
/* 027F84F4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F84F8 */ /* nop */
|
|
/* 027F84FC */ cpu->r[31] = cpu->r[3];
|
|
/* 027F84FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F8500 */ cpu->r[27] = cpu->r[4];
|
|
/* 027F8504 */ cpu->r[28] = cpu->r[5];
|
|
/* 027F8508 */ cpu->r[30] = cpu->r[7];
|
|
/* 027F850C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027F850C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F8510 */ cpu->r[29] = cpu->r[6];
|
|
/* 027F8514 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8514 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8514 */ if (_t3) goto L_027F8518; else goto L_027F8528;
|
|
L_027F8518: ; // 0x27f8518
|
|
/* 027F8518 */ cpu->r[3] = 0x00000054u;
|
|
/* 027F851C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8520 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F8524 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8524 */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F8524 */ if (_t5) goto L_027F85DC; else goto L_027F8528;
|
|
L_027F8528: ; // 0x27f8528
|
|
/* 027F8528 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F852C */ Gambit_fn_027F8CE8(cpu);
|
|
/* 027F8530 */ _t6 = cpu->r[31] + 0x00000038u;
|
|
/* 027F8530 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 027F8534 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F8538 */ _t7 = cpu->r[31] + 0x0000003Cu;
|
|
/* 027F8538 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 027F853C */ cpu->r[0] = cpu->r[0] + 0x000007F4u;
|
|
/* 027F8540 */ cpu->r[3] = cpu->r[31] + 0x00000040u;
|
|
/* 027F8540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8544 */ _t8 = cpu->r[31] + 0x00000034u;
|
|
/* 027F8544 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 027F8548 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F854C */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 027F854C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F8550 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8550 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F8550 */ if (_t11) goto L_027F8554; else goto L_027F8564;
|
|
L_027F8554: ; // 0x27f8554
|
|
/* 027F8554 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F8558 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F855C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8560 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8560 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F8560 */ if (_t13) goto L_027F8574; else goto L_027F8564;
|
|
L_027F8564: ; // 0x27f8564
|
|
/* 027F8564 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 027F8564 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 027F8568 */ _t15 = cpu->r[3] + 0x00000008u;
|
|
/* 027F8568 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 027F856C */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 027F856C */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 027F8570 */ _t17 = cpu->r[3] + 0x0000000Cu;
|
|
/* 027F8570 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_027F8574: ; // 0x27f8574
|
|
/* 027F8574 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 027F8574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8578 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8578 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F8578 */ if (_t19) goto L_027F857C; else goto L_027F858C;
|
|
L_027F857C: ; // 0x27f857c
|
|
/* 027F857C */ cpu->r[3] = 0x00000001u;
|
|
/* 027F8580 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8588 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8588 */ _t21 = _t20 & 0x00000001u;
|
|
/* 027F8588 */ if (_t21) goto L_027F8590; else goto L_027F858C;
|
|
L_027F858C: ; // 0x27f858c
|
|
/* 027F858C */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 027F858C */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[30]);
|
|
L_027F8590: ; // 0x27f8590
|
|
/* 027F8590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 027F8594 */ _t23 = cpu->r[31] + 0x00000050u;
|
|
/* 027F8594 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[30]);
|
|
/* 027F8598 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8598 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F8598 */ if (_t25) goto L_027F85DC; else goto L_027F859C;
|
|
L_027F859C: ; // 0x27f859c
|
|
/* 027F859C */ _t26 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F859C */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F85A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 027F85A4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F85A4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F85A4 */ if (_t28) goto L_027F85C0; else goto L_027F85A8;
|
|
L_027F85A8: ; // 0x27f85a8
|
|
/* 027F85A8 */ cpu->r[3] = cpu->r[31] + 0x00000040u;
|
|
/* 027F85AC */ _t29 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F85AC */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
/* 027F85B0 */ Gambit_fn_02801EDC(cpu);
|
|
/* 027F85B4 */ _t30 = cpu->r[29] + 0x00000008u;
|
|
/* 027F85B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F85B8 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 027F85BC */ _t31 = cpu->r[29] + 0x00000008u;
|
|
/* 027F85BC */ rbrew_write32(cpu->mem, _t31, cpu->r[11]);
|
|
L_027F85C0: ; // 0x27f85c0
|
|
/* 027F85C0 */ cpu->r[3] = cpu->r[27] + 0x000000A0u;
|
|
/* 027F85C4 */ cpu->r[4] = cpu->r[31] + 0x00000040u;
|
|
/* 027F85C8 */ _t32 = cpu->r[31] + 0x0000004Cu;
|
|
/* 027F85C8 */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 027F85CC */ Gambit_fn_02801EBC(cpu);
|
|
/* 027F85D0 */ _t33 = cpu->r[27] + 0x000000A8u;
|
|
/* 027F85D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F85D4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 027F85D8 */ _t34 = cpu->r[27] + 0x000000A8u;
|
|
/* 027F85D8 */ rbrew_write32(cpu->mem, _t34, cpu->r[12]);
|
|
L_027F85DC: ; // 0x27f85dc
|
|
/* 027F85DC */ cpu->r[3] = cpu->r[31];
|
|
/* 027F85E0 */ /* nop */
|
|
/* 027F85E4 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 027F85E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F85E8 */ cpu->lr = cpu->r[0];
|
|
/* 027F85EC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027F85F0 */ return;
|
|
}
|
|
|
|
// fn_027F85F4 @ 0x27f85f4
|
|
void Gambit_fn_027F85F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F85F4: ; // 0x27f85f4
|
|
/* 027F85F4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F85F8 */ _t0 = cpu->r[1] + 0xFFFFFE98u;
|
|
/* 027F85F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F85F8 */ cpu->r[1] = _t0;
|
|
/* 027F85FC */ _t1 = cpu->r[1] + 0x00000160u;
|
|
/* 027F85FC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F8600 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F8604 */ _t2 = cpu->r[1] + 0x00000158u;
|
|
/* 027F8604 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027F8608 */ _t3 = cpu->r[1] + 0x0000015Cu;
|
|
/* 027F8608 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F860C */ _t4 = cpu->r[1] + 0x00000164u;
|
|
/* 027F860C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027F8610 */ _t5 = cpu->r[1] + 0x0000016Cu;
|
|
/* 027F8610 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F8614 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F8618 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 027F8618 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F861C */ _t7 = cpu->r[8] + 0x00000014u;
|
|
/* 027F861C */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F8620 */ cpu->ctr = cpu->r[9];
|
|
/* 027F8624 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8628 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F862C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8630 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 027F8630 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F8634 */ cpu->r[28] = 0x10110000u;
|
|
/* 027F8638 */ cpu->r[28] = cpu->r[28] + 0x00000784u;
|
|
/* 027F863C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F863C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027F8640 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F8644 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8644 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 027F8648 */ Gambit_fn_027E2BBC(cpu);
|
|
/* 027F864C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8650 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8650 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F8650 */ if (_t12) goto L_027F876C; else goto L_027F8654;
|
|
L_027F8654: ; // 0x27f8654
|
|
/* 027F8654 */ _t13 = cpu->r[30] + 0x00000004u;
|
|
/* 027F8654 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F8658 */ _t14 = cpu->r[12] + 0x00000014u;
|
|
/* 027F8658 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F865C */ cpu->ctr = cpu->r[10];
|
|
/* 027F8660 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8664 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F866C */ cpu->r[4] = 0x00000100u;
|
|
/* 027F8670 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 027F8670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F8674 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8674 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F8674 */ if (_t17) goto L_027F86E0; else goto L_027F8678;
|
|
L_027F8678: ; // 0x27f8678
|
|
/* 027F8678 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8678 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 027F867C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8680 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F8684 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8684 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 027F8688 */ Gambit_fn_027E273C(cpu);
|
|
/* 027F868C */ _t20 = cpu->r[3] + 0x00000008u;
|
|
/* 027F868C */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F8690 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F8694 */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 027F8694 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F8698 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027F869C */ Gambit_fn_027F95A8(cpu);
|
|
/* 027F86A0 */ _t22 = cpu->r[29] + 0x00000000u;
|
|
/* 027F86A0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F86A4 */ _t23 = cpu->r[6] + 0x00000054u;
|
|
/* 027F86A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F86A8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F86AC */ cpu->r[3] = cpu->r[29];
|
|
/* 027F86B0 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027F86B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F86B8 */ cpu->r[3] = cpu->r[1] + 0x00000148u;
|
|
/* 027F86BC */ cpu->r[4] = 0x00000002u;
|
|
/* 027F86C0 */ Gambit_fn_02833E54(cpu);
|
|
/* 027F86C4 */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 027F86C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F86C8 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F86CC */ cpu->r[10] = cpu->r[10] + 0x0000079Cu;
|
|
/* 027F86D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F86D4 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F86D4 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 027F86D8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F86D8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F86D8 */ if (_t27) goto L_027F8748; else goto L_027F86DC;
|
|
L_027F86DC: ; // 0x27f86dc
|
|
/* 027F86DC */ goto L_027F8740;
|
|
L_027F86E0: ; // 0x27f86e0
|
|
/* 027F86E0 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F86E0 */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 027F86E4 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 027F86E8 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 027F86E8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 027F86EC */ Gambit_fn_027E2BB4(cpu);
|
|
/* 027F86F0 */ _t30 = cpu->r[3] + 0x00000008u;
|
|
/* 027F86F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F86F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F86F8 */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 027F86F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F86FC */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027F8700 */ Gambit_fn_027F95A8(cpu);
|
|
/* 027F8704 */ _t32 = cpu->r[29] + 0x00000000u;
|
|
/* 027F8704 */ cpu->r[6] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F8708 */ _t33 = cpu->r[6] + 0x00000054u;
|
|
/* 027F8708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F870C */ cpu->ctr = cpu->r[0];
|
|
/* 027F8710 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F8714 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027F8718 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F871C */ cpu->r[3] = cpu->r[1] + 0x00000148u;
|
|
/* 027F8720 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F8724 */ Gambit_fn_02833E54(cpu);
|
|
/* 027F8728 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 027F8728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F872C */ cpu->r[10] = 0x10110000u;
|
|
/* 027F8730 */ cpu->r[10] = cpu->r[10] + 0x0000079Cu;
|
|
/* 027F8734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8738 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F8738 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 027F873C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F873C */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F873C */ if (_t37) goto L_027F8748; else goto L_027F8740;
|
|
L_027F8740: ; // 0x27f8740
|
|
/* 027F8740 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027F8744 */ Gambit_fn_028345E4(cpu);
|
|
L_027F8748: ; // 0x27f8748
|
|
/* 027F8748 */ _t38 = cpu->r[1] + 0x00000158u;
|
|
/* 027F8748 */ cpu->r[28] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027F874C */ _t39 = cpu->r[1] + 0x0000015Cu;
|
|
/* 027F874C */ cpu->r[29] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F8750 */ _t40 = cpu->r[1] + 0x0000016Cu;
|
|
/* 027F8750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F8754 */ _t41 = cpu->r[1] + 0x00000160u;
|
|
/* 027F8754 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F8758 */ cpu->lr = cpu->r[0];
|
|
/* 027F875C */ _t42 = cpu->r[1] + 0x00000164u;
|
|
/* 027F875C */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F8760 */ cpu->r[1] = cpu->r[1] + 0x00000168u;
|
|
/* 027F8764 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F8768 */ return;
|
|
L_027F876C: ; // 0x27f876c
|
|
/* 027F876C */ _t43 = cpu->r[1] + 0x00000158u;
|
|
/* 027F876C */ cpu->r[28] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F8770 */ _t44 = cpu->r[1] + 0x0000015Cu;
|
|
/* 027F8770 */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F8774 */ _t45 = cpu->r[1] + 0x0000016Cu;
|
|
/* 027F8774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F8778 */ _t46 = cpu->r[1] + 0x00000160u;
|
|
/* 027F8778 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F877C */ cpu->lr = cpu->r[0];
|
|
/* 027F8780 */ _t47 = cpu->r[1] + 0x00000164u;
|
|
/* 027F8780 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 027F8784 */ cpu->r[1] = cpu->r[1] + 0x00000168u;
|
|
/* 027F8788 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F878C */ return;
|
|
}
|
|
|
|
// fn_027F85F8 @ 0x27f85f8
|
|
void Gambit_fn_027F85F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F85F8: ; // 0x27f85f8
|
|
/* 027F85F8 */ _t0 = cpu->r[1] + 0xFFFFFE98u;
|
|
/* 027F85F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F85F8 */ cpu->r[1] = _t0;
|
|
/* 027F85FC */ _t1 = cpu->r[1] + 0x00000160u;
|
|
/* 027F85FC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F8600 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F8604 */ _t2 = cpu->r[1] + 0x00000158u;
|
|
/* 027F8604 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027F8608 */ _t3 = cpu->r[1] + 0x0000015Cu;
|
|
/* 027F8608 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 027F860C */ _t4 = cpu->r[1] + 0x00000164u;
|
|
/* 027F860C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 027F8610 */ _t5 = cpu->r[1] + 0x0000016Cu;
|
|
/* 027F8610 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F8614 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F8618 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 027F8618 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F861C */ _t7 = cpu->r[8] + 0x00000014u;
|
|
/* 027F861C */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F8620 */ cpu->ctr = cpu->r[9];
|
|
/* 027F8624 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8628 */ cpu->r[31] = cpu->r[5];
|
|
/* 027F862C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8630 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 027F8630 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F8634 */ cpu->r[28] = 0x10110000u;
|
|
/* 027F8638 */ cpu->r[28] = cpu->r[28] + 0x00000784u;
|
|
/* 027F863C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F863C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 027F8640 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F8644 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8644 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 027F8648 */ Gambit_fn_027E2BBC(cpu);
|
|
/* 027F864C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8650 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8650 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F8650 */ if (_t12) goto L_027F876C; else goto L_027F8654;
|
|
L_027F8654: ; // 0x27f8654
|
|
/* 027F8654 */ _t13 = cpu->r[30] + 0x00000004u;
|
|
/* 027F8654 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F8658 */ _t14 = cpu->r[12] + 0x00000014u;
|
|
/* 027F8658 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F865C */ cpu->ctr = cpu->r[10];
|
|
/* 027F8660 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8664 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F866C */ cpu->r[4] = 0x00000100u;
|
|
/* 027F8670 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 027F8670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F8674 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8674 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F8674 */ if (_t17) goto L_027F86E0; else goto L_027F8678;
|
|
L_027F8678: ; // 0x27f8678
|
|
/* 027F8678 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8678 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 027F867C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8680 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F8684 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8684 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 027F8688 */ Gambit_fn_027E273C(cpu);
|
|
/* 027F868C */ _t20 = cpu->r[3] + 0x00000008u;
|
|
/* 027F868C */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F8690 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F8694 */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 027F8694 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F8698 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027F869C */ Gambit_fn_027F95A8(cpu);
|
|
/* 027F86A0 */ _t22 = cpu->r[29] + 0x00000000u;
|
|
/* 027F86A0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F86A4 */ _t23 = cpu->r[6] + 0x00000054u;
|
|
/* 027F86A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F86A8 */ cpu->ctr = cpu->r[0];
|
|
/* 027F86AC */ cpu->r[3] = cpu->r[29];
|
|
/* 027F86B0 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027F86B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F86B8 */ cpu->r[3] = cpu->r[1] + 0x00000148u;
|
|
/* 027F86BC */ cpu->r[4] = 0x00000002u;
|
|
/* 027F86C0 */ Gambit_fn_02833E54(cpu);
|
|
/* 027F86C4 */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 027F86C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F86C8 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F86CC */ cpu->r[10] = cpu->r[10] + 0x0000079Cu;
|
|
/* 027F86D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F86D4 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F86D4 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 027F86D8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F86D8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F86D8 */ if (_t27) goto L_027F8748; else goto L_027F86DC;
|
|
L_027F86DC: ; // 0x27f86dc
|
|
/* 027F86DC */ goto L_027F8740;
|
|
L_027F86E0: ; // 0x27f86e0
|
|
/* 027F86E0 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F86E0 */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 027F86E4 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 027F86E8 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 027F86E8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 027F86EC */ Gambit_fn_027E2BB4(cpu);
|
|
/* 027F86F0 */ _t30 = cpu->r[3] + 0x00000008u;
|
|
/* 027F86F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F86F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F86F8 */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 027F86F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F86FC */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027F8700 */ Gambit_fn_027F95A8(cpu);
|
|
/* 027F8704 */ _t32 = cpu->r[29] + 0x00000000u;
|
|
/* 027F8704 */ cpu->r[6] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F8708 */ _t33 = cpu->r[6] + 0x00000054u;
|
|
/* 027F8708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F870C */ cpu->ctr = cpu->r[0];
|
|
/* 027F8710 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F8714 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 027F8718 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F871C */ cpu->r[3] = cpu->r[1] + 0x00000148u;
|
|
/* 027F8720 */ cpu->r[4] = 0x00000002u;
|
|
/* 027F8724 */ Gambit_fn_02833E54(cpu);
|
|
/* 027F8728 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 027F8728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F872C */ cpu->r[10] = 0x10110000u;
|
|
/* 027F8730 */ cpu->r[10] = cpu->r[10] + 0x0000079Cu;
|
|
/* 027F8734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8738 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F8738 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 027F873C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F873C */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F873C */ if (_t37) goto L_027F8748; else goto L_027F8740;
|
|
L_027F8740: ; // 0x27f8740
|
|
/* 027F8740 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 027F8744 */ Gambit_fn_028345E4(cpu);
|
|
L_027F8748: ; // 0x27f8748
|
|
/* 027F8748 */ _t38 = cpu->r[1] + 0x00000158u;
|
|
/* 027F8748 */ cpu->r[28] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027F874C */ _t39 = cpu->r[1] + 0x0000015Cu;
|
|
/* 027F874C */ cpu->r[29] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F8750 */ _t40 = cpu->r[1] + 0x0000016Cu;
|
|
/* 027F8750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F8754 */ _t41 = cpu->r[1] + 0x00000160u;
|
|
/* 027F8754 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F8758 */ cpu->lr = cpu->r[0];
|
|
/* 027F875C */ _t42 = cpu->r[1] + 0x00000164u;
|
|
/* 027F875C */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F8760 */ cpu->r[1] = cpu->r[1] + 0x00000168u;
|
|
/* 027F8764 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F8768 */ return;
|
|
L_027F876C: ; // 0x27f876c
|
|
/* 027F876C */ _t43 = cpu->r[1] + 0x00000158u;
|
|
/* 027F876C */ cpu->r[28] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F8770 */ _t44 = cpu->r[1] + 0x0000015Cu;
|
|
/* 027F8770 */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F8774 */ _t45 = cpu->r[1] + 0x0000016Cu;
|
|
/* 027F8774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F8778 */ _t46 = cpu->r[1] + 0x00000160u;
|
|
/* 027F8778 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F877C */ cpu->lr = cpu->r[0];
|
|
/* 027F8780 */ _t47 = cpu->r[1] + 0x00000164u;
|
|
/* 027F8780 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 027F8784 */ cpu->r[1] = cpu->r[1] + 0x00000168u;
|
|
/* 027F8788 */ cpu->r[3] = 0x00000000u;
|
|
/* 027F878C */ return;
|
|
}
|
|
|
|
// fn_027F8790 @ 0x27f8790
|
|
void Gambit_fn_027F8790(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_027F8790: ; // 0x27f8790
|
|
/* 027F8790 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 027F8790 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8790 */ cpu->r[1] = _t0;
|
|
/* 027F8794 */ /* nop */
|
|
/* 027F8798 */ cpu->r[0] = cpu->lr;
|
|
/* 027F879C */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F879C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F87A0 */ _t2 = cpu->r[3] + 0x000000A4u;
|
|
/* 027F87A0 */ cpu->r[26] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F87A4 */ cpu->r[25] = cpu->r[3] + 0x000000A0u;
|
|
/* 027F87A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[25]);
|
|
/* 027F87AC */ cpu->r[27] = cpu->r[4];
|
|
/* 027F87B0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F87B0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F87B0 */ if (_t4) goto L_027F8878; else goto L_027F87B4;
|
|
L_027F87B4: ; // 0x27f87b4
|
|
/* 027F87B4 */ cpu->r[31] = 0x10110000u;
|
|
/* 027F87B8 */ cpu->r[29] = 0x00080000u;
|
|
/* 027F87BC */ cpu->r[24] = 0x10110000u;
|
|
/* 027F87C0 */ _t5 = cpu->r[31] + 0x00007399u;
|
|
/* 027F87C0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t5);
|
|
/* 027F87C4 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 027F87C8 */ cpu->r[24] = cpu->r[24] + 0x00000784u;
|
|
L_027F87CC: ; // 0x27f87cc
|
|
/* 027F87CC */ _t6 = cpu->r[26] + 0x00000008u;
|
|
/* 027F87CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F87D0 */ _t7 = cpu->r[30] + 0x00000034u;
|
|
/* 027F87D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F87D4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027F87D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[24]);
|
|
/* 027F87D8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F87D8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 027F87DC */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 027F87DC */ rbrew_write32(cpu->mem, _t10, cpu->r[27]);
|
|
/* 027F87E0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F87E4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F87E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[24]);
|
|
/* 027F87E8 */ Gambit_fn_027F8A3C(cpu);
|
|
/* 027F87EC */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F87EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F87F0 */ _t13 = cpu->r[4] + 0x00000014u;
|
|
/* 027F87F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F87F4 */ cpu->ctr = cpu->r[5];
|
|
/* 027F87F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F87FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8800 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8800 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F8804 */ _t15 = cpu->r[6] + 0x00000014u;
|
|
/* 027F8804 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F8808 */ cpu->ctr = cpu->r[8];
|
|
/* 027F880C */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 027F880C */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F8810 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8814 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8818 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8818 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F881C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[9]);
|
|
/* 027F8820 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8820 */ _t19 = _t18 & 0x00000001u;
|
|
/* 027F8820 */ if (_t19) goto L_027F8824; else goto L_027F883C;
|
|
L_027F8824: ; // 0x27f8824
|
|
/* 027F8824 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8828 */ /* nop */
|
|
/* 027F882C */ _t20 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F882C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F8830 */ cpu->lr = cpu->r[0];
|
|
/* 027F8834 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F8838 */ return;
|
|
L_027F883C: ; // 0x27f883c
|
|
/* 027F883C */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 027F883C */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F8840 */ cpu->ctr = cpu->r[29];
|
|
/* 027F8844 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8844 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F8848 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_027F884C: ; // 0x27f884c
|
|
/* 027F884C */ _t23 = cpu->r[7] + 0x00000000u;
|
|
/* 027F884C */ cpu->r[11] = rbrew_read8(cpu->mem, _t23);
|
|
/* 027F8850 */ _t24 = cpu->r[12] + 0x00000001u;
|
|
/* 027F8850 */ cpu->r[0] = rbrew_read8(cpu->mem, _t24);
|
|
/* 027F8850 */ cpu->r[12] = _t24;
|
|
/* 027F8854 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 027F8858 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8858 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F8858 */ if (_t26) goto L_027F885C; else goto L_027F886C;
|
|
L_027F885C: ; // 0x27f885c
|
|
/* 027F885C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 027F8860 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8860 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F8860 */ if (_t28) goto L_027F8824; else goto L_027F8864;
|
|
L_027F8864: ; // 0x27f8864
|
|
/* 027F8864 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 027F8868 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F8868 */ _t29 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F8868 */ _t30 = _t29 >> (0x00000002u & 31u);
|
|
/* 027F8868 */ _t31 = _t30 & 0x00000001u;
|
|
/* 027F8868 */ if (_t31) goto L_027F884C; else goto L_027F886C;
|
|
L_027F886C: ; // 0x27f886c
|
|
/* 027F886C */ _t32 = cpu->r[26] + 0x00000004u;
|
|
/* 027F886C */ cpu->r[26] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F8870 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[25]);
|
|
/* 027F8874 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8874 */ _t34 = _t33 & 0x00000001u;
|
|
/* 027F8874 */ if (_t34) goto L_027F8878; else goto L_027F87CC;
|
|
L_027F8878: ; // 0x27f8878
|
|
/* 027F8878 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F887C */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8880 */ /* nop */
|
|
/* 027F8884 */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F8884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F8888 */ cpu->lr = cpu->r[0];
|
|
/* 027F888C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F8890 */ return;
|
|
}
|
|
|
|
// fn_027F8894 @ 0x27f8894
|
|
void Gambit_fn_027F8894(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F8894: ; // 0x27f8894
|
|
/* 027F8894 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 027F8894 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8894 */ cpu->r[1] = _t0;
|
|
/* 027F8898 */ /* nop */
|
|
/* 027F889C */ cpu->r[0] = cpu->lr;
|
|
/* 027F88A0 */ _t1 = cpu->r[1] + 0x000000BCu;
|
|
/* 027F88A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F88A4 */ cpu->r[29] = cpu->r[4];
|
|
/* 027F88A8 */ cpu->r[28] = cpu->r[3];
|
|
/* 027F88AC */ _t2 = cpu->r[28] + 0x000000A4u;
|
|
/* 027F88AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 027F88B0 */ cpu->r[0] = cpu->r[28] + 0x000000A0u;
|
|
/* 027F88B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 027F88B8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F88B8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 027F88B8 */ if (_t4) goto L_027F88D8; else goto L_027F88BC;
|
|
L_027F88BC: ; // 0x27f88bc
|
|
/* 027F88BC */ _t5 = cpu->r[10] + 0x00000008u;
|
|
/* 027F88BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F88C0 */ _t6 = cpu->r[5] + 0x00000050u;
|
|
/* 027F88C0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t6);
|
|
/* 027F88C4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x0000001Eu, 0x0000001Cu);
|
|
/* 027F88C8 */ _t7 = cpu->r[5] + 0x00000050u;
|
|
/* 027F88C8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[11]);
|
|
/* 027F88CC */ _t8 = cpu->r[10] + 0x00000004u;
|
|
/* 027F88CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F88D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 027F88D4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F88D4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F88D4 */ if (_t10) goto L_027F88D8; else goto L_027F88BC;
|
|
L_027F88D8: ; // 0x27f88d8
|
|
/* 027F88D8 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F88DC */ Gambit_fn_027F9168(cpu);
|
|
/* 027F88E0 */ cpu->r[31] = 0x10110000u;
|
|
/* 027F88E4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F88E8 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F88EC */ _t11 = cpu->r[31] + 0x00007399u;
|
|
/* 027F88EC */ cpu->r[31] = rbrew_read8(cpu->mem, _t11);
|
|
/* 027F88F0 */ cpu->r[25] = 0x00000080u;
|
|
/* 027F88F4 */ cpu->r[30] = cpu->r[1] + 0x00000018u;
|
|
/* 027F88F8 */ Gambit_fn_027F9180(cpu);
|
|
/* 027F88FC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 027F88FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F8900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 027F8904 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8904 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F8904 */ if (_t14) goto L_027F89E0; else goto L_027F8908;
|
|
L_027F8908: ; // 0x27f8908
|
|
/* 027F8908 */ cpu->r[26] = 0x10110000u;
|
|
/* 027F890C */ cpu->r[26] = cpu->r[26] + 0x000007DCu;
|
|
L_027F8910: ; // 0x27f8910
|
|
/* 027F8910 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 027F8910 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[31]);
|
|
/* 027F8914 */ cpu->r[5] = 0x00000080u;
|
|
/* 027F8918 */ _t16 = cpu->r[30] + 0x0000007Fu;
|
|
/* 027F8918 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[31]);
|
|
/* 027F891C */ cpu->r[3] = cpu->r[29];
|
|
/* 027F8920 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8920 */ rbrew_write32(cpu->mem, _t17, cpu->r[25]);
|
|
/* 027F8924 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8928 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8928 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 027F892C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 027F892C */ rbrew_write32(cpu->mem, _t19, cpu->r[26]);
|
|
/* 027F8930 */ Gambit_fn_028344F4(cpu);
|
|
/* 027F8934 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8934 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F8938 */ _t21 = cpu->r[8] + 0x00000014u;
|
|
/* 027F8938 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F893C */ cpu->ctr = cpu->r[9];
|
|
/* 027F8940 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8944 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8948 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8948 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F894C */ cpu->r[3] = cpu->r[28];
|
|
/* 027F8950 */ Gambit_fn_027F8790(cpu);
|
|
/* 027F8954 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F8954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 027F8958 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8958 */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F8958 */ if (_t24) goto L_027F89C0; else goto L_027F895C;
|
|
L_027F895C: ; // 0x27f895c
|
|
/* 027F895C */ _t25 = cpu->r[27] + 0x00000000u;
|
|
/* 027F895C */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F8960 */ _t26 = cpu->r[12] + 0x0000004Cu;
|
|
/* 027F8960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F8964 */ cpu->ctr = cpu->r[0];
|
|
/* 027F8968 */ cpu->r[3] = cpu->r[27];
|
|
/* 027F896C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8974 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8974 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F8974 */ if (_t28) goto L_027F89C0; else goto L_027F8978;
|
|
L_027F8978: ; // 0x27f8978
|
|
/* 027F8978 */ _t29 = cpu->r[27] + 0x00000000u;
|
|
/* 027F8978 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F897C */ _t30 = cpu->r[7] + 0x00000054u;
|
|
/* 027F897C */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F8980 */ cpu->ctr = cpu->r[0];
|
|
/* 027F8984 */ cpu->r[3] = cpu->r[27];
|
|
/* 027F8988 */ cpu->r[4] = cpu->r[29];
|
|
/* 027F898C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8990 */ _t31 = cpu->r[27] + 0x00000050u;
|
|
/* 027F8990 */ cpu->r[9] = rbrew_read8(cpu->mem, _t31);
|
|
/* 027F8994 */ cpu->r[9] = cpu->r[9] | 0x00000004u;
|
|
/* 027F8998 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F899C */ _t32 = cpu->r[27] + 0x00000050u;
|
|
/* 027F899C */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[9]);
|
|
/* 027F89A0 */ Gambit_fn_027F9174(cpu);
|
|
/* 027F89A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F89A8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F89AC */ Gambit_fn_027F9180(cpu);
|
|
/* 027F89B0 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 027F89B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F89B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F89B8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F89B8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 027F89B8 */ if (_t35) goto L_027F89BC; else goto L_027F8910;
|
|
L_027F89BC: ; // 0x27f89bc
|
|
/* 027F89BC */ goto L_027F89E0;
|
|
L_027F89C0: ; // 0x27f89c0
|
|
/* 027F89C0 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F89C4 */ Gambit_fn_027F93BC(cpu);
|
|
/* 027F89C8 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F89CC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027F89D0 */ Gambit_fn_027F9180(cpu);
|
|
/* 027F89D4 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 027F89D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F89D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 027F89DC */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F89DC */ _t38 = _t37 & 0x00000001u;
|
|
/* 027F89DC */ if (_t38) goto L_027F89E0; else goto L_027F8910;
|
|
L_027F89E0: ; // 0x27f89e0
|
|
/* 027F89E0 */ /* nop */
|
|
/* 027F89E4 */ _t39 = cpu->r[1] + 0x000000BCu;
|
|
/* 027F89E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F89E8 */ cpu->lr = cpu->r[0];
|
|
/* 027F89EC */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 027F89F0 */ return;
|
|
}
|
|
|
|
// fn_027F89F4 @ 0x27f89f4
|
|
void Gambit_fn_027F89F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F89F4: ; // 0x27f89f4
|
|
/* 027F89F4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F89F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F89F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F89F8 */ cpu->r[1] = _t0;
|
|
/* 027F89FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F89FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8A00 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8A04 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8A08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8A08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8A0C */ Gambit_fn_02834430(cpu);
|
|
/* 027F8A10 */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8A10 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 027F8A14 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8A18 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8A18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8A1C */ cpu->lr = cpu->r[0];
|
|
/* 027F8A20 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8A24 */ return;
|
|
}
|
|
|
|
// fn_027F89F8 @ 0x27f89f8
|
|
void Gambit_fn_027F89F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F89F8: ; // 0x27f89f8
|
|
/* 027F89F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F89F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F89F8 */ cpu->r[1] = _t0;
|
|
/* 027F89FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F89FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8A00 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8A04 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8A08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8A08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8A0C */ Gambit_fn_02834430(cpu);
|
|
/* 027F8A10 */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8A10 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 027F8A14 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8A18 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8A18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8A1C */ cpu->lr = cpu->r[0];
|
|
/* 027F8A20 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8A24 */ return;
|
|
}
|
|
|
|
// fn_027F8A28 @ 0x27f8a28
|
|
void Gambit_fn_027F8A28(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_027F8A28: ; // 0x27f8a28
|
|
/* 027F8A28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8A2C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8A2C */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F8A2C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8A2C */ goto L_027F8A30;
|
|
L_027F8A30: ; // 0x27f8a30
|
|
/* 027F8A30 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F8A30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8A34 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8A34 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8A34 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8A34 */ goto L_027F8A38;
|
|
L_027F8A38: ; // 0x27f8a38
|
|
/* 027F8A38 */ 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_027F8A3C @ 0x27f8a3c
|
|
void Gambit_fn_027F8A3C(CPUState* cpu) {
|
|
L_027F8A3C: ; // 0x27f8a3c
|
|
/* 027F8A3C */ return;
|
|
}
|
|
|
|
// fn_027F8A40 @ 0x27f8a40
|
|
void Gambit_fn_027F8A40(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_027F8A40: ; // 0x27f8a40
|
|
/* 027F8A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8A44 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8A44 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F8A44 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8A44 */ goto L_027F8A48;
|
|
L_027F8A48: ; // 0x27f8a48
|
|
/* 027F8A48 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F8A48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8A4C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8A4C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8A4C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8A4C */ goto L_027F8A50;
|
|
L_027F8A50: ; // 0x27f8a50
|
|
/* 027F8A50 */ 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_027F8A54 @ 0x27f8a54
|
|
void Gambit_fn_027F8A54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F8A54: ; // 0x27f8a54
|
|
/* 027F8A54 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8A54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F8A58 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 027F8A58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F8A5C */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 027F8A60 */ cpu->r[11] = 0x10110000u;
|
|
/* 027F8A64 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 027F8A64 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027F8A68 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F8A68 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027F8A6C */ return;
|
|
}
|
|
|
|
// fn_027F8A70 @ 0x27f8a70
|
|
void Gambit_fn_027F8A70(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_027F8A70: ; // 0x27f8a70
|
|
/* 027F8A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8A74 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8A74 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F8A74 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8A74 */ goto L_027F8A78;
|
|
L_027F8A78: ; // 0x27f8a78
|
|
/* 027F8A78 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F8A78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8A7C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8A7C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8A7C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8A7C */ goto L_027F8A80;
|
|
L_027F8A80: ; // 0x27f8a80
|
|
/* 027F8A80 */ 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_027F8A84 @ 0x27f8a84
|
|
void Gambit_fn_027F8A84(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_027F8A84: ; // 0x27f8a84
|
|
/* 027F8A84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8A88 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8A88 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F8A88 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8A88 */ goto L_027F8A8C;
|
|
L_027F8A8C: ; // 0x27f8a8c
|
|
/* 027F8A8C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F8A8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8A90 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8A90 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8A90 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8A90 */ goto L_027F8A94;
|
|
L_027F8A94: ; // 0x27f8a94
|
|
/* 027F8A94 */ 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_027F8A98 @ 0x27f8a98
|
|
void Gambit_fn_027F8A98(CPUState* cpu) {
|
|
L_027F8A98: ; // 0x27f8a98
|
|
/* 027F8A98 */ return;
|
|
}
|
|
|
|
// fn_027F8A9C @ 0x27f8a9c
|
|
void Gambit_fn_027F8A9C(CPUState* cpu) {
|
|
L_027F8A9C: ; // 0x27f8a9c
|
|
/* 027F8A9C */ return;
|
|
}
|
|
|
|
// fn_027F8AA0 @ 0x27f8aa0
|
|
void Gambit_fn_027F8AA0(CPUState* cpu) {
|
|
L_027F8AA0: ; // 0x27f8aa0
|
|
/* 027F8AA0 */ cpu->r[3] = 0x00000001u;
|
|
/* 027F8AA4 */ return;
|
|
}
|
|
|
|
// fn_027F8AA8 @ 0x27f8aa8
|
|
void Gambit_fn_027F8AA8(CPUState* cpu) {
|
|
L_027F8AA8: ; // 0x27f8aa8
|
|
/* 027F8AA8 */ return;
|
|
}
|
|
|
|
// fn_027F8AAC @ 0x27f8aac
|
|
void Gambit_fn_027F8AAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_027F8AAC: ; // 0x27f8aac
|
|
/* 027F8AAC */ cpu->r[11] = 0x101D0000u;
|
|
/* 027F8AB0 */ _t0 = cpu->r[11] + 0xFFFFDA34u;
|
|
/* 027F8AB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F8AB0 */ cpu->r[11] = _t0;
|
|
/* 027F8AB4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F8AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8ABC */ cpu->r[12] = cpu->r[12] + 0xFFFFDDE4u;
|
|
/* 027F8AC0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8AC0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 027F8AC0 */ if (_t2) goto L_027F8AC4; else goto L_027F8AD8;
|
|
L_027F8AC4: ; // 0x27f8ac4
|
|
/* 027F8AC4 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F8AC8 */ cpu->r[8] = 0x00000001u;
|
|
/* 027F8ACC */ cpu->r[9] = cpu->r[9] + 0x00000774u;
|
|
/* 027F8AD0 */ _t3 = cpu->r[11] + 0x00000000u;
|
|
/* 027F8AD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 027F8AD4 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 027F8AD4 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_027F8AD8: ; // 0x27f8ad8
|
|
/* 027F8AD8 */ cpu->r[10] = cpu->r[4] ^ cpu->r[12];
|
|
/* 027F8ADC */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 027F8AE0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 027F8AE4 */ return;
|
|
}
|
|
|
|
// fn_027F8AE8 @ 0x27f8ae8
|
|
void Gambit_fn_027F8AE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F8AE8: ; // 0x27f8ae8
|
|
/* 027F8AE8 */ cpu->r[0] = cpu->lr;
|
|
/* 027F8AEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8AEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8AEC */ cpu->r[1] = _t0;
|
|
/* 027F8AF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8AF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8AF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8AF8 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8AFC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8AFC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8B00 */ Gambit_fn_02834430(cpu);
|
|
/* 027F8B04 */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8B04 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 027F8B08 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8B0C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8B10 */ cpu->lr = cpu->r[0];
|
|
/* 027F8B14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8B18 */ return;
|
|
}
|
|
|
|
// fn_027F8AEC @ 0x27f8aec
|
|
void Gambit_fn_027F8AEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F8AEC: ; // 0x27f8aec
|
|
/* 027F8AEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8AEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8AEC */ cpu->r[1] = _t0;
|
|
/* 027F8AF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8AF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8AF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8AF8 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8AFC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8AFC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8B00 */ Gambit_fn_02834430(cpu);
|
|
/* 027F8B04 */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8B04 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 027F8B08 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8B0C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8B10 */ cpu->lr = cpu->r[0];
|
|
/* 027F8B14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8B18 */ return;
|
|
}
|
|
|
|
// fn_027F8B1C @ 0x27f8b1c
|
|
void Gambit_fn_027F8B1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F8B1C: ; // 0x27f8b1c
|
|
/* 027F8B1C */ cpu->r[0] = cpu->lr;
|
|
/* 027F8B20 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8B20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8B20 */ cpu->r[1] = _t0;
|
|
/* 027F8B24 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B24 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8B28 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8B2C */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8B30 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8B34 */ Gambit_fn_02834410(cpu);
|
|
/* 027F8B38 */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8B38 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 027F8B3C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8B40 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8B44 */ cpu->lr = cpu->r[0];
|
|
/* 027F8B48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8B4C */ return;
|
|
}
|
|
|
|
// fn_027F8B20 @ 0x27f8b20
|
|
void Gambit_fn_027F8B20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F8B20: ; // 0x27f8b20
|
|
/* 027F8B20 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8B20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8B20 */ cpu->r[1] = _t0;
|
|
/* 027F8B24 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B24 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8B28 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8B2C */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8B30 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8B34 */ Gambit_fn_02834410(cpu);
|
|
/* 027F8B38 */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8B38 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 027F8B3C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8B40 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8B44 */ cpu->lr = cpu->r[0];
|
|
/* 027F8B48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8B4C */ return;
|
|
}
|
|
|
|
// fn_027F8B50 @ 0x27f8b50
|
|
void Gambit_fn_027F8B50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F8B50: ; // 0x27f8b50
|
|
/* 027F8B50 */ cpu->r[0] = cpu->lr;
|
|
/* 027F8B54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8B54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8B54 */ cpu->r[1] = _t0;
|
|
/* 027F8B58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8B5C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8B60 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8B64 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B64 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8B68 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8B6C */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8B6C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[1]);
|
|
/* 027F8B70 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8B74 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8B78 */ cpu->lr = cpu->r[0];
|
|
/* 027F8B7C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8B80 */ return;
|
|
}
|
|
|
|
// fn_027F8B54 @ 0x27f8b54
|
|
void Gambit_fn_027F8B54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F8B54: ; // 0x27f8b54
|
|
/* 027F8B54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8B54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8B54 */ cpu->r[1] = _t0;
|
|
/* 027F8B58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8B5C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8B60 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8B64 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B64 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8B68 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8B6C */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8B6C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[1]);
|
|
/* 027F8B70 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8B74 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8B78 */ cpu->lr = cpu->r[0];
|
|
/* 027F8B7C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8B80 */ return;
|
|
}
|
|
|
|
// fn_027F8B88 @ 0x27f8b88
|
|
void Gambit_fn_027F8B88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F8B88: ; // 0x27f8b88
|
|
/* 027F8B88 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8B88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8B88 */ cpu->r[1] = _t0;
|
|
/* 027F8B8C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B8C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8B90 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8B94 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8B98 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B98 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8B9C */ Gambit_fn_028343D0(cpu);
|
|
/* 027F8BA0 */ cpu->r[0] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 027F8BA4 */ cpu->r[12] = cpu->r[3] - cpu->r[0];
|
|
/* 027F8BA8 */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8BA8 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[12]);
|
|
/* 027F8BAC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8BAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8BB0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8BB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8BB4 */ cpu->lr = cpu->r[0];
|
|
/* 027F8BB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8BBC */ return;
|
|
}
|
|
|
|
// fn_027F8BD8 @ 0x27f8bd8
|
|
void Gambit_fn_027F8BD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_027F8BD8: ; // 0x27f8bd8
|
|
/* 027F8BD8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8BD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8BD8 */ cpu->r[1] = _t0;
|
|
/* 027F8BDC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8BDC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F8BE0 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F8BE4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8BE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F8BE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8BEC */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8BF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8BF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F8BF4 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8BF8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8BFC */ _t4 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8BFC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
/* 027F8C00 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8C04 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8C08 */ _t5 = cpu->r[31] + 0x00000058u;
|
|
/* 027F8C08 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 027F8C0C */ Gambit_fn_02834450(cpu);
|
|
/* 027F8C10 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8C14 */ _t6 = cpu->r[31] + 0x0000005Cu;
|
|
/* 027F8C14 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[1]);
|
|
/* 027F8C18 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8C1C */ _t7 = cpu->r[31] + 0x00000060u;
|
|
/* 027F8C1C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[1]);
|
|
/* 027F8C20 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8C20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F8C24 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8C24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F8C28 */ cpu->lr = cpu->r[0];
|
|
/* 027F8C2C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8C2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F8C30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8C34 */ return;
|
|
}
|
|
|
|
// fn_027F8C38 @ 0x27f8c38
|
|
void Gambit_fn_027F8C38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027F8C38: ; // 0x27f8c38
|
|
/* 027F8C38 */ cpu->r[0] = cpu->lr;
|
|
/* 027F8C3C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8C3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8C3C */ cpu->r[1] = _t0;
|
|
/* 027F8C40 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8C40 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F8C44 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F8C48 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8C48 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F8C4C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8C50 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8C54 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8C54 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F8C58 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8C5C */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8C60 */ _t4 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8C60 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
/* 027F8C64 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8C68 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8C6C */ _t5 = cpu->r[31] + 0x00000058u;
|
|
/* 027F8C6C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 027F8C70 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8C74 */ _t6 = cpu->r[31] + 0x0000005Cu;
|
|
/* 027F8C74 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[1]);
|
|
/* 027F8C78 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F8C7C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8C7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F8C80 */ cpu->lr = cpu->r[0];
|
|
/* 027F8C84 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8C84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F8C88 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8C8C */ return;
|
|
}
|
|
|
|
// fn_027F8C3C @ 0x27f8c3c
|
|
void Gambit_fn_027F8C3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027F8C3C: ; // 0x27f8c3c
|
|
/* 027F8C3C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8C3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8C3C */ cpu->r[1] = _t0;
|
|
/* 027F8C40 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8C40 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F8C44 */ cpu->r[30] = cpu->r[4];
|
|
/* 027F8C48 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8C48 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F8C4C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8C50 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8C54 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8C54 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F8C58 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8C5C */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8C60 */ _t4 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8C60 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
/* 027F8C64 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8C68 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8C6C */ _t5 = cpu->r[31] + 0x00000058u;
|
|
/* 027F8C6C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 027F8C70 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8C74 */ _t6 = cpu->r[31] + 0x0000005Cu;
|
|
/* 027F8C74 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[1]);
|
|
/* 027F8C78 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F8C7C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8C7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F8C80 */ cpu->lr = cpu->r[0];
|
|
/* 027F8C84 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8C84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F8C88 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8C8C */ return;
|
|
}
|
|
|
|
// fn_027F8C90 @ 0x27f8c90
|
|
void Gambit_fn_027F8C90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027F8C90: ; // 0x27f8c90
|
|
/* 027F8C90 */ cpu->r[0] = cpu->lr;
|
|
/* 027F8C94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8C94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8C94 */ cpu->r[1] = _t0;
|
|
/* 027F8C98 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8C98 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F8C9C */ cpu->r[30] = cpu->r[4];
|
|
/* 027F8CA0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8CA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F8CA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8CA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8CAC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8CAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F8CB0 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8CB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8CB8 */ _t4 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8CB8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
/* 027F8CBC */ Gambit_fn_02834450(cpu);
|
|
/* 027F8CC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8CC4 */ _t5 = cpu->r[31] + 0x00000058u;
|
|
/* 027F8CC4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 027F8CC8 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8CCC */ _t6 = cpu->r[31] + 0x0000005Cu;
|
|
/* 027F8CCC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[1]);
|
|
/* 027F8CD0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F8CD4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8CD4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F8CD8 */ cpu->lr = cpu->r[0];
|
|
/* 027F8CDC */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8CDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F8CE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8CE4 */ return;
|
|
}
|
|
|
|
// fn_027F8C94 @ 0x27f8c94
|
|
void Gambit_fn_027F8C94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_027F8C94: ; // 0x27f8c94
|
|
/* 027F8C94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8C94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8C94 */ cpu->r[1] = _t0;
|
|
/* 027F8C98 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8C98 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F8C9C */ cpu->r[30] = cpu->r[4];
|
|
/* 027F8CA0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8CA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F8CA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8CA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8CAC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8CAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 027F8CB0 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8CB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8CB8 */ _t4 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8CB8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
/* 027F8CBC */ Gambit_fn_02834450(cpu);
|
|
/* 027F8CC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F8CC4 */ _t5 = cpu->r[31] + 0x00000058u;
|
|
/* 027F8CC4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 027F8CC8 */ Gambit_fn_02834450(cpu);
|
|
/* 027F8CCC */ _t6 = cpu->r[31] + 0x0000005Cu;
|
|
/* 027F8CCC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[1]);
|
|
/* 027F8CD0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F8CD4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8CD4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F8CD8 */ cpu->lr = cpu->r[0];
|
|
/* 027F8CDC */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8CDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F8CE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8CE4 */ return;
|
|
}
|
|
|
|
// fn_027F8CE8 @ 0x27f8ce8
|
|
void Gambit_fn_027F8CE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57;
|
|
|
|
L_027F8CE8: ; // 0x27f8ce8
|
|
/* 027F8CE8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027F8CE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8CE8 */ cpu->r[1] = _t0;
|
|
/* 027F8CEC */ cpu->r[0] = cpu->lr;
|
|
/* 027F8CF0 */ /* nop */
|
|
/* 027F8CF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8CF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F8CF8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F8CF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F8CFC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8CFC */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8CFC */ if (_t3) goto L_027F8D00; else goto L_027F8D10;
|
|
L_027F8D00: ; // 0x27f8d00
|
|
/* 027F8D00 */ cpu->r[3] = 0x00000034u;
|
|
/* 027F8D04 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8D08 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F8D0C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8D0C */ _t5 = _t4 & 0x00000001u;
|
|
/* 027F8D0C */ if (_t5) goto L_027F8E98; else goto L_027F8D10;
|
|
L_027F8D10: ; // 0x27f8d10
|
|
/* 027F8D10 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F8D14 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F8D18 */ cpu->r[9] = cpu->r[9] + 0x00000BE8u;
|
|
/* 027F8D1C */ cpu->r[0] = cpu->r[0] + 0x00000B74u;
|
|
/* 027F8D20 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 027F8D20 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 027F8D24 */ cpu->r[10] = 0x10110000u;
|
|
/* 027F8D28 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8D28 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 027F8D2C */ cpu->r[10] = cpu->r[10] + 0x00000BE4u;
|
|
/* 027F8D30 */ cpu->r[27] = cpu->r[31] + 0x00000004u;
|
|
/* 027F8D30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 027F8D34 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8D34 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 027F8D38 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8D38 */ _t10 = _t9 & 0x00000001u;
|
|
/* 027F8D38 */ if (_t10) goto L_027F8D3C; else goto L_027F8D4C;
|
|
L_027F8D3C: ; // 0x27f8d3c
|
|
/* 027F8D3C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 027F8D40 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8D44 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F8D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 027F8D48 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8D48 */ _t12 = _t11 & 0x00000001u;
|
|
/* 027F8D48 */ if (_t12) goto L_027F8E90; else goto L_027F8D4C;
|
|
L_027F8D4C: ; // 0x27f8d4c
|
|
/* 027F8D4C */ cpu->r[26] = cpu->r[27];
|
|
/* 027F8D4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 027F8D50 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8D50 */ _t14 = _t13 & 0x00000001u;
|
|
/* 027F8D50 */ if (_t14) goto L_027F8D54; else goto L_027F8D64;
|
|
L_027F8D54: ; // 0x27f8d54
|
|
/* 027F8D54 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 027F8D58 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8D5C */ cpu->r[26] = cpu->r[3];
|
|
/* 027F8D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 027F8D60 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8D60 */ _t16 = _t15 & 0x00000001u;
|
|
/* 027F8D60 */ if (_t16) goto L_027F8E84; else goto L_027F8D64;
|
|
L_027F8D64: ; // 0x27f8d64
|
|
/* 027F8D64 */ cpu->r[3] = cpu->r[26];
|
|
/* 027F8D64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8D68 */ cpu->r[30] = 0x10110000u;
|
|
/* 027F8D6C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8D6C */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F8D6C */ if (_t18) goto L_027F8D70; else goto L_027F8DC4;
|
|
L_027F8D70: ; // 0x27f8d70
|
|
/* 027F8D70 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F8D74 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8D7C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8D7C */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F8D7C */ if (_t20) goto L_027F8D80; else goto L_027F8DC4;
|
|
L_027F8D80: ; // 0x27f8d80
|
|
/* 027F8D80 */ cpu->r[5] = 0x10110000u;
|
|
/* 027F8D84 */ _t21 = cpu->r[30] + 0x00007399u;
|
|
/* 027F8D84 */ cpu->r[29] = rbrew_read8(cpu->mem, _t21);
|
|
/* 027F8D88 */ cpu->r[5] = cpu->r[5] + 0x00000BB4u;
|
|
/* 027F8D8C */ _t22 = cpu->r[26] + 0x00000004u;
|
|
/* 027F8D8C */ rbrew_write32(cpu->mem, _t22, cpu->r[5]);
|
|
/* 027F8D90 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8D90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 027F8D94 */ _t24 = cpu->r[6] + 0x00000014u;
|
|
/* 027F8D94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 027F8D98 */ cpu->ctr = cpu->r[0];
|
|
/* 027F8D9C */ _t25 = cpu->r[26] + 0x00000000u;
|
|
/* 027F8D9C */ cpu->r[28] = rbrew_read32(cpu->mem, _t25);
|
|
/* 027F8DA0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F8DA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8DA8 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8DA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 027F8DAC */ _t27 = cpu->r[5] + 0x00000000u;
|
|
/* 027F8DAC */ cpu->r[8] = rbrew_read8(cpu->mem, _t27);
|
|
/* 027F8DB0 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F8DB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 027F8DB8 */ cpu->r[6] = 0x00080000u;
|
|
/* 027F8DBC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8DBC */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F8DBC */ if (_t29) goto L_027F8DC0; else goto L_027F8E24;
|
|
L_027F8DC0: ; // 0x27f8dc0
|
|
/* 027F8DC0 */ goto L_027F8E48;
|
|
L_027F8DC4: ; // 0x27f8dc4
|
|
/* 027F8DC4 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F8DC8 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 027F8DCC */ cpu->r[12] = cpu->r[12] + 0x00000B9Cu;
|
|
/* 027F8DD0 */ _t30 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8DD0 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 027F8DD4 */ cpu->r[0] = 0x00000020u;
|
|
/* 027F8DD8 */ _t31 = cpu->r[3] + 0x00000004u;
|
|
/* 027F8DD8 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 027F8DDC */ cpu->r[5] = 0x10110000u;
|
|
/* 027F8DE0 */ _t32 = cpu->r[3] + 0x00000008u;
|
|
/* 027F8DE0 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 027F8DE4 */ _t33 = cpu->r[30] + 0x00007399u;
|
|
/* 027F8DE4 */ cpu->r[29] = rbrew_read8(cpu->mem, _t33);
|
|
/* 027F8DE8 */ cpu->r[5] = cpu->r[5] + 0x00000BB4u;
|
|
/* 027F8DEC */ _t34 = cpu->r[26] + 0x0000002Bu;
|
|
/* 027F8DEC */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[29]);
|
|
/* 027F8DF0 */ _t35 = cpu->r[26] + 0x00000004u;
|
|
/* 027F8DF0 */ rbrew_write32(cpu->mem, _t35, cpu->r[5]);
|
|
/* 027F8DF4 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8DF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F8DF8 */ _t37 = cpu->r[6] + 0x00000014u;
|
|
/* 027F8DF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F8DFC */ cpu->ctr = cpu->r[0];
|
|
/* 027F8E00 */ _t38 = cpu->r[26] + 0x00000000u;
|
|
/* 027F8E00 */ cpu->r[28] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027F8E04 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F8E08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8E0C */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8E0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F8E10 */ _t40 = cpu->r[5] + 0x00000000u;
|
|
/* 027F8E10 */ cpu->r[8] = rbrew_read8(cpu->mem, _t40);
|
|
/* 027F8E14 */ cpu->r[30] = 0x00000000u;
|
|
/* 027F8E18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 027F8E1C */ cpu->r[6] = 0x00080000u;
|
|
/* 027F8E20 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8E20 */ _t42 = _t41 & 0x00000001u;
|
|
/* 027F8E20 */ if (_t42) goto L_027F8DC0; else goto L_027F8E24;
|
|
L_027F8E24: ; // 0x27f8e24
|
|
/* 027F8E24 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 027F8E28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 027F8E2C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 027F8E30 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F8E30 */ _t44 = _t43 & 0x00000001u;
|
|
/* 027F8E30 */ if (_t44) goto L_027F8E44; else goto L_027F8E34;
|
|
L_027F8E34: ; // 0x27f8e34
|
|
/* 027F8E34 */ _t45 = cpu->r[5] + 0x00000000u;
|
|
/* 027F8E34 */ cpu->r[9] = rbrew_read8(cpu->mem, _t45);
|
|
/* 027F8E38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]);
|
|
/* 027F8E3C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8E3C */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F8E3C */ if (_t47) goto L_027F8E40; else goto L_027F8E24;
|
|
L_027F8E40: ; // 0x27f8e40
|
|
/* 027F8E40 */ goto L_027F8E48;
|
|
L_027F8E44: ; // 0x27f8e44
|
|
/* 027F8E44 */ cpu->r[30] = 0x00000000u;
|
|
L_027F8E48: ; // 0x27f8e48
|
|
/* 027F8E48 */ _t48 = cpu->r[26] + 0x00000008u;
|
|
/* 027F8E48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t48);
|
|
/* 027F8E4C */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8E4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 027F8E50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 027F8E54 */ _t50 = cpu->r[10] + 0x00000014u;
|
|
/* 027F8E54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027F8E58 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 027F8E58 */ _t52 = _t51 & 0x00000001u;
|
|
/* 027F8E58 */ if (_t52) goto L_027F8E60; else goto L_027F8E5C;
|
|
L_027F8E5C: ; // 0x27f8e5c
|
|
/* 027F8E5C */ cpu->r[30] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_027F8E60: ; // 0x27f8e60
|
|
/* 027F8E60 */ cpu->ctr = cpu->r[11];
|
|
/* 027F8E64 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F8E68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F8E6C */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8E6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F8E70 */ cpu->r[6] = 0x00000000u;
|
|
/* 027F8E74 */ cpu->r[5] = cpu->r[30];
|
|
/* 027F8E78 */ cpu->r[3] = cpu->r[28];
|
|
/* 027F8E7C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 027F8E80 */ _t54 = cpu->r[28] + cpu->r[30];
|
|
/* 027F8E80 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[29]);
|
|
L_027F8E84: ; // 0x27f8e84
|
|
/* 027F8E84 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F8E88 */ cpu->r[12] = cpu->r[12] + 0x00000BCCu;
|
|
/* 027F8E8C */ _t55 = cpu->r[27] + 0x00000004u;
|
|
/* 027F8E8C */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
L_027F8E90: ; // 0x27f8e90
|
|
/* 027F8E90 */ cpu->r[0] = 0x00000000u;
|
|
/* 027F8E94 */ _t56 = cpu->r[31] + 0x00000030u;
|
|
/* 027F8E94 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
L_027F8E98: ; // 0x27f8e98
|
|
/* 027F8E98 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F8E9C */ /* nop */
|
|
/* 027F8EA0 */ _t57 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F8EA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F8EA4 */ cpu->lr = cpu->r[0];
|
|
/* 027F8EA8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F8EAC */ return;
|
|
}
|
|
|
|
// fn_027F8EB0 @ 0x27f8eb0
|
|
void Gambit_fn_027F8EB0(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_027F8EB0: ; // 0x27f8eb0
|
|
/* 027F8EB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8EB4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8EB4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F8EB4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8EB4 */ goto L_027F8EB8;
|
|
L_027F8EB8: ; // 0x27f8eb8
|
|
/* 027F8EB8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F8EB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8EBC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8EBC */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8EBC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8EBC */ goto L_027F8EC0;
|
|
L_027F8EC0: ; // 0x27f8ec0
|
|
/* 027F8EC0 */ 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_027F8EC4 @ 0x27f8ec4
|
|
void Gambit_fn_027F8EC4(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_027F8EC4: ; // 0x27f8ec4
|
|
/* 027F8EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8EC8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8EC8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F8EC8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8EC8 */ goto L_027F8ECC;
|
|
L_027F8ECC: ; // 0x27f8ecc
|
|
/* 027F8ECC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F8ECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8ED0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8ED0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8ED0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8ED0 */ goto L_027F8ED4;
|
|
L_027F8ED4: ; // 0x27f8ed4
|
|
/* 027F8ED4 */ 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_027F8ED8 @ 0x27f8ed8
|
|
void Gambit_fn_027F8ED8(CPUState* cpu) {
|
|
L_027F8ED8: ; // 0x27f8ed8
|
|
/* 027F8ED8 */ return;
|
|
}
|
|
|
|
// fn_027F8EDC @ 0x27f8edc
|
|
void Gambit_fn_027F8EDC(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_027F8EDC: ; // 0x27f8edc
|
|
/* 027F8EDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8EE0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8EE0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F8EE0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8EE0 */ goto L_027F8EE4;
|
|
L_027F8EE4: ; // 0x27f8ee4
|
|
/* 027F8EE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F8EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8EE8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8EE8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8EE8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8EE8 */ goto L_027F8EEC;
|
|
L_027F8EEC: ; // 0x27f8eec
|
|
/* 027F8EEC */ 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_027F8EF0 @ 0x27f8ef0
|
|
void Gambit_fn_027F8EF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F8EF0: ; // 0x27f8ef0
|
|
/* 027F8EF0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 027F8EF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 027F8EF4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 027F8EF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 027F8EF8 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 027F8EFC */ cpu->r[11] = 0x10110000u;
|
|
/* 027F8F00 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 027F8F00 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027F8F04 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F8F04 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027F8F08 */ return;
|
|
}
|
|
|
|
// fn_027F8F0C @ 0x27f8f0c
|
|
void Gambit_fn_027F8F0C(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_027F8F0C: ; // 0x27f8f0c
|
|
/* 027F8F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8F10 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8F10 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F8F10 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8F10 */ goto L_027F8F14;
|
|
L_027F8F14: ; // 0x27f8f14
|
|
/* 027F8F14 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F8F14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8F18 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8F18 */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8F18 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8F18 */ goto L_027F8F1C;
|
|
L_027F8F1C: ; // 0x27f8f1c
|
|
/* 027F8F1C */ 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_027F8F20 @ 0x27f8f20
|
|
void Gambit_fn_027F8F20(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_027F8F20: ; // 0x27f8f20
|
|
/* 027F8F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F8F24 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8F24 */ _t1 = _t0 & 0x00000001u;
|
|
/* 027F8F24 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8F24 */ goto L_027F8F28;
|
|
L_027F8F28: ; // 0x27f8f28
|
|
/* 027F8F28 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 027F8F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 027F8F2C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8F2C */ _t3 = _t2 & 0x00000001u;
|
|
/* 027F8F2C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027F8F2C */ goto L_027F8F30;
|
|
L_027F8F30: ; // 0x27f8f30
|
|
/* 027F8F30 */ 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_027F8F34 @ 0x27f8f34
|
|
void Gambit_fn_027F8F34(CPUState* cpu) {
|
|
L_027F8F34: ; // 0x27f8f34
|
|
/* 027F8F34 */ return;
|
|
}
|
|
|
|
// fn_027F8F38 @ 0x27f8f38
|
|
void Gambit_fn_027F8F38(CPUState* cpu) {
|
|
L_027F8F38: ; // 0x27f8f38
|
|
/* 027F8F38 */ return;
|
|
}
|
|
|
|
// fn_027F8F3C @ 0x27f8f3c
|
|
void Gambit_fn_027F8F3C(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_027F8F3C: ; // 0x27f8f3c
|
|
/* 027F8F3C */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 027F8F3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8F3C */ cpu->r[1] = _t0;
|
|
/* 027F8F40 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 027F8F40 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 027F8F44 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8F44 */ rbrew_write32(cpu->mem, _t2, cpu->r[4]);
|
|
/* 027F8F48 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8F48 */ rbrew_write32(cpu->mem, _t3, cpu->r[5]);
|
|
/* 027F8F4C */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 027F8F4C */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 027F8F50 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F8F50 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 027F8F54 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8F54 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 027F8F58 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8F58 */ rbrew_write32(cpu->mem, _t7, cpu->r[6]);
|
|
/* 027F8F5C */ _t8 = cpu->r[1] + 0x00000078u;
|
|
/* 027F8F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F8F60 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 027F8F60 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 027F8F64 */ _t10 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 027F8F64 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F8F64 */ if (_t11) goto L_027F8F68; else goto L_027F8F88;
|
|
L_027F8F68: ; // 0x27f8f68
|
|
/* 027F8F68 */ _t12 = cpu->r[1] + 0x00000038u;
|
|
/* 027F8F68 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[3]);
|
|
/* 027F8F6C */ _t13 = cpu->r[1] + 0x00000058u;
|
|
/* 027F8F6C */ rbrew_write_f64(cpu->mem, _t13, cpu->f[7]);
|
|
/* 027F8F70 */ _t14 = cpu->r[1] + 0x00000050u;
|
|
/* 027F8F70 */ rbrew_write_f64(cpu->mem, _t14, cpu->f[6]);
|
|
/* 027F8F74 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 027F8F74 */ rbrew_write_f64(cpu->mem, _t15, cpu->f[2]);
|
|
/* 027F8F78 */ _t16 = cpu->r[1] + 0x00000040u;
|
|
/* 027F8F78 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[4]);
|
|
/* 027F8F7C */ _t17 = cpu->r[1] + 0x00000060u;
|
|
/* 027F8F7C */ rbrew_write_f64(cpu->mem, _t17, cpu->f[8]);
|
|
/* 027F8F80 */ _t18 = cpu->r[1] + 0x00000048u;
|
|
/* 027F8F80 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[5]);
|
|
/* 027F8F84 */ _t19 = cpu->r[1] + 0x00000028u;
|
|
/* 027F8F84 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[1]);
|
|
L_027F8F88: ; // 0x27f8f88
|
|
/* 027F8F88 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 027F8F8C */ return;
|
|
}
|
|
|
|
// fn_027F8F90 @ 0x27f8f90
|
|
void Gambit_fn_027F8F90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F8F90: ; // 0x27f8f90
|
|
/* 027F8F90 */ cpu->r[0] = cpu->lr;
|
|
/* 027F8F94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8F94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8F94 */ cpu->r[1] = _t0;
|
|
/* 027F8F98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8F98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8F9C */ cpu->r[4] = 0x101F0000u;
|
|
/* 027F8FA0 */ cpu->r[4] = cpu->r[4] + 0x0000407Cu;
|
|
/* 027F8FA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8FA8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8FA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8FAC */ Gambit_fn_0283435C(cpu);
|
|
/* 027F8FB0 */ cpu->r[0] = 0x00000001u;
|
|
/* 027F8FB4 */ _t3 = cpu->r[31] + 0x00000124u;
|
|
/* 027F8FB4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027F8FB8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8FB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8FBC */ cpu->lr = cpu->r[0];
|
|
/* 027F8FC0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8FC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8FC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8FC8 */ return;
|
|
}
|
|
|
|
// fn_027F8F94 @ 0x27f8f94
|
|
void Gambit_fn_027F8F94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F8F94: ; // 0x27f8f94
|
|
/* 027F8F94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8F94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8F94 */ cpu->r[1] = _t0;
|
|
/* 027F8F98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8F98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8F9C */ cpu->r[4] = 0x101F0000u;
|
|
/* 027F8FA0 */ cpu->r[4] = cpu->r[4] + 0x0000407Cu;
|
|
/* 027F8FA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8FA8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8FA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8FAC */ Gambit_fn_0283435C(cpu);
|
|
/* 027F8FB0 */ cpu->r[0] = 0x00000001u;
|
|
/* 027F8FB4 */ _t3 = cpu->r[31] + 0x00000124u;
|
|
/* 027F8FB4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027F8FB8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8FB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8FBC */ cpu->lr = cpu->r[0];
|
|
/* 027F8FC0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8FC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8FC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8FC8 */ return;
|
|
}
|
|
|
|
// fn_027F8FCC @ 0x27f8fcc
|
|
void Gambit_fn_027F8FCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F8FCC: ; // 0x27f8fcc
|
|
/* 027F8FCC */ cpu->r[0] = cpu->lr;
|
|
/* 027F8FD0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F8FD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8FD0 */ cpu->r[1] = _t0;
|
|
/* 027F8FD4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8FD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F8FD8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8FD8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027F8FDC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8FDC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F8FE0 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8FE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027F8FE4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8FE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F8FE8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F8FE8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F8FEC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8FEC */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F8FEC */ if (_t7) goto L_027F8FF0; else goto L_027F9000;
|
|
L_027F8FF0: ; // 0x27f8ff0
|
|
/* 027F8FF0 */ cpu->r[3] = 0x00000128u;
|
|
/* 027F8FF4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8FF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8FF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F8FFC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8FFC */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F8FFC */ if (_t9) goto L_027F9108; else goto L_027F9000;
|
|
L_027F9000: ; // 0x27f9000
|
|
/* 027F9000 */ cpu->r[30] = cpu->r[31];
|
|
/* 027F9000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F9004 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9004 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F9004 */ if (_t11) goto L_027F9008; else goto L_027F9018;
|
|
L_027F9008: ; // 0x27f9008
|
|
/* 027F9008 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F900C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9010 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F9010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F9014 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9014 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F9014 */ if (_t13) goto L_027F902C; else goto L_027F9018;
|
|
L_027F9018: ; // 0x27f9018
|
|
/* 027F9018 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F901C */ Gambit_fn_02834304(cpu);
|
|
/* 027F9020 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F9024 */ cpu->r[9] = cpu->r[9] + 0x00000C44u;
|
|
/* 027F9028 */ _t14 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F9028 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
L_027F902C: ; // 0x27f902c
|
|
/* 027F902C */ cpu->r[10] = 0x10110000u;
|
|
/* 027F9030 */ cpu->r[11] = 0x00000000u;
|
|
/* 027F9034 */ cpu->r[10] = cpu->r[10] + 0x00000D08u;
|
|
/* 027F9038 */ _t15 = cpu->r[31] + 0x00000010u;
|
|
/* 027F9038 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 027F903C */ cpu->r[28] = cpu->r[31] + 0x00000014u;
|
|
/* 027F903C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F9040 */ _t16 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F9040 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 027F9044 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9044 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F9044 */ if (_t18) goto L_027F9048; else goto L_027F9058;
|
|
L_027F9048: ; // 0x27f9048
|
|
/* 027F9048 */ cpu->r[3] = 0x00000110u;
|
|
/* 027F904C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9050 */ cpu->r[28] = cpu->r[3];
|
|
/* 027F9050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F9054 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9054 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F9054 */ if (_t20) goto L_027F90EC; else goto L_027F9058;
|
|
L_027F9058: ; // 0x27f9058
|
|
/* 027F9058 */ cpu->r[30] = cpu->r[28];
|
|
/* 027F9058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F905C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F905C */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F905C */ if (_t22) goto L_027F9060; else goto L_027F9070;
|
|
L_027F9060: ; // 0x27f9060
|
|
/* 027F9060 */ cpu->r[3] = 0x00000110u;
|
|
/* 027F9064 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9068 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F9068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F906C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F906C */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F906C */ if (_t24) goto L_027F90E0; else goto L_027F9070;
|
|
L_027F9070: ; // 0x27f9070
|
|
/* 027F9070 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F9070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F9074 */ cpu->r[29] = 0x10110000u;
|
|
/* 027F9078 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9078 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F9078 */ if (_t26) goto L_027F907C; else goto L_027F90A8;
|
|
L_027F907C: ; // 0x27f907c
|
|
/* 027F907C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F9080 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F9088 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9088 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F9088 */ if (_t28) goto L_027F908C; else goto L_027F90A8;
|
|
L_027F908C: ; // 0x27f908c
|
|
/* 027F908C */ cpu->r[0] = 0x10110000u;
|
|
/* 027F9090 */ _t29 = cpu->r[29] + 0x00007399u;
|
|
/* 027F9090 */ cpu->r[7] = rbrew_read8(cpu->mem, _t29);
|
|
/* 027F9094 */ cpu->r[0] = cpu->r[0] + 0x00000CBCu;
|
|
/* 027F9098 */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 027F9098 */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F909C */ _t31 = cpu->r[30] + 0x00000004u;
|
|
/* 027F909C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 027F90A0 */ _t32 = cpu->r[5] + 0x00000000u;
|
|
/* 027F90A0 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[7]);
|
|
/* 027F90A4 */ goto L_027F90E0;
|
|
L_027F90A8: ; // 0x27f90a8
|
|
/* 027F90A8 */ cpu->r[12] = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F90AC */ cpu->r[0] = 0x10110000u;
|
|
/* 027F90B0 */ _t33 = cpu->r[3] + 0x00000000u;
|
|
/* 027F90B0 */ rbrew_write32(cpu->mem, _t33, cpu->r[12]);
|
|
/* 027F90B4 */ cpu->r[12] = 0x00000101u;
|
|
/* 027F90B8 */ cpu->r[0] = cpu->r[0] + 0x00000C54u;
|
|
/* 027F90BC */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 027F90BC */ rbrew_write32(cpu->mem, _t34, cpu->r[12]);
|
|
/* 027F90C0 */ _t35 = cpu->r[3] + 0x00000004u;
|
|
/* 027F90C0 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 027F90C4 */ _t36 = cpu->r[29] + 0x00007399u;
|
|
/* 027F90C4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t36);
|
|
/* 027F90C8 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F90CC */ _t37 = cpu->r[30] + 0x00000000u;
|
|
/* 027F90CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F90D0 */ cpu->r[0] = cpu->r[0] + 0x00000CBCu;
|
|
/* 027F90D4 */ _t38 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F90D4 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[7]);
|
|
/* 027F90D8 */ _t39 = cpu->r[30] + 0x00000004u;
|
|
/* 027F90D8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 027F90DC */ _t40 = cpu->r[5] + 0x00000000u;
|
|
/* 027F90DC */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[7]);
|
|
L_027F90E0: ; // 0x27f90e0
|
|
/* 027F90E0 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F90E4 */ cpu->r[0] = cpu->r[0] + 0x00000CD4u;
|
|
/* 027F90E8 */ _t41 = cpu->r[28] + 0x00000004u;
|
|
/* 027F90E8 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
L_027F90EC: ; // 0x27f90ec
|
|
/* 027F90EC */ cpu->r[0] = 0x00000001u;
|
|
/* 027F90F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F90F4 */ cpu->r[4] = 0x00000000u;
|
|
/* 027F90F8 */ _t42 = cpu->r[31] + 0x00000124u;
|
|
/* 027F90F8 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[0]);
|
|
/* 027F90FC */ Gambit_fn_028343C8(cpu);
|
|
/* 027F9100 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F9104 */ Gambit_fn_027F8F90(cpu);
|
|
L_027F9108: ; // 0x27f9108
|
|
/* 027F9108 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9108 */ cpu->r[28] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F910C */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F910C */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F9110 */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F9110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F9114 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F9118 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 027F9118 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F911C */ cpu->lr = cpu->r[0];
|
|
/* 027F9120 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9120 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 027F9124 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F9128 */ return;
|
|
}
|
|
|
|
// fn_027F8FD0 @ 0x27f8fd0
|
|
void Gambit_fn_027F8FD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_027F8FD0: ; // 0x27f8fd0
|
|
/* 027F8FD0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F8FD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8FD0 */ cpu->r[1] = _t0;
|
|
/* 027F8FD4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8FD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 027F8FD8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 027F8FD8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027F8FDC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8FDC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 027F8FE0 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 027F8FE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027F8FE4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8FE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F8FE8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F8FE8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F8FEC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8FEC */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F8FEC */ if (_t7) goto L_027F8FF0; else goto L_027F9000;
|
|
L_027F8FF0: ; // 0x27f8ff0
|
|
/* 027F8FF0 */ cpu->r[3] = 0x00000128u;
|
|
/* 027F8FF4 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F8FF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8FF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F8FFC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F8FFC */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F8FFC */ if (_t9) goto L_027F9108; else goto L_027F9000;
|
|
L_027F9000: ; // 0x27f9000
|
|
/* 027F9000 */ cpu->r[30] = cpu->r[31];
|
|
/* 027F9000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F9004 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9004 */ _t11 = _t10 & 0x00000001u;
|
|
/* 027F9004 */ if (_t11) goto L_027F9008; else goto L_027F9018;
|
|
L_027F9008: ; // 0x27f9008
|
|
/* 027F9008 */ cpu->r[3] = 0x00000010u;
|
|
/* 027F900C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9010 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F9010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F9014 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9014 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F9014 */ if (_t13) goto L_027F902C; else goto L_027F9018;
|
|
L_027F9018: ; // 0x27f9018
|
|
/* 027F9018 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F901C */ Gambit_fn_02834304(cpu);
|
|
/* 027F9020 */ cpu->r[9] = 0x10110000u;
|
|
/* 027F9024 */ cpu->r[9] = cpu->r[9] + 0x00000C44u;
|
|
/* 027F9028 */ _t14 = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F9028 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
L_027F902C: ; // 0x27f902c
|
|
/* 027F902C */ cpu->r[10] = 0x10110000u;
|
|
/* 027F9030 */ cpu->r[11] = 0x00000000u;
|
|
/* 027F9034 */ cpu->r[10] = cpu->r[10] + 0x00000D08u;
|
|
/* 027F9038 */ _t15 = cpu->r[31] + 0x00000010u;
|
|
/* 027F9038 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 027F903C */ cpu->r[28] = cpu->r[31] + 0x00000014u;
|
|
/* 027F903C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F9040 */ _t16 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F9040 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 027F9044 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9044 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F9044 */ if (_t18) goto L_027F9048; else goto L_027F9058;
|
|
L_027F9048: ; // 0x27f9048
|
|
/* 027F9048 */ cpu->r[3] = 0x00000110u;
|
|
/* 027F904C */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9050 */ cpu->r[28] = cpu->r[3];
|
|
/* 027F9050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 027F9054 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9054 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F9054 */ if (_t20) goto L_027F90EC; else goto L_027F9058;
|
|
L_027F9058: ; // 0x27f9058
|
|
/* 027F9058 */ cpu->r[30] = cpu->r[28];
|
|
/* 027F9058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F905C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F905C */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F905C */ if (_t22) goto L_027F9060; else goto L_027F9070;
|
|
L_027F9060: ; // 0x27f9060
|
|
/* 027F9060 */ cpu->r[3] = 0x00000110u;
|
|
/* 027F9064 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9068 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F9068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F906C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F906C */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F906C */ if (_t24) goto L_027F90E0; else goto L_027F9070;
|
|
L_027F9070: ; // 0x27f9070
|
|
/* 027F9070 */ cpu->r[3] = cpu->r[30];
|
|
/* 027F9070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F9074 */ cpu->r[29] = 0x10110000u;
|
|
/* 027F9078 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9078 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F9078 */ if (_t26) goto L_027F907C; else goto L_027F90A8;
|
|
L_027F907C: ; // 0x27f907c
|
|
/* 027F907C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 027F9080 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F9088 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9088 */ _t28 = _t27 & 0x00000001u;
|
|
/* 027F9088 */ if (_t28) goto L_027F908C; else goto L_027F90A8;
|
|
L_027F908C: ; // 0x27f908c
|
|
/* 027F908C */ cpu->r[0] = 0x10110000u;
|
|
/* 027F9090 */ _t29 = cpu->r[29] + 0x00007399u;
|
|
/* 027F9090 */ cpu->r[7] = rbrew_read8(cpu->mem, _t29);
|
|
/* 027F9094 */ cpu->r[0] = cpu->r[0] + 0x00000CBCu;
|
|
/* 027F9098 */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 027F9098 */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F909C */ _t31 = cpu->r[30] + 0x00000004u;
|
|
/* 027F909C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 027F90A0 */ _t32 = cpu->r[5] + 0x00000000u;
|
|
/* 027F90A0 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[7]);
|
|
/* 027F90A4 */ goto L_027F90E0;
|
|
L_027F90A8: ; // 0x27f90a8
|
|
/* 027F90A8 */ cpu->r[12] = cpu->r[30] + 0x0000000Cu;
|
|
/* 027F90AC */ cpu->r[0] = 0x10110000u;
|
|
/* 027F90B0 */ _t33 = cpu->r[3] + 0x00000000u;
|
|
/* 027F90B0 */ rbrew_write32(cpu->mem, _t33, cpu->r[12]);
|
|
/* 027F90B4 */ cpu->r[12] = 0x00000101u;
|
|
/* 027F90B8 */ cpu->r[0] = cpu->r[0] + 0x00000C54u;
|
|
/* 027F90BC */ _t34 = cpu->r[3] + 0x00000008u;
|
|
/* 027F90BC */ rbrew_write32(cpu->mem, _t34, cpu->r[12]);
|
|
/* 027F90C0 */ _t35 = cpu->r[3] + 0x00000004u;
|
|
/* 027F90C0 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 027F90C4 */ _t36 = cpu->r[29] + 0x00007399u;
|
|
/* 027F90C4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t36);
|
|
/* 027F90C8 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F90CC */ _t37 = cpu->r[30] + 0x00000000u;
|
|
/* 027F90CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F90D0 */ cpu->r[0] = cpu->r[0] + 0x00000CBCu;
|
|
/* 027F90D4 */ _t38 = cpu->r[30] + 0x0000010Cu;
|
|
/* 027F90D4 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[7]);
|
|
/* 027F90D8 */ _t39 = cpu->r[30] + 0x00000004u;
|
|
/* 027F90D8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 027F90DC */ _t40 = cpu->r[5] + 0x00000000u;
|
|
/* 027F90DC */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[7]);
|
|
L_027F90E0: ; // 0x27f90e0
|
|
/* 027F90E0 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F90E4 */ cpu->r[0] = cpu->r[0] + 0x00000CD4u;
|
|
/* 027F90E8 */ _t41 = cpu->r[28] + 0x00000004u;
|
|
/* 027F90E8 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
L_027F90EC: ; // 0x27f90ec
|
|
/* 027F90EC */ cpu->r[0] = 0x00000001u;
|
|
/* 027F90F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F90F4 */ cpu->r[4] = 0x00000000u;
|
|
/* 027F90F8 */ _t42 = cpu->r[31] + 0x00000124u;
|
|
/* 027F90F8 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[0]);
|
|
/* 027F90FC */ Gambit_fn_028343C8(cpu);
|
|
/* 027F9100 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F9104 */ Gambit_fn_027F8F90(cpu);
|
|
L_027F9108: ; // 0x27f9108
|
|
/* 027F9108 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9108 */ cpu->r[28] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F910C */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F910C */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 027F9110 */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F9110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F9114 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F9118 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 027F9118 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F911C */ cpu->lr = cpu->r[0];
|
|
/* 027F9120 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9120 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 027F9124 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F9128 */ return;
|
|
}
|
|
|
|
// fn_027F912C @ 0x27f912c
|
|
void Gambit_fn_027F912C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F912C: ; // 0x27f912c
|
|
/* 027F912C */ cpu->r[0] = cpu->lr;
|
|
/* 027F9130 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F9130 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F9130 */ cpu->r[1] = _t0;
|
|
/* 027F9134 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F9134 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F9138 */ cpu->r[4] = 0x101F0000u;
|
|
/* 027F913C */ cpu->r[4] = cpu->r[4] + 0x00004000u;
|
|
/* 027F9140 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F9144 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9144 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F9148 */ Gambit_fn_0283435C(cpu);
|
|
/* 027F914C */ cpu->r[0] = 0x00000000u;
|
|
/* 027F9150 */ _t3 = cpu->r[31] + 0x00000124u;
|
|
/* 027F9150 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027F9154 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F9158 */ cpu->lr = cpu->r[0];
|
|
/* 027F915C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F915C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F9160 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F9164 */ return;
|
|
}
|
|
|
|
// fn_027F9130 @ 0x27f9130
|
|
void Gambit_fn_027F9130(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_027F9130: ; // 0x27f9130
|
|
/* 027F9130 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F9130 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F9130 */ cpu->r[1] = _t0;
|
|
/* 027F9134 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F9134 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F9138 */ cpu->r[4] = 0x101F0000u;
|
|
/* 027F913C */ cpu->r[4] = cpu->r[4] + 0x00004000u;
|
|
/* 027F9140 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F9144 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9144 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F9148 */ Gambit_fn_0283435C(cpu);
|
|
/* 027F914C */ cpu->r[0] = 0x00000000u;
|
|
/* 027F9150 */ _t3 = cpu->r[31] + 0x00000124u;
|
|
/* 027F9150 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 027F9154 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F9158 */ cpu->lr = cpu->r[0];
|
|
/* 027F915C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F915C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F9160 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F9164 */ return;
|
|
}
|
|
|
|
// fn_027F9168 @ 0x27f9168
|
|
void Gambit_fn_027F9168(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F9168: ; // 0x27f9168
|
|
/* 027F9168 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F916C */ cpu->r[4] = cpu->r[3] + 0x00000014u;
|
|
/* 027F9170 */ goto L_028344F4;
|
|
L_028344F4: ; // 0x28344f4
|
|
/* 028344F4 */ cpu->r[12] = cpu->r[3];
|
|
/* 028344F8 */ _t0 = cpu->r[12] + 0x00000000u;
|
|
/* 028344F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 028344FC */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 028344FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02834500 */ cpu->r[6] = cpu->r[5];
|
|
/* 02834504 */ _t2 = cpu->r[11] + 0x0000005Cu;
|
|
/* 02834504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02834508 */ cpu->r[5] = cpu->r[4];
|
|
/* 0283450C */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 0283450C */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02834510 */ cpu->ctr = cpu->r[0];
|
|
/* 02834514 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_027F9174 @ 0x27f9174
|
|
void Gambit_fn_027F9174(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_027F9174: ; // 0x27f9174
|
|
/* 027F9174 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F9178 */ cpu->r[4] = cpu->r[3] + 0x00000014u;
|
|
/* 027F917C */ goto L_028344F4;
|
|
L_028344F4: ; // 0x28344f4
|
|
/* 028344F4 */ cpu->r[12] = cpu->r[3];
|
|
/* 028344F8 */ _t0 = cpu->r[12] + 0x00000000u;
|
|
/* 028344F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 028344FC */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 028344FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02834500 */ cpu->r[6] = cpu->r[5];
|
|
/* 02834504 */ _t2 = cpu->r[11] + 0x0000005Cu;
|
|
/* 02834504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02834508 */ cpu->r[5] = cpu->r[4];
|
|
/* 0283450C */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 0283450C */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02834510 */ cpu->ctr = cpu->r[0];
|
|
/* 02834514 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_027F9180 @ 0x27f9180
|
|
void Gambit_fn_027F9180(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F9180: ; // 0x27f9180
|
|
/* 027F9180 */ cpu->r[0] = cpu->lr;
|
|
/* 027F9184 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027F9184 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F9184 */ cpu->r[1] = _t0;
|
|
/* 027F9188 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027F9188 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F918C */ cpu->r[31] = cpu->r[4];
|
|
/* 027F9190 */ cpu->r[4] = cpu->r[3] + 0x00000014u;
|
|
/* 027F9194 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 027F9194 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027F9198 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 027F9198 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027F919C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F919C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F91A0 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F91A4 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F91A8 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F91A8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F91AC */ Gambit_fn_028344F4(cpu);
|
|
/* 027F91B0 */ cpu->r[28] = 0x10110000u;
|
|
/* 027F91B4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 027F91B8 */ _t6 = cpu->r[30] + 0x00000018u;
|
|
/* 027F91B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F91BC */ cpu->r[28] = cpu->r[28] + 0x00000C2Cu;
|
|
/* 027F91C0 */ _t7 = cpu->r[11] + 0xFFFF9800u;
|
|
/* 027F91C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F91C4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F91C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 027F91C8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F91C8 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 027F91CC */ _t10 = cpu->r[7] + 0x00000014u;
|
|
/* 027F91CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F91D0 */ cpu->ctr = cpu->r[8];
|
|
/* 027F91D4 */ cpu->r[3] = cpu->r[30] + 0x00000014u;
|
|
/* 027F91D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F91DC */ _t11 = cpu->r[30] + 0x00000018u;
|
|
/* 027F91DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F91E0 */ _t12 = cpu->r[9] + 0x00000014u;
|
|
/* 027F91E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F91E4 */ cpu->ctr = cpu->r[0];
|
|
/* 027F91E8 */ cpu->r[3] = cpu->r[30] + 0x00000014u;
|
|
/* 027F91EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F91F0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F91F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F91F4 */ _t14 = cpu->r[5] + 0x00000014u;
|
|
/* 027F91F4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F91F8 */ cpu->ctr = cpu->r[6];
|
|
/* 027F91FC */ _t15 = cpu->r[30] + 0x00000014u;
|
|
/* 027F91FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F9200 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F9204 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9208 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9208 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F920C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[7]);
|
|
/* 027F9210 */ cpu->r[29] = 0x10110000u;
|
|
/* 027F9214 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9214 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F9214 */ if (_t18) goto L_027F9218; else goto L_027F9228;
|
|
L_027F9218: ; // 0x27f9218
|
|
/* 027F9218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F921C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F9220 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9220 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F9220 */ if (_t20) goto L_027F92CC; else goto L_027F9224;
|
|
L_027F9224: ; // 0x27f9224
|
|
/* 027F9224 */ goto L_027F92DC;
|
|
L_027F9228: ; // 0x27f9228
|
|
/* 027F9228 */ _t21 = cpu->r[30] + 0x00000014u;
|
|
/* 027F9228 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F922C */ cpu->r[6] = 0x00080000u;
|
|
/* 027F9230 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9230 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F9234 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 027F9238 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F923C */ _t23 = cpu->r[29] + 0x00007399u;
|
|
/* 027F923C */ cpu->r[0] = rbrew_read8(cpu->mem, _t23);
|
|
/* 027F9240 */ cpu->ctr = cpu->r[6];
|
|
/* 027F9244 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_027F9248: ; // 0x27f9248
|
|
/* 027F9248 */ _t24 = cpu->r[12] + 0x00000001u;
|
|
/* 027F9248 */ cpu->r[5] = rbrew_read8(cpu->mem, _t24);
|
|
/* 027F9248 */ cpu->r[12] = _t24;
|
|
/* 027F924C */ _t25 = cpu->r[11] + 0x00000001u;
|
|
/* 027F924C */ cpu->r[8] = rbrew_read8(cpu->mem, _t25);
|
|
/* 027F924C */ cpu->r[11] = _t25;
|
|
/* 027F9250 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[8]);
|
|
/* 027F9254 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9254 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F9254 */ if (_t27) goto L_027F9258; else goto L_027F9264;
|
|
L_027F9258: ; // 0x27f9258
|
|
/* 027F9258 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 027F925C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F925C */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F925C */ if (_t29) goto L_027F9218; else goto L_027F9260;
|
|
L_027F9260: ; // 0x27f9260
|
|
/* 027F9260 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F9260 */ _t30 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F9260 */ _t31 = _t30 >> (0x00000002u & 31u);
|
|
/* 027F9260 */ _t32 = _t31 & 0x00000001u;
|
|
/* 027F9260 */ if (_t32) goto L_027F9248; else goto L_027F9264;
|
|
L_027F9264: ; // 0x27f9264
|
|
/* 027F9264 */ _t33 = cpu->r[30] + 0x00000018u;
|
|
/* 027F9264 */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F9268 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F926C */ _t34 = cpu->r[12] + 0xFFFF9804u;
|
|
/* 027F926C */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F9270 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9270 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 027F9274 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 027F9274 */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 027F9278 */ _t37 = cpu->r[11] + 0x00000014u;
|
|
/* 027F9278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F927C */ cpu->ctr = cpu->r[0];
|
|
/* 027F9280 */ cpu->r[3] = cpu->r[30] + 0x00000014u;
|
|
/* 027F9284 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9288 */ _t38 = cpu->r[30] + 0x00000018u;
|
|
/* 027F9288 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027F928C */ _t39 = cpu->r[5] + 0x00000014u;
|
|
/* 027F928C */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F9290 */ cpu->ctr = cpu->r[6];
|
|
/* 027F9294 */ cpu->r[3] = cpu->r[30] + 0x00000014u;
|
|
/* 027F9298 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F929C */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 027F929C */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F92A0 */ _t41 = cpu->r[7] + 0x00000014u;
|
|
/* 027F92A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F92A4 */ cpu->ctr = cpu->r[0];
|
|
/* 027F92A8 */ _t42 = cpu->r[30] + 0x00000014u;
|
|
/* 027F92A8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F92AC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F92B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F92B4 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 027F92B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F92B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[9]);
|
|
/* 027F92BC */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F92BC */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F92BC */ if (_t45) goto L_027F92C0; else goto L_027F9304;
|
|
L_027F92C0: ; // 0x27f92c0
|
|
/* 027F92C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F92C4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F92C4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F92C4 */ if (_t47) goto L_027F934C; else goto L_027F92C8;
|
|
L_027F92C8: ; // 0x27f92c8
|
|
/* 027F92C8 */ goto L_027F935C;
|
|
L_027F92CC: ; // 0x27f92cc
|
|
/* 027F92CC */ cpu->r[3] = 0x00000004u;
|
|
/* 027F92D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F92D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F92D8 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F92D8 */ _t49 = _t48 & 0x00000001u;
|
|
/* 027F92D8 */ if (_t49) goto L_027F939C; else goto L_027F92DC;
|
|
L_027F92DC: ; // 0x27f92dc
|
|
/* 027F92DC */ cpu->r[10] = 0x00000000u;
|
|
/* 027F92E0 */ _t50 = cpu->r[3] + 0x00000000u;
|
|
/* 027F92E0 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 027F92E4 */ _t51 = cpu->r[1] + 0x00000018u;
|
|
/* 027F92E4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F92E8 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F92E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F92EC */ _t53 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F92EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F92F0 */ _t54 = cpu->r[1] + 0x00000020u;
|
|
/* 027F92F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F92F4 */ cpu->lr = cpu->r[0];
|
|
/* 027F92F8 */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 027F92F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F92FC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F9300 */ return;
|
|
L_027F9304: ; // 0x27f9304
|
|
/* 027F9304 */ _t56 = cpu->r[30] + 0x00000014u;
|
|
/* 027F9304 */ cpu->r[9] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027F9308 */ cpu->r[5] = 0x00080000u;
|
|
/* 027F930C */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 027F930C */ cpu->r[8] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F9310 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 027F9314 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 027F9318 */ _t58 = cpu->r[29] + 0x00007399u;
|
|
/* 027F9318 */ cpu->r[7] = rbrew_read8(cpu->mem, _t58);
|
|
/* 027F931C */ cpu->ctr = cpu->r[5];
|
|
/* 027F9320 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_027F9324: ; // 0x27f9324
|
|
/* 027F9324 */ _t59 = cpu->r[9] + 0x00000001u;
|
|
/* 027F9324 */ cpu->r[0] = rbrew_read8(cpu->mem, _t59);
|
|
/* 027F9324 */ cpu->r[9] = _t59;
|
|
/* 027F9328 */ _t60 = cpu->r[8] + 0x00000001u;
|
|
/* 027F9328 */ cpu->r[10] = rbrew_read8(cpu->mem, _t60);
|
|
/* 027F9328 */ cpu->r[8] = _t60;
|
|
/* 027F932C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 027F9330 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9330 */ _t62 = _t61 & 0x00000001u;
|
|
/* 027F9330 */ if (_t62) goto L_027F9334; else goto L_027F9340;
|
|
L_027F9334: ; // 0x27f9334
|
|
/* 027F9334 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 027F9338 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9338 */ _t64 = _t63 & 0x00000001u;
|
|
/* 027F9338 */ if (_t64) goto L_027F92C0; else goto L_027F933C;
|
|
L_027F933C: ; // 0x27f933c
|
|
/* 027F933C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F933C */ _t65 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F933C */ _t66 = _t65 >> (0x00000002u & 31u);
|
|
/* 027F933C */ _t67 = _t66 & 0x00000001u;
|
|
/* 027F933C */ if (_t67) goto L_027F9324; else goto L_027F9340;
|
|
L_027F9340: ; // 0x27f9340
|
|
/* 027F9340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F9344 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9344 */ _t69 = _t68 & 0x00000001u;
|
|
/* 027F9344 */ if (_t69) goto L_027F9384; else goto L_027F9348;
|
|
L_027F9348: ; // 0x27f9348
|
|
/* 027F9348 */ goto L_027F9394;
|
|
L_027F934C: ; // 0x27f934c
|
|
/* 027F934C */ cpu->r[3] = 0x00000004u;
|
|
/* 027F9350 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9354 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F9354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F9358 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9358 */ _t71 = _t70 & 0x00000001u;
|
|
/* 027F9358 */ if (_t71) goto L_027F939C; else goto L_027F935C;
|
|
L_027F935C: ; // 0x27f935c
|
|
/* 027F935C */ cpu->r[11] = 0x00000001u;
|
|
/* 027F9360 */ _t72 = cpu->r[31] + 0x00000000u;
|
|
/* 027F9360 */ rbrew_write32(cpu->mem, _t72, cpu->r[11]);
|
|
/* 027F9364 */ _t73 = cpu->r[1] + 0x00000018u;
|
|
/* 027F9364 */ cpu->r[28] = rbrew_read32(cpu->mem, _t73);
|
|
/* 027F9368 */ _t74 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F9368 */ cpu->r[29] = rbrew_read32(cpu->mem, _t74);
|
|
/* 027F936C */ _t75 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F936C */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 027F9370 */ _t76 = cpu->r[1] + 0x00000020u;
|
|
/* 027F9370 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 027F9374 */ cpu->lr = cpu->r[0];
|
|
/* 027F9378 */ _t77 = cpu->r[1] + 0x00000024u;
|
|
/* 027F9378 */ cpu->r[31] = rbrew_read32(cpu->mem, _t77);
|
|
/* 027F937C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F9380 */ return;
|
|
L_027F9384: ; // 0x27f9384
|
|
/* 027F9384 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F9388 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F938C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F938C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F9390 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9390 */ _t79 = _t78 & 0x00000001u;
|
|
/* 027F9390 */ if (_t79) goto L_027F939C; else goto L_027F9394;
|
|
L_027F9394: ; // 0x27f9394
|
|
/* 027F9394 */ cpu->r[12] = 0x00000001u;
|
|
/* 027F9398 */ _t80 = cpu->r[31] + 0x00000000u;
|
|
/* 027F9398 */ rbrew_write32(cpu->mem, _t80, cpu->r[12]);
|
|
L_027F939C: ; // 0x27f939c
|
|
/* 027F939C */ _t81 = cpu->r[1] + 0x00000018u;
|
|
/* 027F939C */ cpu->r[28] = rbrew_read32(cpu->mem, _t81);
|
|
/* 027F93A0 */ _t82 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F93A0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F93A4 */ _t83 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F93A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 027F93A8 */ _t84 = cpu->r[1] + 0x00000020u;
|
|
/* 027F93A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t84);
|
|
/* 027F93AC */ cpu->lr = cpu->r[0];
|
|
/* 027F93B0 */ _t85 = cpu->r[1] + 0x00000024u;
|
|
/* 027F93B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t85);
|
|
/* 027F93B4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F93B8 */ return;
|
|
}
|
|
|
|
// fn_027F9184 @ 0x27f9184
|
|
void Gambit_fn_027F9184(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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;
|
|
|
|
L_027F9184: ; // 0x27f9184
|
|
/* 027F9184 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 027F9184 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F9184 */ cpu->r[1] = _t0;
|
|
/* 027F9188 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 027F9188 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F918C */ cpu->r[31] = cpu->r[4];
|
|
/* 027F9190 */ cpu->r[4] = cpu->r[3] + 0x00000014u;
|
|
/* 027F9194 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 027F9194 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 027F9198 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 027F9198 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 027F919C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F919C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F91A0 */ cpu->r[30] = cpu->r[3];
|
|
/* 027F91A4 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F91A8 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F91A8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F91AC */ Gambit_fn_028344F4(cpu);
|
|
/* 027F91B0 */ cpu->r[28] = 0x10110000u;
|
|
/* 027F91B4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 027F91B8 */ _t6 = cpu->r[30] + 0x00000018u;
|
|
/* 027F91B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F91BC */ cpu->r[28] = cpu->r[28] + 0x00000C2Cu;
|
|
/* 027F91C0 */ _t7 = cpu->r[11] + 0xFFFF9800u;
|
|
/* 027F91C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F91C4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F91C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 027F91C8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 027F91C8 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 027F91CC */ _t10 = cpu->r[7] + 0x00000014u;
|
|
/* 027F91CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F91D0 */ cpu->ctr = cpu->r[8];
|
|
/* 027F91D4 */ cpu->r[3] = cpu->r[30] + 0x00000014u;
|
|
/* 027F91D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F91DC */ _t11 = cpu->r[30] + 0x00000018u;
|
|
/* 027F91DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F91E0 */ _t12 = cpu->r[9] + 0x00000014u;
|
|
/* 027F91E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F91E4 */ cpu->ctr = cpu->r[0];
|
|
/* 027F91E8 */ cpu->r[3] = cpu->r[30] + 0x00000014u;
|
|
/* 027F91EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F91F0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F91F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F91F4 */ _t14 = cpu->r[5] + 0x00000014u;
|
|
/* 027F91F4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F91F8 */ cpu->ctr = cpu->r[6];
|
|
/* 027F91FC */ _t15 = cpu->r[30] + 0x00000014u;
|
|
/* 027F91FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F9200 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F9204 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9208 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9208 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F920C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[7]);
|
|
/* 027F9210 */ cpu->r[29] = 0x10110000u;
|
|
/* 027F9214 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9214 */ _t18 = _t17 & 0x00000001u;
|
|
/* 027F9214 */ if (_t18) goto L_027F9218; else goto L_027F9228;
|
|
L_027F9218: ; // 0x27f9218
|
|
/* 027F9218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F921C */ cpu->r[3] = cpu->r[31];
|
|
/* 027F9220 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9220 */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F9220 */ if (_t20) goto L_027F92CC; else goto L_027F9224;
|
|
L_027F9224: ; // 0x27f9224
|
|
/* 027F9224 */ goto L_027F92DC;
|
|
L_027F9228: ; // 0x27f9228
|
|
/* 027F9228 */ _t21 = cpu->r[30] + 0x00000014u;
|
|
/* 027F9228 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027F922C */ cpu->r[6] = 0x00080000u;
|
|
/* 027F9230 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9230 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027F9234 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 027F9238 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 027F923C */ _t23 = cpu->r[29] + 0x00007399u;
|
|
/* 027F923C */ cpu->r[0] = rbrew_read8(cpu->mem, _t23);
|
|
/* 027F9240 */ cpu->ctr = cpu->r[6];
|
|
/* 027F9244 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_027F9248: ; // 0x27f9248
|
|
/* 027F9248 */ _t24 = cpu->r[12] + 0x00000001u;
|
|
/* 027F9248 */ cpu->r[5] = rbrew_read8(cpu->mem, _t24);
|
|
/* 027F9248 */ cpu->r[12] = _t24;
|
|
/* 027F924C */ _t25 = cpu->r[11] + 0x00000001u;
|
|
/* 027F924C */ cpu->r[8] = rbrew_read8(cpu->mem, _t25);
|
|
/* 027F924C */ cpu->r[11] = _t25;
|
|
/* 027F9250 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[8]);
|
|
/* 027F9254 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9254 */ _t27 = _t26 & 0x00000001u;
|
|
/* 027F9254 */ if (_t27) goto L_027F9258; else goto L_027F9264;
|
|
L_027F9258: ; // 0x27f9258
|
|
/* 027F9258 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 027F925C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F925C */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F925C */ if (_t29) goto L_027F9218; else goto L_027F9260;
|
|
L_027F9260: ; // 0x27f9260
|
|
/* 027F9260 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F9260 */ _t30 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F9260 */ _t31 = _t30 >> (0x00000002u & 31u);
|
|
/* 027F9260 */ _t32 = _t31 & 0x00000001u;
|
|
/* 027F9260 */ if (_t32) goto L_027F9248; else goto L_027F9264;
|
|
L_027F9264: ; // 0x27f9264
|
|
/* 027F9264 */ _t33 = cpu->r[30] + 0x00000018u;
|
|
/* 027F9264 */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F9268 */ cpu->r[12] = 0x101D0000u;
|
|
/* 027F926C */ _t34 = cpu->r[12] + 0xFFFF9804u;
|
|
/* 027F926C */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F9270 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9270 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 027F9274 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 027F9274 */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 027F9278 */ _t37 = cpu->r[11] + 0x00000014u;
|
|
/* 027F9278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F927C */ cpu->ctr = cpu->r[0];
|
|
/* 027F9280 */ cpu->r[3] = cpu->r[30] + 0x00000014u;
|
|
/* 027F9284 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9288 */ _t38 = cpu->r[30] + 0x00000018u;
|
|
/* 027F9288 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027F928C */ _t39 = cpu->r[5] + 0x00000014u;
|
|
/* 027F928C */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F9290 */ cpu->ctr = cpu->r[6];
|
|
/* 027F9294 */ cpu->r[3] = cpu->r[30] + 0x00000014u;
|
|
/* 027F9298 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F929C */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 027F929C */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F92A0 */ _t41 = cpu->r[7] + 0x00000014u;
|
|
/* 027F92A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 027F92A4 */ cpu->ctr = cpu->r[0];
|
|
/* 027F92A8 */ _t42 = cpu->r[30] + 0x00000014u;
|
|
/* 027F92A8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t42);
|
|
/* 027F92AC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F92B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F92B4 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 027F92B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 027F92B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[9]);
|
|
/* 027F92BC */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F92BC */ _t45 = _t44 & 0x00000001u;
|
|
/* 027F92BC */ if (_t45) goto L_027F92C0; else goto L_027F9304;
|
|
L_027F92C0: ; // 0x27f92c0
|
|
/* 027F92C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F92C4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F92C4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F92C4 */ if (_t47) goto L_027F934C; else goto L_027F92C8;
|
|
L_027F92C8: ; // 0x27f92c8
|
|
/* 027F92C8 */ goto L_027F935C;
|
|
L_027F92CC: ; // 0x27f92cc
|
|
/* 027F92CC */ cpu->r[3] = 0x00000004u;
|
|
/* 027F92D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F92D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027F92D8 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F92D8 */ _t49 = _t48 & 0x00000001u;
|
|
/* 027F92D8 */ if (_t49) goto L_027F939C; else goto L_027F92DC;
|
|
L_027F92DC: ; // 0x27f92dc
|
|
/* 027F92DC */ cpu->r[10] = 0x00000000u;
|
|
/* 027F92E0 */ _t50 = cpu->r[3] + 0x00000000u;
|
|
/* 027F92E0 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 027F92E4 */ _t51 = cpu->r[1] + 0x00000018u;
|
|
/* 027F92E4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F92E8 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F92E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F92EC */ _t53 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F92EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F92F0 */ _t54 = cpu->r[1] + 0x00000020u;
|
|
/* 027F92F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 027F92F4 */ cpu->lr = cpu->r[0];
|
|
/* 027F92F8 */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 027F92F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 027F92FC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F9300 */ return;
|
|
L_027F9304: ; // 0x27f9304
|
|
/* 027F9304 */ _t56 = cpu->r[30] + 0x00000014u;
|
|
/* 027F9304 */ cpu->r[9] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027F9308 */ cpu->r[5] = 0x00080000u;
|
|
/* 027F930C */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 027F930C */ cpu->r[8] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F9310 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 027F9314 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 027F9318 */ _t58 = cpu->r[29] + 0x00007399u;
|
|
/* 027F9318 */ cpu->r[7] = rbrew_read8(cpu->mem, _t58);
|
|
/* 027F931C */ cpu->ctr = cpu->r[5];
|
|
/* 027F9320 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_027F9324: ; // 0x27f9324
|
|
/* 027F9324 */ _t59 = cpu->r[9] + 0x00000001u;
|
|
/* 027F9324 */ cpu->r[0] = rbrew_read8(cpu->mem, _t59);
|
|
/* 027F9324 */ cpu->r[9] = _t59;
|
|
/* 027F9328 */ _t60 = cpu->r[8] + 0x00000001u;
|
|
/* 027F9328 */ cpu->r[10] = rbrew_read8(cpu->mem, _t60);
|
|
/* 027F9328 */ cpu->r[8] = _t60;
|
|
/* 027F932C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 027F9330 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9330 */ _t62 = _t61 & 0x00000001u;
|
|
/* 027F9330 */ if (_t62) goto L_027F9334; else goto L_027F9340;
|
|
L_027F9334: ; // 0x27f9334
|
|
/* 027F9334 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 027F9338 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9338 */ _t64 = _t63 & 0x00000001u;
|
|
/* 027F9338 */ if (_t64) goto L_027F92C0; else goto L_027F933C;
|
|
L_027F933C: ; // 0x27f933c
|
|
/* 027F933C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F933C */ _t65 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F933C */ _t66 = _t65 >> (0x00000002u & 31u);
|
|
/* 027F933C */ _t67 = _t66 & 0x00000001u;
|
|
/* 027F933C */ if (_t67) goto L_027F9324; else goto L_027F9340;
|
|
L_027F9340: ; // 0x27f9340
|
|
/* 027F9340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F9344 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9344 */ _t69 = _t68 & 0x00000001u;
|
|
/* 027F9344 */ if (_t69) goto L_027F9384; else goto L_027F9348;
|
|
L_027F9348: ; // 0x27f9348
|
|
/* 027F9348 */ goto L_027F9394;
|
|
L_027F934C: ; // 0x27f934c
|
|
/* 027F934C */ cpu->r[3] = 0x00000004u;
|
|
/* 027F9350 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F9354 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F9354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F9358 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9358 */ _t71 = _t70 & 0x00000001u;
|
|
/* 027F9358 */ if (_t71) goto L_027F939C; else goto L_027F935C;
|
|
L_027F935C: ; // 0x27f935c
|
|
/* 027F935C */ cpu->r[11] = 0x00000001u;
|
|
/* 027F9360 */ _t72 = cpu->r[31] + 0x00000000u;
|
|
/* 027F9360 */ rbrew_write32(cpu->mem, _t72, cpu->r[11]);
|
|
/* 027F9364 */ _t73 = cpu->r[1] + 0x00000018u;
|
|
/* 027F9364 */ cpu->r[28] = rbrew_read32(cpu->mem, _t73);
|
|
/* 027F9368 */ _t74 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F9368 */ cpu->r[29] = rbrew_read32(cpu->mem, _t74);
|
|
/* 027F936C */ _t75 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F936C */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 027F9370 */ _t76 = cpu->r[1] + 0x00000020u;
|
|
/* 027F9370 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 027F9374 */ cpu->lr = cpu->r[0];
|
|
/* 027F9378 */ _t77 = cpu->r[1] + 0x00000024u;
|
|
/* 027F9378 */ cpu->r[31] = rbrew_read32(cpu->mem, _t77);
|
|
/* 027F937C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F9380 */ return;
|
|
L_027F9384: ; // 0x27f9384
|
|
/* 027F9384 */ cpu->r[3] = 0x00000004u;
|
|
/* 027F9388 */ Gambit_fn_02801A78(cpu);
|
|
/* 027F938C */ cpu->r[31] = cpu->r[3];
|
|
/* 027F938C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F9390 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9390 */ _t79 = _t78 & 0x00000001u;
|
|
/* 027F9390 */ if (_t79) goto L_027F939C; else goto L_027F9394;
|
|
L_027F9394: ; // 0x27f9394
|
|
/* 027F9394 */ cpu->r[12] = 0x00000001u;
|
|
/* 027F9398 */ _t80 = cpu->r[31] + 0x00000000u;
|
|
/* 027F9398 */ rbrew_write32(cpu->mem, _t80, cpu->r[12]);
|
|
L_027F939C: ; // 0x27f939c
|
|
/* 027F939C */ _t81 = cpu->r[1] + 0x00000018u;
|
|
/* 027F939C */ cpu->r[28] = rbrew_read32(cpu->mem, _t81);
|
|
/* 027F93A0 */ _t82 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F93A0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t82);
|
|
/* 027F93A4 */ _t83 = cpu->r[1] + 0x0000002Cu;
|
|
/* 027F93A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 027F93A8 */ _t84 = cpu->r[1] + 0x00000020u;
|
|
/* 027F93A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t84);
|
|
/* 027F93AC */ cpu->lr = cpu->r[0];
|
|
/* 027F93B0 */ _t85 = cpu->r[1] + 0x00000024u;
|
|
/* 027F93B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t85);
|
|
/* 027F93B4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 027F93B8 */ return;
|
|
}
|
|
|
|
// fn_027F93BC @ 0x27f93bc
|
|
void Gambit_fn_027F93BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68;
|
|
|
|
L_027F93BC: ; // 0x27f93bc
|
|
/* 027F93BC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 027F93BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F93BC */ cpu->r[1] = _t0;
|
|
/* 027F93C0 */ /* nop */
|
|
/* 027F93C4 */ cpu->r[0] = cpu->lr;
|
|
/* 027F93C8 */ cpu->r[24] = 0x00080000u;
|
|
/* 027F93CC */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F93CC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F93D0 */ cpu->r[29] = cpu->r[3];
|
|
/* 027F93D4 */ cpu->r[31] = 0x10110000u;
|
|
/* 027F93D8 */ cpu->r[25] = 0x00000001u;
|
|
/* 027F93DC */ cpu->r[26] = 0x101D0000u;
|
|
/* 027F93E0 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 027F93E4 */ cpu->r[28] = 0x10110000u;
|
|
/* 027F93E8 */ cpu->r[27] = 0x101D0000u;
|
|
/* 027F93EC */ _t2 = cpu->r[31] + 0x00007399u;
|
|
/* 027F93EC */ cpu->r[31] = rbrew_read8(cpu->mem, _t2);
|
|
/* 027F93F0 */ cpu->r[28] = cpu->r[28] + 0x00000C2Cu;
|
|
L_027F93F4: ; // 0x27f93f4
|
|
/* 027F93F4 */ cpu->r[5] = 0x00000001u;
|
|
/* 027F93F8 */ cpu->r[4] = cpu->r[29] + 0x00000014u;
|
|
/* 027F93FC */ cpu->r[3] = cpu->r[29];
|
|
/* 027F9400 */ Gambit_fn_028344F4(cpu);
|
|
/* 027F9404 */ _t3 = cpu->r[26] + 0xFFFF9804u;
|
|
/* 027F9404 */ cpu->r[5] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F9408 */ _t4 = cpu->r[29] + 0x00000018u;
|
|
/* 027F9408 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F940C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F940C */ rbrew_write32(cpu->mem, _t5, cpu->r[28]);
|
|
/* 027F9410 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9410 */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 027F9414 */ _t7 = cpu->r[9] + 0x00000014u;
|
|
/* 027F9414 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F9418 */ cpu->ctr = cpu->r[10];
|
|
/* 027F941C */ cpu->r[3] = cpu->r[29] + 0x00000014u;
|
|
/* 027F9420 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9424 */ _t8 = cpu->r[29] + 0x00000018u;
|
|
/* 027F9424 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F9428 */ _t9 = cpu->r[11] + 0x00000014u;
|
|
/* 027F9428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F942C */ cpu->ctr = cpu->r[0];
|
|
/* 027F9430 */ cpu->r[3] = cpu->r[29] + 0x00000014u;
|
|
/* 027F9434 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9438 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F9438 */ cpu->r[4] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F943C */ _t11 = cpu->r[4] + 0x00000014u;
|
|
/* 027F943C */ cpu->r[5] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F9440 */ cpu->ctr = cpu->r[5];
|
|
/* 027F9444 */ _t12 = cpu->r[29] + 0x00000014u;
|
|
/* 027F9444 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 027F9448 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F944C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9450 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9450 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027F9454 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[6]);
|
|
/* 027F9458 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9458 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027F9458 */ if (_t15) goto L_027F945C; else goto L_027F9478;
|
|
L_027F945C: ; // 0x27f945c
|
|
/* 027F945C */ cpu->r[25] = cpu->r[25] + 0xFFFFFFFFu;
|
|
/* 027F945C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 027F9460 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F9460 */ _t17 = _t16 & 0x00000001u;
|
|
/* 027F9460 */ if (_t17) goto L_027F93F4; else goto L_027F9464;
|
|
L_027F9464: ; // 0x27f9464
|
|
/* 027F9464 */ /* nop */
|
|
/* 027F9468 */ _t18 = cpu->r[1] + 0x0000003Cu;
|
|
/* 027F9468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F946C */ cpu->lr = cpu->r[0];
|
|
/* 027F9470 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 027F9474 */ return;
|
|
L_027F9478: ; // 0x27f9478
|
|
/* 027F9478 */ _t19 = cpu->r[29] + 0x00000014u;
|
|
/* 027F9478 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027F947C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 027F947C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027F9480 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 027F9484 */ cpu->ctr = cpu->r[24];
|
|
/* 027F9488 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_027F948C: ; // 0x27f948c
|
|
/* 027F948C */ _t21 = cpu->r[4] + 0x00000001u;
|
|
/* 027F948C */ cpu->r[0] = rbrew_read8(cpu->mem, _t21);
|
|
/* 027F948C */ cpu->r[4] = _t21;
|
|
/* 027F9490 */ _t22 = cpu->r[12] + 0x00000001u;
|
|
/* 027F9490 */ cpu->r[7] = rbrew_read8(cpu->mem, _t22);
|
|
/* 027F9490 */ cpu->r[12] = _t22;
|
|
/* 027F9494 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 027F9498 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9498 */ _t24 = _t23 & 0x00000001u;
|
|
/* 027F9498 */ if (_t24) goto L_027F949C; else goto L_027F94A8;
|
|
L_027F949C: ; // 0x27f949c
|
|
/* 027F949C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 027F94A0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F94A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 027F94A0 */ if (_t26) goto L_027F945C; else goto L_027F94A4;
|
|
L_027F94A4: ; // 0x27f94a4
|
|
/* 027F94A4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F94A4 */ _t27 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F94A4 */ _t28 = _t27 >> (0x00000002u & 31u);
|
|
/* 027F94A4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 027F94A4 */ if (_t29) goto L_027F948C; else goto L_027F94A8;
|
|
L_027F94A8: ; // 0x27f94a8
|
|
/* 027F94A8 */ _t30 = cpu->r[27] + 0xFFFF9800u;
|
|
/* 027F94A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F94AC */ _t31 = cpu->r[29] + 0x00000018u;
|
|
/* 027F94AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F94B0 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 027F94B0 */ rbrew_write32(cpu->mem, _t32, cpu->r[28]);
|
|
/* 027F94B4 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 027F94B4 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 027F94B8 */ _t34 = cpu->r[8] + 0x00000014u;
|
|
/* 027F94B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F94BC */ cpu->ctr = cpu->r[0];
|
|
/* 027F94C0 */ cpu->r[3] = cpu->r[29] + 0x00000014u;
|
|
/* 027F94C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F94C8 */ _t35 = cpu->r[29] + 0x00000018u;
|
|
/* 027F94C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F94CC */ _t36 = cpu->r[11] + 0x00000014u;
|
|
/* 027F94CC */ cpu->r[4] = rbrew_read32(cpu->mem, _t36);
|
|
/* 027F94D0 */ cpu->ctr = cpu->r[4];
|
|
/* 027F94D4 */ cpu->r[3] = cpu->r[29] + 0x00000014u;
|
|
/* 027F94D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F94DC */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 027F94DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 027F94E0 */ _t38 = cpu->r[6] + 0x00000014u;
|
|
/* 027F94E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027F94E4 */ cpu->ctr = cpu->r[8];
|
|
/* 027F94E8 */ _t39 = cpu->r[29] + 0x00000014u;
|
|
/* 027F94E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 027F94EC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F94F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F94F4 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 027F94F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 027F94F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 027F94FC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F94FC */ _t42 = _t41 & 0x00000001u;
|
|
/* 027F94FC */ if (_t42) goto L_027F9500; else goto L_027F950C;
|
|
L_027F9500: ; // 0x27f9500
|
|
/* 027F9500 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 027F9500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 027F9504 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 027F9504 */ _t44 = _t43 & 0x00000001u;
|
|
/* 027F9504 */ if (_t44) goto L_027F9508; else goto L_027F9464;
|
|
L_027F9508: ; // 0x27f9508
|
|
/* 027F9508 */ goto L_027F93F4;
|
|
L_027F950C: ; // 0x27f950c
|
|
/* 027F950C */ _t45 = cpu->r[29] + 0x00000014u;
|
|
/* 027F950C */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 027F9510 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 027F9510 */ cpu->r[7] = rbrew_read32(cpu->mem, _t46);
|
|
/* 027F9514 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 027F9518 */ cpu->ctr = cpu->r[24];
|
|
/* 027F951C */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_027F9520: ; // 0x27f9520
|
|
/* 027F9520 */ _t47 = cpu->r[9] + 0x00000001u;
|
|
/* 027F9520 */ cpu->r[0] = rbrew_read8(cpu->mem, _t47);
|
|
/* 027F9520 */ cpu->r[9] = _t47;
|
|
/* 027F9524 */ _t48 = cpu->r[7] + 0x00000001u;
|
|
/* 027F9524 */ cpu->r[11] = rbrew_read8(cpu->mem, _t48);
|
|
/* 027F9524 */ cpu->r[7] = _t48;
|
|
/* 027F9528 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 027F952C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F952C */ _t50 = _t49 & 0x00000001u;
|
|
/* 027F952C */ if (_t50) goto L_027F9530; else goto L_027F953C;
|
|
L_027F9530: ; // 0x27f9530
|
|
/* 027F9530 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 027F9534 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9534 */ _t52 = _t51 & 0x00000001u;
|
|
/* 027F9534 */ if (_t52) goto L_027F9500; else goto L_027F9538;
|
|
L_027F9538: ; // 0x27f9538
|
|
/* 027F9538 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F9538 */ _t53 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F9538 */ _t54 = _t53 >> (0x00000002u & 31u);
|
|
/* 027F9538 */ _t55 = _t54 & 0x00000001u;
|
|
/* 027F9538 */ if (_t55) goto L_027F9520; else goto L_027F953C;
|
|
L_027F953C: ; // 0x27f953c
|
|
/* 027F953C */ cpu->r[5] = 0x00000001u;
|
|
/* 027F9540 */ cpu->r[4] = cpu->r[29] + 0x00000014u;
|
|
/* 027F9544 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F9548 */ Gambit_fn_028344F4(cpu);
|
|
/* 027F954C */ _t56 = cpu->r[26] + 0xFFFF9804u;
|
|
/* 027F954C */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027F9550 */ _t57 = cpu->r[29] + 0x00000018u;
|
|
/* 027F9550 */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F9554 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F9554 */ rbrew_write32(cpu->mem, _t58, cpu->r[28]);
|
|
/* 027F9558 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9558 */ rbrew_write32(cpu->mem, _t59, cpu->r[5]);
|
|
/* 027F955C */ _t60 = cpu->r[9] + 0x00000014u;
|
|
/* 027F955C */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 027F9560 */ cpu->ctr = cpu->r[10];
|
|
/* 027F9564 */ cpu->r[3] = cpu->r[29] + 0x00000014u;
|
|
/* 027F9568 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F956C */ _t61 = cpu->r[29] + 0x00000018u;
|
|
/* 027F956C */ cpu->r[11] = rbrew_read32(cpu->mem, _t61);
|
|
/* 027F9570 */ _t62 = cpu->r[11] + 0x00000014u;
|
|
/* 027F9570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 027F9574 */ cpu->ctr = cpu->r[0];
|
|
/* 027F9578 */ cpu->r[3] = cpu->r[29] + 0x00000014u;
|
|
/* 027F957C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9580 */ _t63 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F9580 */ cpu->r[4] = rbrew_read32(cpu->mem, _t63);
|
|
/* 027F9584 */ _t64 = cpu->r[4] + 0x00000014u;
|
|
/* 027F9584 */ cpu->r[5] = rbrew_read32(cpu->mem, _t64);
|
|
/* 027F9588 */ cpu->ctr = cpu->r[5];
|
|
/* 027F958C */ _t65 = cpu->r[29] + 0x00000014u;
|
|
/* 027F958C */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 027F9590 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F9594 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9598 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9598 */ cpu->r[6] = rbrew_read32(cpu->mem, _t66);
|
|
/* 027F959C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[6]);
|
|
/* 027F95A0 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F95A0 */ _t68 = _t67 & 0x00000001u;
|
|
/* 027F95A0 */ if (_t68) goto L_027F945C; else goto L_027F95A4;
|
|
L_027F95A4: ; // 0x27f95a4
|
|
/* 027F95A4 */ goto L_027F9478;
|
|
}
|
|
|
|
// fn_027F95A8 @ 0x27f95a8
|
|
void Gambit_fn_027F95A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_027F95A8: ; // 0x27f95a8
|
|
/* 027F95A8 */ cpu->r[0] = cpu->lr;
|
|
/* 027F95AC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F95AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F95AC */ cpu->r[1] = _t0;
|
|
/* 027F95B0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F95B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F95B4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F95B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F95B8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 027F95B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 027F95BC */ cpu->r[28] = cpu->r[4];
|
|
/* 027F95C0 */ cpu->r[30] = cpu->r[6];
|
|
/* 027F95C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F95C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F95C8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F95C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F95CC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F95CC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F95D0 */ cpu->r[29] = cpu->r[5];
|
|
/* 027F95D4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F95D4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F95D4 */ if (_t7) goto L_027F95D8; else goto L_027F95E8;
|
|
L_027F95D8: ; // 0x27f95d8
|
|
/* 027F95D8 */ cpu->r[3] = 0x00000138u;
|
|
/* 027F95DC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F95E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F95E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F95E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F95E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F95E4 */ if (_t9) goto L_027F962C; else goto L_027F95E8;
|
|
L_027F95E8: ; // 0x27f95e8
|
|
/* 027F95E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F95EC */ Gambit_fn_027F8FCC(cpu);
|
|
/* 027F95F0 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F95F4 */ cpu->r[3] = cpu->r[31] + 0x00000128u;
|
|
/* 027F95F8 */ cpu->r[4] = cpu->r[28];
|
|
/* 027F95FC */ cpu->r[0] = cpu->r[0] + 0x00000D20u;
|
|
/* 027F9600 */ cpu->r[5] = cpu->r[29];
|
|
/* 027F9604 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F9604 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 027F9608 */ Gambit_fn_02833DEC(cpu);
|
|
/* 027F960C */ cpu->r[12] = cpu->r[31] + 0x00000128u;
|
|
/* 027F9610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F9614 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 027F9614 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 027F9618 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F961C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F961C */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F961C */ if (_t13) goto L_027F9628; else goto L_027F9620;
|
|
L_027F9620: ; // 0x27f9620
|
|
/* 027F9620 */ Gambit_fn_027F912C(cpu);
|
|
/* 027F9624 */ goto L_027F962C;
|
|
L_027F9628: ; // 0x27f9628
|
|
/* 027F9628 */ Gambit_fn_027F8F90(cpu);
|
|
L_027F962C: ; // 0x27f962c
|
|
/* 027F962C */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 027F962C */ cpu->r[28] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F9630 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F9630 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F9634 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F9634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F9638 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F963C */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 027F963C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F9640 */ cpu->lr = cpu->r[0];
|
|
/* 027F9644 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9644 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F9648 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F964C */ return;
|
|
}
|
|
|
|
// fn_027F95AC @ 0x27f95ac
|
|
void Gambit_fn_027F95AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_027F95AC: ; // 0x27f95ac
|
|
/* 027F95AC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027F95AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F95AC */ cpu->r[1] = _t0;
|
|
/* 027F95B0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 027F95B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 027F95B4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F95B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 027F95B8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 027F95B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 027F95BC */ cpu->r[28] = cpu->r[4];
|
|
/* 027F95C0 */ cpu->r[30] = cpu->r[6];
|
|
/* 027F95C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F95C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F95C8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F95C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 027F95CC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F95CC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 027F95D0 */ cpu->r[29] = cpu->r[5];
|
|
/* 027F95D4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F95D4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 027F95D4 */ if (_t7) goto L_027F95D8; else goto L_027F95E8;
|
|
L_027F95D8: ; // 0x27f95d8
|
|
/* 027F95D8 */ cpu->r[3] = 0x00000138u;
|
|
/* 027F95DC */ Gambit_fn_02801A78(cpu);
|
|
/* 027F95E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F95E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 027F95E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F95E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 027F95E4 */ if (_t9) goto L_027F962C; else goto L_027F95E8;
|
|
L_027F95E8: ; // 0x27f95e8
|
|
/* 027F95E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F95EC */ Gambit_fn_027F8FCC(cpu);
|
|
/* 027F95F0 */ cpu->r[0] = 0x10110000u;
|
|
/* 027F95F4 */ cpu->r[3] = cpu->r[31] + 0x00000128u;
|
|
/* 027F95F8 */ cpu->r[4] = cpu->r[28];
|
|
/* 027F95FC */ cpu->r[0] = cpu->r[0] + 0x00000D20u;
|
|
/* 027F9600 */ cpu->r[5] = cpu->r[29];
|
|
/* 027F9604 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 027F9604 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 027F9608 */ Gambit_fn_02833DEC(cpu);
|
|
/* 027F960C */ cpu->r[12] = cpu->r[31] + 0x00000128u;
|
|
/* 027F9610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 027F9614 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 027F9614 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 027F9618 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F961C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F961C */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F961C */ if (_t13) goto L_027F9628; else goto L_027F9620;
|
|
L_027F9620: ; // 0x27f9620
|
|
/* 027F9620 */ Gambit_fn_027F912C(cpu);
|
|
/* 027F9624 */ goto L_027F962C;
|
|
L_027F9628: ; // 0x27f9628
|
|
/* 027F9628 */ Gambit_fn_027F8F90(cpu);
|
|
L_027F962C: ; // 0x27f962c
|
|
/* 027F962C */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 027F962C */ cpu->r[28] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F9630 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F9630 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F9634 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F9634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027F9638 */ cpu->r[3] = cpu->r[31];
|
|
/* 027F963C */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 027F963C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 027F9640 */ cpu->lr = cpu->r[0];
|
|
/* 027F9644 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9644 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 027F9648 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027F964C */ return;
|
|
}
|
|
|
|
// fn_027F9650 @ 0x27f9650
|
|
void Gambit_fn_027F9650(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57;
|
|
|
|
L_027F9650: ; // 0x27f9650
|
|
/* 027F9650 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 027F9650 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F9650 */ cpu->r[1] = _t0;
|
|
/* 027F9654 */ /* nop */
|
|
/* 027F9658 */ cpu->r[0] = cpu->lr;
|
|
/* 027F965C */ cpu->r[26] = 0x10110000u;
|
|
/* 027F9660 */ cpu->r[30] = cpu->r[6];
|
|
/* 027F9664 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 027F9664 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 027F9668 */ cpu->r[29] = cpu->r[5];
|
|
/* 027F966C */ cpu->r[6] = 0x10110000u;
|
|
/* 027F9670 */ cpu->r[26] = cpu->r[26] + 0x00000C2Cu;
|
|
/* 027F9674 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F9674 */ rbrew_write32(cpu->mem, _t2, cpu->r[26]);
|
|
/* 027F9678 */ cpu->r[6] = cpu->r[6] + 0x00000D00u;
|
|
/* 027F967C */ _t3 = cpu->r[29] + 0x00000004u;
|
|
/* 027F967C */ cpu->r[7] = rbrew_read32(cpu->mem, _t3);
|
|
/* 027F9680 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 027F9680 */ rbrew_write32(cpu->mem, _t4, cpu->r[6]);
|
|
/* 027F9684 */ _t5 = cpu->r[7] + 0x00000014u;
|
|
/* 027F9684 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F9688 */ cpu->r[27] = cpu->r[3];
|
|
/* 027F968C */ cpu->ctr = cpu->r[9];
|
|
/* 027F9690 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F9694 */ cpu->r[28] = cpu->r[4];
|
|
/* 027F9698 */ cpu->r[25] = 0x00000001u;
|
|
/* 027F969C */ cpu->r[8] = 0x00000000u;
|
|
/* 027F96A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F96A4 */ _t6 = cpu->r[29] + 0x00000004u;
|
|
/* 027F96A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 027F96A8 */ _t7 = cpu->r[10] + 0x00000014u;
|
|
/* 027F96A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027F96AC */ cpu->ctr = cpu->r[11];
|
|
/* 027F96B0 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F96B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F96B8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F96B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027F96BC */ _t9 = cpu->r[12] + 0x00000014u;
|
|
/* 027F96BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 027F96C0 */ cpu->ctr = cpu->r[0];
|
|
/* 027F96C4 */ _t10 = cpu->r[29] + 0x00000000u;
|
|
/* 027F96C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 027F96C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027F96CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F96D0 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 027F96D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11);
|
|
/* 027F96D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[5]);
|
|
/* 027F96D8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F96D8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 027F96D8 */ if (_t13) goto L_027F97B4; else goto L_027F96DC;
|
|
L_027F96DC: ; // 0x27f96dc
|
|
/* 027F96DC */ cpu->r[6] = 0x00080000u;
|
|
/* 027F96E0 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 027F96E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027F96E4 */ cpu->r[31] = 0x10110000u;
|
|
/* 027F96E8 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 027F96EC */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 027F96EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027F96F0 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 027F96F4 */ cpu->ctr = cpu->r[6];
|
|
/* 027F96F8 */ _t16 = cpu->r[31] + 0x00007399u;
|
|
/* 027F96F8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t16);
|
|
/* 027F96FC */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_027F9700: ; // 0x27f9700
|
|
/* 027F9700 */ _t17 = cpu->r[10] + 0x00000001u;
|
|
/* 027F9700 */ cpu->r[12] = rbrew_read8(cpu->mem, _t17);
|
|
/* 027F9700 */ cpu->r[10] = _t17;
|
|
/* 027F9704 */ _t18 = cpu->r[9] + 0x00000001u;
|
|
/* 027F9704 */ cpu->r[6] = rbrew_read8(cpu->mem, _t18);
|
|
/* 027F9704 */ cpu->r[9] = _t18;
|
|
/* 027F9708 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[6]);
|
|
/* 027F970C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F970C */ _t20 = _t19 & 0x00000001u;
|
|
/* 027F970C */ if (_t20) goto L_027F9710; else goto L_027F971C;
|
|
L_027F9710: ; // 0x27f9710
|
|
/* 027F9710 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 027F9714 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9714 */ _t22 = _t21 & 0x00000001u;
|
|
/* 027F9714 */ if (_t22) goto L_027F97B4; else goto L_027F9718;
|
|
L_027F9718: ; // 0x27f9718
|
|
/* 027F9718 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F9718 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F9718 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 027F9718 */ _t25 = _t24 & 0x00000001u;
|
|
/* 027F9718 */ if (_t25) goto L_027F9700; else goto L_027F971C;
|
|
L_027F971C: ; // 0x27f971c
|
|
/* 027F971C */ cpu->r[7] = 0x10110000u;
|
|
/* 027F9720 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9720 */ rbrew_write32(cpu->mem, _t26, cpu->r[26]);
|
|
/* 027F9724 */ cpu->r[7] = cpu->r[7] + 0x00000D02u;
|
|
/* 027F9728 */ _t27 = cpu->r[29] + 0x00000004u;
|
|
/* 027F9728 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 027F972C */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 027F972C */ rbrew_write32(cpu->mem, _t28, cpu->r[7]);
|
|
/* 027F9730 */ _t29 = cpu->r[8] + 0x00000014u;
|
|
/* 027F9730 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 027F9734 */ cpu->ctr = cpu->r[9];
|
|
/* 027F9738 */ cpu->r[8] = 0x00000001u;
|
|
/* 027F973C */ cpu->r[3] = cpu->r[29];
|
|
/* 027F9740 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9744 */ _t30 = cpu->r[29] + 0x00000004u;
|
|
/* 027F9744 */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
/* 027F9748 */ _t31 = cpu->r[10] + 0x00000014u;
|
|
/* 027F9748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 027F974C */ cpu->ctr = cpu->r[0];
|
|
/* 027F9750 */ cpu->r[3] = cpu->r[29];
|
|
/* 027F9754 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9758 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 027F9758 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 027F975C */ _t33 = cpu->r[12] + 0x00000014u;
|
|
/* 027F975C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 027F9760 */ cpu->ctr = cpu->r[0];
|
|
/* 027F9764 */ _t34 = cpu->r[29] + 0x00000000u;
|
|
/* 027F9764 */ cpu->r[24] = rbrew_read32(cpu->mem, _t34);
|
|
/* 027F9768 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 027F976C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9770 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 027F9770 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 027F9774 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[11]);
|
|
/* 027F9778 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F9778 */ _t37 = _t36 & 0x00000001u;
|
|
/* 027F9778 */ if (_t37) goto L_027F97B4; else goto L_027F977C;
|
|
L_027F977C: ; // 0x27f977c
|
|
/* 027F977C */ cpu->r[0] = 0x00080000u;
|
|
/* 027F9780 */ _t38 = cpu->r[29] + 0x00000000u;
|
|
/* 027F9780 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 027F9784 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 027F9788 */ cpu->r[7] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 027F978C */ cpu->ctr = cpu->r[0];
|
|
/* 027F9790 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_027F9794: ; // 0x27f9794
|
|
/* 027F9794 */ _t39 = cpu->r[8] + 0x00000001u;
|
|
/* 027F9794 */ cpu->r[0] = rbrew_read8(cpu->mem, _t39);
|
|
/* 027F9794 */ cpu->r[8] = _t39;
|
|
/* 027F9798 */ _t40 = cpu->r[7] + 0x00000001u;
|
|
/* 027F9798 */ cpu->r[6] = rbrew_read8(cpu->mem, _t40);
|
|
/* 027F9798 */ cpu->r[7] = _t40;
|
|
/* 027F979C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 027F97A0 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F97A0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 027F97A0 */ if (_t42) goto L_027F97A4; else goto L_027F97B0;
|
|
L_027F97A4: ; // 0x27f97a4
|
|
/* 027F97A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 027F97A8 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F97A8 */ _t44 = _t43 & 0x00000001u;
|
|
/* 027F97A8 */ if (_t44) goto L_027F97B4; else goto L_027F97AC;
|
|
L_027F97AC: ; // 0x27f97ac
|
|
/* 027F97AC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 027F97AC */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 027F97AC */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 027F97AC */ _t47 = _t46 & 0x00000001u;
|
|
/* 027F97AC */ if (_t47) goto L_027F9794; else goto L_027F97B0;
|
|
L_027F97B0: ; // 0x27f97b0
|
|
/* 027F97B0 */ cpu->r[25] = 0x00000000u;
|
|
L_027F97B4: ; // 0x27f97b4
|
|
/* 027F97B4 */ cpu->r[3] = cpu->r[27];
|
|
/* 027F97B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 027F97BC */ cpu->r[5] = cpu->r[29];
|
|
/* 027F97C0 */ cpu->r[4] = cpu->r[28];
|
|
/* 027F97C4 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027F97C4 */ _t49 = _t48 & 0x00000001u;
|
|
/* 027F97C4 */ if (_t49) goto L_027F97EC; else goto L_027F97C8;
|
|
L_027F97C8: ; // 0x27f97c8
|
|
/* 027F97C8 */ _t50 = cpu->r[27] + 0x00000000u;
|
|
/* 027F97C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 027F97CC */ _t51 = cpu->r[9] + 0x000000CCu;
|
|
/* 027F97CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 027F97D0 */ cpu->ctr = cpu->r[0];
|
|
/* 027F97D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F97D8 */ /* nop */
|
|
/* 027F97DC */ _t52 = cpu->r[1] + 0x00000044u;
|
|
/* 027F97DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 027F97E0 */ cpu->lr = cpu->r[0];
|
|
/* 027F97E4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F97E8 */ return;
|
|
L_027F97EC: ; // 0x27f97ec
|
|
/* 027F97EC */ cpu->r[6] = cpu->r[30];
|
|
/* 027F97F0 */ Gambit_fn_02836138(cpu);
|
|
/* 027F97F4 */ cpu->r[12] = 0x10110000u;
|
|
/* 027F97F8 */ _t53 = cpu->r[27] + 0x00000000u;
|
|
/* 027F97F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t53);
|
|
/* 027F97FC */ cpu->r[12] = cpu->r[12] + 0x00000D04u;
|
|
/* 027F9800 */ _t54 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027F9800 */ rbrew_write32(cpu->mem, _t54, cpu->r[26]);
|
|
/* 027F9804 */ _t55 = cpu->r[1] + 0x00000018u;
|
|
/* 027F9804 */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
/* 027F9808 */ _t56 = cpu->r[11] + 0x000000CCu;
|
|
/* 027F9808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 027F980C */ cpu->ctr = cpu->r[0];
|
|
/* 027F9810 */ cpu->r[3] = cpu->r[27];
|
|
/* 027F9814 */ cpu->r[4] = cpu->r[28];
|
|
/* 027F9818 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 027F981C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 027F9820 */ /* nop */
|
|
/* 027F9824 */ _t57 = cpu->r[1] + 0x00000044u;
|
|
/* 027F9824 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 027F9828 */ cpu->lr = cpu->r[0];
|
|
/* 027F982C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 027F9830 */ return;
|
|
}
|
|
|