mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
40077 lines
2.1 MiB
Plaintext
40077 lines
2.1 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_022B19BC @ 0x22b19bc
|
|
void Gambit_fn_022B19BC(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_022B19BC: ; // 0x22b19bc
|
|
/* 022B19BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B19C0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B19C0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B19C0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B19C0 */ goto L_022B19C4;
|
|
L_022B19C4: ; // 0x22b19c4
|
|
/* 022B19C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B19C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B19C8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B19C8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B19C8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B19C8 */ goto L_022B19CC;
|
|
L_022B19CC: ; // 0x22b19cc
|
|
/* 022B19CC */ 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_022B19D0 @ 0x22b19d0
|
|
void Gambit_fn_022B19D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022B19D0: ; // 0x22b19d0
|
|
/* 022B19D0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 022B19D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B19D4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 022B19D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B19D8 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 022B19DC */ cpu->r[11] = 0x10110000u;
|
|
/* 022B19E0 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 022B19E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022B19E4 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022B19E4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 022B19E8 */ return;
|
|
}
|
|
|
|
// fn_022B19F8 @ 0x22b19f8
|
|
void Gambit_fn_022B19F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022B19F8: ; // 0x22b19f8
|
|
/* 022B19F8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B19F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B19F8 */ cpu->r[1] = _t0;
|
|
/* 022B19FC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B19FC */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B19FC */ if (_t2) goto L_022B1A00; else goto L_022B1A08;
|
|
L_022B1A00: ; // 0x22b1a00
|
|
/* 022B1A00 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022B1A04 */ Gambit_fn_02801A78(cpu);
|
|
L_022B1A08: ; // 0x22b1a08
|
|
/* 022B1A08 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1A08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B1A0C */ cpu->lr = cpu->r[0];
|
|
/* 022B1A10 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B1A14 */ return;
|
|
}
|
|
|
|
// fn_022B1A18 @ 0x22b1a18
|
|
void Gambit_fn_022B1A18(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_022B1A18: ; // 0x22b1a18
|
|
/* 022B1A18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B1A1C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1A1C */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B1A1C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B1A1C */ goto L_022B1A20;
|
|
L_022B1A20: ; // 0x22b1a20
|
|
/* 022B1A20 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B1A20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B1A24 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1A24 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B1A24 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B1A24 */ goto L_022B1A28;
|
|
L_022B1A28: ; // 0x22b1a28
|
|
/* 022B1A28 */ 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_022B1A2C @ 0x22b1a2c
|
|
void Gambit_fn_022B1A2C(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_022B1A2C: ; // 0x22b1a2c
|
|
/* 022B1A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B1A30 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1A30 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B1A30 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B1A30 */ goto L_022B1A34;
|
|
L_022B1A34: ; // 0x22b1a34
|
|
/* 022B1A34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B1A34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B1A38 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1A38 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B1A38 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B1A38 */ goto L_022B1A3C;
|
|
L_022B1A3C: ; // 0x22b1a3c
|
|
/* 022B1A3C */ 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_022B1A40 @ 0x22b1a40
|
|
void Gambit_fn_022B1A40(CPUState* cpu) {
|
|
L_022B1A40: ; // 0x22b1a40
|
|
/* 022B1A40 */ return;
|
|
}
|
|
|
|
// fn_022B1A44 @ 0x22b1a44
|
|
void Gambit_fn_022B1A44(CPUState* cpu) {
|
|
L_022B1A44: ; // 0x22b1a44
|
|
/* 022B1A44 */ return;
|
|
}
|
|
|
|
// fn_022B1A48 @ 0x22b1a48
|
|
void Gambit_fn_022B1A48(CPUState* cpu) {
|
|
L_022B1A48: ; // 0x22b1a48
|
|
/* 022B1A48 */ return;
|
|
}
|
|
|
|
// fn_022B1A4C @ 0x22b1a4c
|
|
void Gambit_fn_022B1A4C(CPUState* cpu) {
|
|
L_022B1A4C: ; // 0x22b1a4c
|
|
/* 022B1A4C */ return;
|
|
}
|
|
|
|
// fn_022B1A50 @ 0x22b1a50
|
|
void Gambit_fn_022B1A50(CPUState* cpu) {
|
|
L_022B1A50: ; // 0x22b1a50
|
|
/* 022B1A50 */ return;
|
|
}
|
|
|
|
// fn_022B1A54 @ 0x22b1a54
|
|
void Gambit_fn_022B1A54(CPUState* cpu) {
|
|
L_022B1A54: ; // 0x22b1a54
|
|
/* 022B1A54 */ return;
|
|
}
|
|
|
|
// fn_022B1A58 @ 0x22b1a58
|
|
void Gambit_fn_022B1A58(CPUState* cpu) {
|
|
L_022B1A58: ; // 0x22b1a58
|
|
/* 022B1A58 */ return;
|
|
}
|
|
|
|
// fn_022B1A5C @ 0x22b1a5c
|
|
void Gambit_fn_022B1A5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022B1A5C: ; // 0x22b1a5c
|
|
/* 022B1A5C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022B1A5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1A60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B1A64 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1A64 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B1A64 */ if (_t2) goto L_022B1A70; else goto L_022B1A68;
|
|
L_022B1A68: ; // 0x22b1a68
|
|
/* 022B1A68 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 022B1A6C */ return;
|
|
L_022B1A70: ; // 0x22b1a70
|
|
/* 022B1A70 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1A74 */ return;
|
|
}
|
|
|
|
// fn_022B1A78 @ 0x22b1a78
|
|
void Gambit_fn_022B1A78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022B1A78: ; // 0x22b1a78
|
|
/* 022B1A78 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022B1A78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B1A80 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1A80 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B1A80 */ if (_t2) goto L_022B1A8C; else goto L_022B1A84;
|
|
L_022B1A84: ; // 0x22b1a84
|
|
/* 022B1A84 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 022B1A88 */ return;
|
|
L_022B1A8C: ; // 0x22b1a8c
|
|
/* 022B1A8C */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1A90 */ return;
|
|
}
|
|
|
|
// fn_022B1A94 @ 0x22b1a94
|
|
void Gambit_fn_022B1A94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B1A94: ; // 0x22b1a94
|
|
/* 022B1A94 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B1A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1A98 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B1A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B1A9C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1A9C */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B1A9C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022B1A9C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B1A9C */ goto L_022B1AA0;
|
|
L_022B1AA0: ; // 0x22b1aa0
|
|
/* 022B1AA0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1AA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1AA4 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 022B1AA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1AA8 */ cpu->ctr = cpu->r[0];
|
|
/* 022B1AAC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B1AB0 @ 0x22b1ab0
|
|
void Gambit_fn_022B1AB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B1AB0: ; // 0x22b1ab0
|
|
/* 022B1AB0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B1AB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1AB4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B1AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B1AB8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1AB8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B1AB8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022B1AB8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B1AB8 */ goto L_022B1ABC;
|
|
L_022B1ABC: ; // 0x22b1abc
|
|
/* 022B1ABC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1ABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1AC0 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 022B1AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1AC4 */ cpu->ctr = cpu->r[0];
|
|
/* 022B1AC8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B1ACC @ 0x22b1acc
|
|
void Gambit_fn_022B1ACC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B1ACC: ; // 0x22b1acc
|
|
/* 022B1ACC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B1ACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1AD0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B1AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B1AD4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1AD4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B1AD4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022B1AD4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B1AD4 */ goto L_022B1AD8;
|
|
L_022B1AD8: ; // 0x22b1ad8
|
|
/* 022B1AD8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1AD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1ADC */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 022B1ADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1AE0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B1AE4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B1AE8 @ 0x22b1ae8
|
|
void Gambit_fn_022B1AE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B1AE8: ; // 0x22b1ae8
|
|
/* 022B1AE8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1AE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1AEC */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022B1AEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B1AF0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B1AF4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B1AF8 @ 0x22b1af8
|
|
void Gambit_fn_022B1AF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022B1AF8: ; // 0x22b1af8
|
|
/* 022B1AF8 */ cpu->r[0] = cpu->lr;
|
|
/* 022B1AFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B1AFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1AFC */ cpu->r[1] = _t0;
|
|
/* 022B1B00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1B00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B1B04 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1B08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1B08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1B0C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B1B0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B1B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022B1B14 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1B14 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B1B14 */ if (_t5) goto L_022B1B18; else goto L_022B1B34;
|
|
L_022B1B18: ; // 0x22b1b18
|
|
/* 022B1B18 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022B1B18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B1B1C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022B1B1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B1B20 */ cpu->ctr = cpu->r[0];
|
|
/* 022B1B24 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1B28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B1B2C */ cpu->r[0] = 0x00000002u;
|
|
/* 022B1B30 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B1B30 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022B1B34: ; // 0x22b1b34
|
|
/* 022B1B34 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1B34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B1B38 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1B38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B1B3C */ cpu->lr = cpu->r[0];
|
|
/* 022B1B40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B1B44 */ return;
|
|
}
|
|
|
|
// fn_022B1AFC @ 0x22b1afc
|
|
void Gambit_fn_022B1AFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022B1AFC: ; // 0x22b1afc
|
|
/* 022B1AFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B1AFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1AFC */ cpu->r[1] = _t0;
|
|
/* 022B1B00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1B00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B1B04 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1B08 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1B08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1B0C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B1B0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B1B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022B1B14 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1B14 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B1B14 */ if (_t5) goto L_022B1B18; else goto L_022B1B34;
|
|
L_022B1B18: ; // 0x22b1b18
|
|
/* 022B1B18 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022B1B18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B1B1C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022B1B1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B1B20 */ cpu->ctr = cpu->r[0];
|
|
/* 022B1B24 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1B28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B1B2C */ cpu->r[0] = 0x00000002u;
|
|
/* 022B1B30 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B1B30 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022B1B34: ; // 0x22b1b34
|
|
/* 022B1B34 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1B34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B1B38 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1B38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B1B3C */ cpu->lr = cpu->r[0];
|
|
/* 022B1B40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B1B44 */ return;
|
|
}
|
|
|
|
// fn_022B1B50 @ 0x22b1b50
|
|
void Gambit_fn_022B1B50(CPUState* cpu) {
|
|
L_022B1B50: ; // 0x22b1b50
|
|
/* 022B1B50 */ return;
|
|
}
|
|
|
|
// fn_022B1B54 @ 0x22b1b54
|
|
void Gambit_fn_022B1B54(CPUState* cpu) {
|
|
L_022B1B54: ; // 0x22b1b54
|
|
/* 022B1B54 */ return;
|
|
}
|
|
|
|
// fn_022B1B58 @ 0x22b1b58
|
|
void Gambit_fn_022B1B58(CPUState* cpu) {
|
|
L_022B1B58: ; // 0x22b1b58
|
|
/* 022B1B58 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1B5C */ return;
|
|
}
|
|
|
|
// fn_022B1B60 @ 0x22b1b60
|
|
void Gambit_fn_022B1B60(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_022B1B60: ; // 0x22b1b60
|
|
/* 022B1B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B1B64 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1B64 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B1B64 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B1B64 */ goto L_022B1B68;
|
|
L_022B1B68: ; // 0x22b1b68
|
|
/* 022B1B68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B1B68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B1B6C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1B6C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B1B6C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B1B6C */ goto L_022B1B70;
|
|
L_022B1B70: ; // 0x22b1b70
|
|
/* 022B1B70 */ 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_022B1B74 @ 0x22b1b74
|
|
void Gambit_fn_022B1B74(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B1B74: ; // 0x22b1b74
|
|
/* 022B1B74 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1B74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1B78 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 022B1B78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B1B7C */ cpu->ctr = cpu->r[0];
|
|
/* 022B1B80 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B1B84 @ 0x22b1b84
|
|
void Gambit_fn_022B1B84(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B1B84: ; // 0x22b1b84
|
|
/* 022B1B84 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1B84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1B88 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022B1B88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B1B8C */ cpu->ctr = cpu->r[0];
|
|
/* 022B1B90 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B1B94 @ 0x22b1b94
|
|
void Gambit_fn_022B1B94(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B1B94: ; // 0x22b1b94
|
|
/* 022B1B94 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1B94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1B98 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022B1B98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B1B9C */ cpu->ctr = cpu->r[0];
|
|
/* 022B1BA0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B1BA4 @ 0x22b1ba4
|
|
void Gambit_fn_022B1BA4(CPUState* cpu) {
|
|
L_022B1BA4: ; // 0x22b1ba4
|
|
/* 022B1BA4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1BA8 */ return;
|
|
}
|
|
|
|
// fn_022B1BAC @ 0x22b1bac
|
|
void Gambit_fn_022B1BAC(CPUState* cpu) {
|
|
L_022B1BAC: ; // 0x22b1bac
|
|
/* 022B1BAC */ return;
|
|
}
|
|
|
|
// fn_022B1BB0 @ 0x22b1bb0
|
|
void Gambit_fn_022B1BB0(CPUState* cpu) {
|
|
L_022B1BB0: ; // 0x22b1bb0
|
|
/* 022B1BB0 */ return;
|
|
}
|
|
|
|
// fn_022B1BB4 @ 0x22b1bb4
|
|
void Gambit_fn_022B1BB4(CPUState* cpu) {
|
|
L_022B1BB4: ; // 0x22b1bb4
|
|
/* 022B1BB4 */ return;
|
|
}
|
|
|
|
// fn_022B1BB8 @ 0x22b1bb8
|
|
void Gambit_fn_022B1BB8(CPUState* cpu) {
|
|
L_022B1BB8: ; // 0x22b1bb8
|
|
/* 022B1BB8 */ return;
|
|
}
|
|
|
|
// fn_022B1BBC @ 0x22b1bbc
|
|
void Gambit_fn_022B1BBC(CPUState* cpu) {
|
|
L_022B1BBC: ; // 0x22b1bbc
|
|
/* 022B1BBC */ return;
|
|
}
|
|
|
|
// fn_022B1BC0 @ 0x22b1bc0
|
|
void Gambit_fn_022B1BC0(CPUState* cpu) {
|
|
L_022B1BC0: ; // 0x22b1bc0
|
|
/* 022B1BC0 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1BC4 */ return;
|
|
}
|
|
|
|
// fn_022B1BC8 @ 0x22b1bc8
|
|
void Gambit_fn_022B1BC8(CPUState* cpu) {
|
|
L_022B1BC8: ; // 0x22b1bc8
|
|
/* 022B1BC8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1BCC */ return;
|
|
}
|
|
|
|
// fn_022B1BD0 @ 0x22b1bd0
|
|
void Gambit_fn_022B1BD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022B1BD0: ; // 0x22b1bd0
|
|
/* 022B1BD0 */ cpu->r[0] = cpu->lr;
|
|
/* 022B1BD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B1BD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1BD4 */ cpu->r[1] = _t0;
|
|
/* 022B1BD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1BD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B1BDC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B1BDC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1BE0 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022B1BE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B1BE4 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022B1BE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1BE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1BEC */ cpu->ctr = cpu->r[9];
|
|
/* 022B1BF0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B1BF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B1BF8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1BF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1BFC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B1BFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B1C00 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022B1C00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B1C04 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022B1C04 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022B1C08 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022B1C08 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022B1C0C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B1C0C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022B1C10 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B1C10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B1C14 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1C14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B1C18 */ cpu->lr = cpu->r[0];
|
|
/* 022B1C1C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B1C20 */ return;
|
|
}
|
|
|
|
// fn_022B1BD4 @ 0x22b1bd4
|
|
void Gambit_fn_022B1BD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022B1BD4: ; // 0x22b1bd4
|
|
/* 022B1BD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B1BD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1BD4 */ cpu->r[1] = _t0;
|
|
/* 022B1BD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1BD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B1BDC */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B1BDC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1BE0 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022B1BE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B1BE4 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022B1BE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1BE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1BEC */ cpu->ctr = cpu->r[9];
|
|
/* 022B1BF0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B1BF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B1BF8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1BF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1BFC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B1BFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B1C00 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022B1C00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B1C04 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022B1C04 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022B1C08 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022B1C08 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022B1C0C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B1C0C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022B1C10 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B1C10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B1C14 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1C14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B1C18 */ cpu->lr = cpu->r[0];
|
|
/* 022B1C1C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B1C20 */ return;
|
|
}
|
|
|
|
// fn_022B1C24 @ 0x22b1c24
|
|
void Gambit_fn_022B1C24(CPUState* cpu) {
|
|
L_022B1C24: ; // 0x22b1c24
|
|
/* 022B1C24 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1C28 */ return;
|
|
}
|
|
|
|
// fn_022B1C2C @ 0x22b1c2c
|
|
void Gambit_fn_022B1C2C(CPUState* cpu) {
|
|
L_022B1C2C: ; // 0x22b1c2c
|
|
/* 022B1C2C */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1C30 */ return;
|
|
}
|
|
|
|
// fn_022B1C34 @ 0x22b1c34
|
|
void Gambit_fn_022B1C34(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B1C34: ; // 0x22b1c34
|
|
/* 022B1C34 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1C38 */ _t0 = cpu->r[12] + 0x000030BCu;
|
|
/* 022B1C38 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B1C3C */ return;
|
|
}
|
|
|
|
// fn_022B1C40 @ 0x22b1c40
|
|
void Gambit_fn_022B1C40(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B1C40: ; // 0x22b1c40
|
|
/* 022B1C40 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1C40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1C44 */ _t1 = cpu->r[12] + 0x000002B4u;
|
|
/* 022B1C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B1C48 */ cpu->ctr = cpu->r[0];
|
|
/* 022B1C4C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B1C50 @ 0x22b1c50
|
|
void Gambit_fn_022B1C50(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B1C50: ; // 0x22b1c50
|
|
/* 022B1C50 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1C50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1C54 */ _t1 = cpu->r[12] + 0x000002C4u;
|
|
/* 022B1C54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B1C58 */ cpu->ctr = cpu->r[0];
|
|
/* 022B1C5C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B1C60 @ 0x22b1c60
|
|
void Gambit_fn_022B1C60(CPUState* cpu) {
|
|
L_022B1C60: ; // 0x22b1c60
|
|
/* 022B1C60 */ return;
|
|
}
|
|
|
|
// fn_022B1C64 @ 0x22b1c64
|
|
void Gambit_fn_022B1C64(CPUState* cpu) {
|
|
L_022B1C64: ; // 0x22b1c64
|
|
/* 022B1C64 */ return;
|
|
}
|
|
|
|
// fn_022B1C68 @ 0x22b1c68
|
|
void Gambit_fn_022B1C68(CPUState* cpu) {
|
|
L_022B1C68: ; // 0x22b1c68
|
|
/* 022B1C68 */ return;
|
|
}
|
|
|
|
// fn_022B1C6C @ 0x22b1c6c
|
|
void Gambit_fn_022B1C6C(CPUState* cpu) {
|
|
L_022B1C6C: ; // 0x22b1c6c
|
|
/* 022B1C6C */ return;
|
|
}
|
|
|
|
// fn_022B1C70 @ 0x22b1c70
|
|
void Gambit_fn_022B1C70(CPUState* cpu) {
|
|
L_022B1C70: ; // 0x22b1c70
|
|
/* 022B1C70 */ return;
|
|
}
|
|
|
|
// fn_022B1C74 @ 0x22b1c74
|
|
void Gambit_fn_022B1C74(CPUState* cpu) {
|
|
L_022B1C74: ; // 0x22b1c74
|
|
/* 022B1C74 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1C78 */ return;
|
|
}
|
|
|
|
// fn_022B1C7C @ 0x22b1c7c
|
|
void Gambit_fn_022B1C7C(CPUState* cpu) {
|
|
L_022B1C7C: ; // 0x22b1c7c
|
|
/* 022B1C7C */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1C80 */ return;
|
|
}
|
|
|
|
// fn_022B1C84 @ 0x22b1c84
|
|
void Gambit_fn_022B1C84(CPUState* cpu) {
|
|
L_022B1C84: ; // 0x22b1c84
|
|
/* 022B1C84 */ cpu->r[3] = cpu->r[3] + 0x0000011Cu;
|
|
/* 022B1C88 */ return;
|
|
}
|
|
|
|
// fn_022B1C8C @ 0x22b1c8c
|
|
void Gambit_fn_022B1C8C(CPUState* cpu) {
|
|
L_022B1C8C: ; // 0x22b1c8c
|
|
/* 022B1C8C */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1C90 */ return;
|
|
}
|
|
|
|
// fn_022B1C94 @ 0x22b1c94
|
|
void Gambit_fn_022B1C94(CPUState* cpu) {
|
|
L_022B1C94: ; // 0x22b1c94
|
|
/* 022B1C94 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1C98 */ return;
|
|
}
|
|
|
|
// fn_022B1C9C @ 0x22b1c9c
|
|
void Gambit_fn_022B1C9C(CPUState* cpu) {
|
|
L_022B1C9C: ; // 0x22b1c9c
|
|
/* 022B1C9C */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1CA0 */ return;
|
|
}
|
|
|
|
// fn_022B1CA4 @ 0x22b1ca4
|
|
void Gambit_fn_022B1CA4(CPUState* cpu) {
|
|
L_022B1CA4: ; // 0x22b1ca4
|
|
/* 022B1CA4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1CA8 */ return;
|
|
}
|
|
|
|
// fn_022B1CAC @ 0x22b1cac
|
|
void Gambit_fn_022B1CAC(CPUState* cpu) {
|
|
L_022B1CAC: ; // 0x22b1cac
|
|
/* 022B1CAC */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1CB0 */ return;
|
|
}
|
|
|
|
// fn_022B1CB4 @ 0x22b1cb4
|
|
void Gambit_fn_022B1CB4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B1CB4: ; // 0x22b1cb4
|
|
/* 022B1CB4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1CB8 */ _t0 = cpu->r[12] + 0x0000313Cu;
|
|
/* 022B1CB8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B1CBC */ return;
|
|
}
|
|
|
|
// fn_022B1CC0 @ 0x22b1cc0
|
|
void Gambit_fn_022B1CC0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B1CC0: ; // 0x22b1cc0
|
|
/* 022B1CC0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1CC4 */ _t0 = cpu->r[12] + 0x0000313Cu;
|
|
/* 022B1CC4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B1CC8 */ return;
|
|
}
|
|
|
|
// fn_022B1CCC @ 0x22b1ccc
|
|
void Gambit_fn_022B1CCC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B1CCC: ; // 0x22b1ccc
|
|
/* 022B1CCC */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1CD0 */ _t0 = cpu->r[12] + 0x0000313Cu;
|
|
/* 022B1CD0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B1CD4 */ return;
|
|
}
|
|
|
|
// fn_022B1CD8 @ 0x22b1cd8
|
|
void Gambit_fn_022B1CD8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B1CD8: ; // 0x22b1cd8
|
|
/* 022B1CD8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1CDC */ _t0 = cpu->r[12] + 0x0000313Cu;
|
|
/* 022B1CDC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B1CE0 */ return;
|
|
}
|
|
|
|
// fn_022B1CE4 @ 0x22b1ce4
|
|
void Gambit_fn_022B1CE4(CPUState* cpu) {
|
|
L_022B1CE4: ; // 0x22b1ce4
|
|
/* 022B1CE4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1CE8 */ return;
|
|
}
|
|
|
|
// fn_022B1CEC @ 0x22b1cec
|
|
void Gambit_fn_022B1CEC(CPUState* cpu) {
|
|
L_022B1CEC: ; // 0x22b1cec
|
|
/* 022B1CEC */ return;
|
|
}
|
|
|
|
// fn_022B1CF0 @ 0x22b1cf0
|
|
void Gambit_fn_022B1CF0(CPUState* cpu) {
|
|
L_022B1CF0: ; // 0x22b1cf0
|
|
/* 022B1CF0 */ return;
|
|
}
|
|
|
|
// fn_022B1CF4 @ 0x22b1cf4
|
|
void Gambit_fn_022B1CF4(CPUState* cpu) {
|
|
L_022B1CF4: ; // 0x22b1cf4
|
|
/* 022B1CF4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1CF8 */ return;
|
|
}
|
|
|
|
// fn_022B1CFC @ 0x22b1cfc
|
|
void Gambit_fn_022B1CFC(CPUState* cpu) {
|
|
L_022B1CFC: ; // 0x22b1cfc
|
|
/* 022B1CFC */ return;
|
|
}
|
|
|
|
// fn_022B1D00 @ 0x22b1d00
|
|
void Gambit_fn_022B1D00(CPUState* cpu) {
|
|
L_022B1D00: ; // 0x22b1d00
|
|
/* 022B1D00 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1D04 */ return;
|
|
}
|
|
|
|
// fn_022B1D08 @ 0x22b1d08
|
|
void Gambit_fn_022B1D08(CPUState* cpu) {
|
|
L_022B1D08: ; // 0x22b1d08
|
|
/* 022B1D08 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1D0C */ return;
|
|
}
|
|
|
|
// fn_022B1D10 @ 0x22b1d10
|
|
void Gambit_fn_022B1D10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B1D10: ; // 0x22b1d10
|
|
/* 022B1D10 */ cpu->r[0] = cpu->lr;
|
|
/* 022B1D14 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022B1D14 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022B1D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022B1D1C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B1D1C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022B1D1C */ cpu->r[1] = _t1;
|
|
/* 022B1D20 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1D20 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B1D20 */ if (_t3) goto L_022B1D24; else goto L_022B1D38;
|
|
L_022B1D24: ; // 0x22b1d24
|
|
/* 022B1D24 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1D24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1D28 */ cpu->lr = cpu->r[0];
|
|
/* 022B1D2C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B1D30 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1D34 */ return;
|
|
L_022B1D38: ; // 0x22b1d38
|
|
/* 022B1D38 */ Gambit_fn_022713B8(cpu);
|
|
/* 022B1D3C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1D3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1D40 */ cpu->lr = cpu->r[0];
|
|
/* 022B1D44 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B1D48 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1D4C */ return;
|
|
}
|
|
|
|
// fn_022B1D1C @ 0x22b1d1c
|
|
void Gambit_fn_022B1D1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022B1D1C: ; // 0x22b1d1c
|
|
/* 022B1D1C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B1D1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1D1C */ cpu->r[1] = _t0;
|
|
/* 022B1D20 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1D20 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B1D20 */ if (_t2) goto L_022B1D24; else goto L_022B1D38;
|
|
L_022B1D24: ; // 0x22b1d24
|
|
/* 022B1D24 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1D24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B1D28 */ cpu->lr = cpu->r[0];
|
|
/* 022B1D2C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B1D30 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B1D34 */ return;
|
|
L_022B1D38: ; // 0x22b1d38
|
|
/* 022B1D38 */ Gambit_fn_022713B8(cpu);
|
|
/* 022B1D3C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1D3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1D40 */ cpu->lr = cpu->r[0];
|
|
/* 022B1D44 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B1D48 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1D4C */ return;
|
|
}
|
|
|
|
// fn_022B1D50 @ 0x22b1d50
|
|
void Gambit_fn_022B1D50(CPUState* cpu) {
|
|
L_022B1D50: ; // 0x22b1d50
|
|
/* 022B1D50 */ return;
|
|
}
|
|
|
|
// fn_022B1D54 @ 0x22b1d54
|
|
void Gambit_fn_022B1D54(CPUState* cpu) {
|
|
L_022B1D54: ; // 0x22b1d54
|
|
/* 022B1D54 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022B1D58 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022B1D5C */ return;
|
|
}
|
|
|
|
// fn_022B1D60 @ 0x22b1d60
|
|
void Gambit_fn_022B1D60(CPUState* cpu) {
|
|
L_022B1D60: ; // 0x22b1d60
|
|
/* 022B1D60 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022B1D64 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022B1D68 */ return;
|
|
}
|
|
|
|
// fn_022B1D6C @ 0x22b1d6c
|
|
void Gambit_fn_022B1D6C(CPUState* cpu) {
|
|
L_022B1D6C: ; // 0x22b1d6c
|
|
/* 022B1D6C */ return;
|
|
}
|
|
|
|
// fn_022B1D70 @ 0x22b1d70
|
|
void Gambit_fn_022B1D70(CPUState* cpu) {
|
|
L_022B1D70: ; // 0x22b1d70
|
|
/* 022B1D70 */ cpu->r[3] = 0x10060000u;
|
|
/* 022B1D74 */ cpu->r[3] = cpu->r[3] + 0x00002FE8u;
|
|
/* 022B1D78 */ return;
|
|
}
|
|
|
|
// fn_022B1D7C @ 0x22b1d7c
|
|
void Gambit_fn_022B1D7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_022B1D7C: ; // 0x22b1d7c
|
|
/* 022B1D7C */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B1D80 */ _t0 = cpu->r[9] + 0x0000018Cu;
|
|
/* 022B1D80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1D84 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022B1D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B1D8C */ cpu->r[11] = cpu->r[11] + 0x00000188u;
|
|
/* 022B1D90 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1D90 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B1D90 */ if (_t2) goto L_022B1D94; else goto L_022B1DAC;
|
|
L_022B1D94: ; // 0x22b1d94
|
|
/* 022B1D94 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B1D98 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B1D9C */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B1DA0 */ cpu->r[9] = cpu->r[9] + 0x00002FB4u;
|
|
/* 022B1DA4 */ _t3 = cpu->r[12] + 0x0000018Cu;
|
|
/* 022B1DA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B1DA8 */ _t4 = cpu->r[11] + 0x00000000u;
|
|
/* 022B1DA8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_022B1DAC: ; // 0x22b1dac
|
|
/* 022B1DAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022B1DB0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1DB0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B1DB0 */ if (_t6) goto L_022B1DB4; else goto L_022B1DBC;
|
|
L_022B1DB4: ; // 0x22b1db4
|
|
/* 022B1DB4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1DB8 */ return;
|
|
L_022B1DBC: ; // 0x22b1dbc
|
|
/* 022B1DBC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B1DC0 */ _t7 = cpu->r[12] + 0xFFFFDAC0u;
|
|
/* 022B1DC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B1DC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B1DC8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B1DCC */ cpu->r[12] = cpu->r[12] + 0xFFFFFBC4u;
|
|
/* 022B1DD0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1DD0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B1DD0 */ if (_t9) goto L_022B1DD4; else goto L_022B1DEC;
|
|
L_022B1DD4: ; // 0x22b1dd4
|
|
/* 022B1DD4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B1DD8 */ cpu->r[10] = 0x00000001u;
|
|
/* 022B1DDC */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B1DE0 */ cpu->r[11] = cpu->r[11] + 0x00002F84u;
|
|
/* 022B1DE4 */ _t10 = cpu->r[9] + 0xFFFFDAC0u;
|
|
/* 022B1DE4 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022B1DE8 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022B1DE8 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_022B1DEC: ; // 0x22b1dec
|
|
/* 022B1DEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022B1DF0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1DF0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B1DF0 */ if (_t13) goto L_022B1DF4; else goto L_022B1DFC;
|
|
L_022B1DF4: ; // 0x22b1df4
|
|
/* 022B1DF4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B1DF8 */ goto L_022B1E70;
|
|
L_022B1DFC: ; // 0x22b1dfc
|
|
/* 022B1DFC */ cpu->r[10] = 0x101D0000u;
|
|
/* 022B1E00 */ _t14 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 022B1E00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B1E00 */ cpu->r[10] = _t14;
|
|
/* 022B1E04 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022B1E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B1E0C */ cpu->r[11] = cpu->r[11] + 0xFFFFD4ECu;
|
|
/* 022B1E10 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1E10 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B1E10 */ if (_t16) goto L_022B1E14; else goto L_022B1E28;
|
|
L_022B1E14: ; // 0x22b1e14
|
|
/* 022B1E14 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B1E18 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B1E1C */ cpu->r[9] = cpu->r[9] + 0x00002F74u;
|
|
/* 022B1E20 */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 022B1E20 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B1E24 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022B1E24 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_022B1E28: ; // 0x22b1e28
|
|
/* 022B1E28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022B1E2C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1E2C */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B1E2C */ if (_t20) goto L_022B1E30; else goto L_022B1E38;
|
|
L_022B1E30: ; // 0x22b1e30
|
|
/* 022B1E30 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B1E34 */ goto L_022B1E70;
|
|
L_022B1E38: ; // 0x22b1e38
|
|
/* 022B1E38 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B1E3C */ _t21 = cpu->r[9] + 0xFFFFD4E0u;
|
|
/* 022B1E3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B1E3C */ cpu->r[9] = _t21;
|
|
/* 022B1E40 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B1E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B1E48 */ cpu->r[12] = cpu->r[12] + 0xFFFFD4E4u;
|
|
/* 022B1E4C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1E4C */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B1E4C */ if (_t23) goto L_022B1E50; else goto L_022B1E64;
|
|
L_022B1E50: ; // 0x22b1e50
|
|
/* 022B1E50 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B1E54 */ cpu->r[11] = 0x00000001u;
|
|
/* 022B1E58 */ cpu->r[0] = cpu->r[0] + 0x00002EF4u;
|
|
/* 022B1E5C */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022B1E5C */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022B1E60 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 022B1E60 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_022B1E64: ; // 0x22b1e64
|
|
/* 022B1E64 */ cpu->r[9] = cpu->r[4] ^ cpu->r[12];
|
|
/* 022B1E68 */ cpu->r[0] = rbrew_clz32(cpu->r[9]);
|
|
/* 022B1E6C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022B1E70: ; // 0x22b1e70
|
|
/* 022B1E70 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022B1E74 */ return;
|
|
}
|
|
|
|
// fn_022B1E78 @ 0x22b1e78
|
|
void Gambit_fn_022B1E78(CPUState* cpu) {
|
|
L_022B1E78: ; // 0x22b1e78
|
|
/* 022B1E78 */ cpu->r[3] = 0x10060000u;
|
|
/* 022B1E7C */ cpu->r[3] = cpu->r[3] + 0x00002FFCu;
|
|
/* 022B1E80 */ return;
|
|
}
|
|
|
|
// fn_022B1E84 @ 0x22b1e84
|
|
void Gambit_fn_022B1E84(CPUState* cpu) {
|
|
L_022B1E84: ; // 0x22b1e84
|
|
/* 022B1E84 */ cpu->r[3] = 0x10060000u;
|
|
/* 022B1E88 */ cpu->r[3] = cpu->r[3] + 0x00003008u;
|
|
/* 022B1E8C */ return;
|
|
}
|
|
|
|
// fn_022B1E9C @ 0x22b1e9c
|
|
void Gambit_fn_022B1E9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022B1E9C: ; // 0x22b1e9c
|
|
/* 022B1E9C */ cpu->r[3] = cpu->r[3] + 0x00000184u;
|
|
/* 022B1EA0 */ goto L_022B257C;
|
|
L_022B257C: ; // 0x22b257c
|
|
/* 022B257C */ cpu->r[0] = cpu->lr;
|
|
/* 022B2580 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B2580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B2580 */ cpu->r[1] = _t0;
|
|
/* 022B2584 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B2588 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B258C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B258C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B2590 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022B2590 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B2594 */ cpu->r[12] = 0x00000000u;
|
|
/* 022B2598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B259C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022B259C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022B25A0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B25A0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B25A0 */ if (_t6) goto L_022B25C8; else goto L_022B25A4;
|
|
L_022B25A4: ; // 0x22b25a4
|
|
/* 022B25A4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B25A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022B25A8 */ /* nop */
|
|
/* 022B25AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022B25B0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B25B0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B25B0 */ if (_t9) goto L_022B25B4; else goto L_022B25C8;
|
|
L_022B25B4: ; // 0x22b25b4
|
|
/* 022B25B4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B25B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B25B8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022B25B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B25BC */ cpu->ctr = cpu->r[0];
|
|
/* 022B25C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B25C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B25C8: ; // 0x22b25c8
|
|
/* 022B25C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B25CC */ Gambit_fn_022B24F4(cpu);
|
|
/* 022B25D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B25D4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 022B25D8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B25D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B25DC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B25DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B25E0 */ cpu->lr = cpu->r[0];
|
|
/* 022B25E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B25E8 */ return;
|
|
}
|
|
|
|
// fn_022B1EA4 @ 0x22b1ea4
|
|
void Gambit_fn_022B1EA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B1EA4: ; // 0x22b1ea4
|
|
/* 022B1EA4 */ cpu->r[0] = cpu->lr;
|
|
/* 022B1EA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B1EA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1EA8 */ cpu->r[1] = _t0;
|
|
/* 022B1EAC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1EAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B1EB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1EB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1EB4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 022B1EB4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B1EB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1EBC */ /* nop */
|
|
/* 022B1EC0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B1EC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1EC8 */ Gambit_fn_022B23F4(cpu);
|
|
/* 022B1ECC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1ED0 */ cpu->lr = cpu->r[0];
|
|
/* 022B1ED4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1ED4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1ED8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B1EDC */ return;
|
|
}
|
|
|
|
// fn_022B1EA8 @ 0x22b1ea8
|
|
void Gambit_fn_022B1EA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B1EA8: ; // 0x22b1ea8
|
|
/* 022B1EA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B1EA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1EA8 */ cpu->r[1] = _t0;
|
|
/* 022B1EAC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1EAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B1EB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1EB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1EB4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 022B1EB4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B1EB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1EBC */ /* nop */
|
|
/* 022B1EC0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B1EC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1EC8 */ Gambit_fn_022B23F4(cpu);
|
|
/* 022B1ECC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1ED0 */ cpu->lr = cpu->r[0];
|
|
/* 022B1ED4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1ED4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1ED8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B1EDC */ return;
|
|
}
|
|
|
|
// fn_022B1EE0 @ 0x22b1ee0
|
|
void Gambit_fn_022B1EE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B1EE0: ; // 0x22b1ee0
|
|
/* 022B1EE0 */ cpu->r[0] = cpu->lr;
|
|
/* 022B1EE4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B1EE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1EE4 */ cpu->r[1] = _t0;
|
|
/* 022B1EE8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1EE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B1EEC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1EF0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1EF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1EF4 */ _t3 = cpu->r[31] + 0x00000192u;
|
|
/* 022B1EF4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B1EF8 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022B1EFC */ /* nop */
|
|
/* 022B1F00 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B1F04 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022B1F08 */ Gambit_fn_022B23F4(cpu);
|
|
/* 022B1F0C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1F10 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1F10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1F14 */ cpu->lr = cpu->r[0];
|
|
/* 022B1F18 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B1F1C */ return;
|
|
}
|
|
|
|
// fn_022B1EE4 @ 0x22b1ee4
|
|
void Gambit_fn_022B1EE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B1EE4: ; // 0x22b1ee4
|
|
/* 022B1EE4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B1EE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1EE4 */ cpu->r[1] = _t0;
|
|
/* 022B1EE8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1EE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B1EEC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1EF0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1EF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1EF4 */ _t3 = cpu->r[31] + 0x00000192u;
|
|
/* 022B1EF4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B1EF8 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022B1EFC */ /* nop */
|
|
/* 022B1F00 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B1F04 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022B1F08 */ Gambit_fn_022B23F4(cpu);
|
|
/* 022B1F0C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1F10 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1F10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1F14 */ cpu->lr = cpu->r[0];
|
|
/* 022B1F18 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B1F1C */ return;
|
|
}
|
|
|
|
// fn_022B1F20 @ 0x22b1f20
|
|
void Gambit_fn_022B1F20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022B1F20: ; // 0x22b1f20
|
|
/* 022B1F20 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B1F24 */ _t0 = cpu->r[12] + 0x00000194u;
|
|
/* 022B1F24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B1F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B1F2C */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B1F30 */ cpu->r[12] = cpu->r[12] + 0x00000190u;
|
|
/* 022B1F34 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1F34 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B1F34 */ if (_t2) goto L_022B1F38; else goto L_022B1F50;
|
|
L_022B1F38: ; // 0x22b1f38
|
|
/* 022B1F38 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B1F3C */ cpu->r[9] = 0x00000001u;
|
|
/* 022B1F40 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022B1F44 */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B1F48 */ _t3 = cpu->r[8] + 0x00000194u;
|
|
/* 022B1F48 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 022B1F4C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 022B1F4C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_022B1F50: ; // 0x22b1f50
|
|
/* 022B1F50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022B1F54 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1F54 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B1F54 */ if (_t6) goto L_022B1F58; else goto L_022B1F60;
|
|
L_022B1F58: ; // 0x22b1f58
|
|
/* 022B1F58 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B1F5C */ return;
|
|
L_022B1F60: ; // 0x22b1f60
|
|
/* 022B1F60 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022B1F64 */ _t7 = cpu->r[11] + 0xFFFFDA38u;
|
|
/* 022B1F64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B1F64 */ cpu->r[11] = _t7;
|
|
/* 022B1F68 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022B1F6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022B1F70 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFE8u;
|
|
/* 022B1F74 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1F74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B1F74 */ if (_t9) goto L_022B1F78; else goto L_022B1F8C;
|
|
L_022B1F78: ; // 0x22b1f78
|
|
/* 022B1F78 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1F7C */ cpu->r[9] = 0x00000001u;
|
|
/* 022B1F80 */ cpu->r[12] = cpu->r[12] + 0x00002FA4u;
|
|
/* 022B1F84 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 022B1F84 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 022B1F88 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 022B1F88 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_022B1F8C: ; // 0x22b1f8c
|
|
/* 022B1F8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 022B1F90 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1F90 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B1F90 */ if (_t13) goto L_022B1F94; else goto L_022B1F9C;
|
|
L_022B1F94: ; // 0x22b1f94
|
|
/* 022B1F94 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B1F98 */ goto L_022B1FD4;
|
|
L_022B1F9C: ; // 0x22b1f9c
|
|
/* 022B1F9C */ cpu->r[8] = 0x101D0000u;
|
|
/* 022B1FA0 */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 022B1FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B1FA0 */ cpu->r[8] = _t14;
|
|
/* 022B1FA4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022B1FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B1FAC */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 022B1FB0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1FB0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B1FB0 */ if (_t16) goto L_022B1FB4; else goto L_022B1FC8;
|
|
L_022B1FB4: ; // 0x22b1fb4
|
|
/* 022B1FB4 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B1FB8 */ cpu->r[9] = 0x00000001u;
|
|
/* 022B1FBC */ cpu->r[10] = cpu->r[10] + 0x00002EF4u;
|
|
/* 022B1FC0 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 022B1FC0 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 022B1FC4 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022B1FC4 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_022B1FC8: ; // 0x22b1fc8
|
|
/* 022B1FC8 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 022B1FCC */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 022B1FD0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022B1FD4: ; // 0x22b1fd4
|
|
/* 022B1FD4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022B1FD8 */ return;
|
|
}
|
|
|
|
// fn_022B1FDC @ 0x22b1fdc
|
|
void Gambit_fn_022B1FDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104;
|
|
|
|
L_022B1FDC: ; // 0x22b1fdc
|
|
/* 022B1FDC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022B1FDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1FDC */ cpu->r[1] = _t0;
|
|
/* 022B1FE0 */ /* nop */
|
|
/* 022B1FE4 */ cpu->r[0] = cpu->lr;
|
|
/* 022B1FE8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022B1FE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B1FEC */ cpu->r[29] = cpu->r[6];
|
|
/* 022B1FF0 */ cpu->r[28] = cpu->r[3];
|
|
/* 022B1FF4 */ cpu->r[30] = cpu->r[5];
|
|
/* 022B1FF8 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 022B1FF8 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022B1FFC */ cpu->r[31] = 0x101D0000u;
|
|
/* 022B2000 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 022B2000 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 022B2004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B2008 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022B2008 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 022B200C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B200C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B200C */ if (_t6) goto L_022B2050; else goto L_022B2010;
|
|
L_022B2010: ; // 0x22b2010
|
|
/* 022B2010 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022B2010 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B2014 */ Gambit_fn_02826F20(cpu);
|
|
/* 022B2018 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B2018 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B201C */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 022B201C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B2020 */ cpu->ctr = cpu->r[0];
|
|
/* 022B2024 */ cpu->r[5] = 0x00000004u;
|
|
/* 022B2028 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B202C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B2034 */ cpu->r[0] = cpu->r[27];
|
|
/* 022B2038 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2038 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022B2038 */ if (_t11) goto L_022B2040; else goto L_022B203C;
|
|
L_022B203C: ; // 0x22b203c
|
|
/* 022B203C */ cpu->r[0] = 0x00000001u;
|
|
L_022B2040: ; // 0x22b2040
|
|
/* 022B2040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B2044 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2044 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B2044 */ if (_t13) goto L_022B2050; else goto L_022B2048;
|
|
L_022B2048: ; // 0x22b2048
|
|
/* 022B2048 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 022B2048 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 022B204C */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 022B204C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_022B2050: ; // 0x22b2050
|
|
/* 022B2050 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 022B2050 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B2054 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B2058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B205C */ cpu->r[12] = cpu->r[0];
|
|
/* 022B2060 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2060 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B2060 */ if (_t18) goto L_022B2064; else goto L_022B2088;
|
|
L_022B2064: ; // 0x22b2064
|
|
/* 022B2064 */ cpu->ctr = cpu->r[7];
|
|
/* 022B2068 */ cpu->r[10] = 0x00000000u;
|
|
L_022B206C: ; // 0x22b206c
|
|
/* 022B206C */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 022B206C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B2070 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 022B2070 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 022B2074 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 022B2078 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 022B2078 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 022B207C */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 022B2080 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 022B2080 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 022B2084 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B2084 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B2084 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 022B2084 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B2084 */ if (_t25) goto L_022B206C; else goto L_022B2088;
|
|
L_022B2088: ; // 0x22b2088
|
|
/* 022B2088 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022B2088 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 022B208C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B2090 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2090 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022B2090 */ if (_t28) goto L_022B20D4; else goto L_022B2094;
|
|
L_022B2094: ; // 0x22b2094
|
|
/* 022B2094 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022B2094 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B2098 */ Gambit_fn_02826F20(cpu);
|
|
/* 022B209C */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B209C */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B20A0 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 022B20A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B20A4 */ cpu->ctr = cpu->r[0];
|
|
/* 022B20A8 */ cpu->r[5] = 0x00000004u;
|
|
/* 022B20AC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B20B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B20B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B20B8 */ cpu->r[11] = cpu->r[27];
|
|
/* 022B20BC */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B20BC */ _t33 = _t32 & 0x00000001u;
|
|
/* 022B20BC */ if (_t33) goto L_022B20C4; else goto L_022B20C0;
|
|
L_022B20C0: ; // 0x22b20c0
|
|
/* 022B20C0 */ cpu->r[11] = 0x00000001u;
|
|
L_022B20C4: ; // 0x22b20c4
|
|
/* 022B20C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B20C8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B20C8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022B20C8 */ if (_t35) goto L_022B20D4; else goto L_022B20CC;
|
|
L_022B20CC: ; // 0x22b20cc
|
|
/* 022B20CC */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022B20CC */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 022B20D0 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 022B20D0 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_022B20D4: ; // 0x22b20d4
|
|
/* 022B20D4 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 022B20D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B20D8 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B20DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022B20E0 */ cpu->r[12] = cpu->r[0];
|
|
/* 022B20E4 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B20E4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022B20E4 */ if (_t40) goto L_022B20E8; else goto L_022B210C;
|
|
L_022B20E8: ; // 0x22b20e8
|
|
/* 022B20E8 */ cpu->ctr = cpu->r[6];
|
|
/* 022B20EC */ cpu->r[9] = 0x00000000u;
|
|
L_022B20F0: ; // 0x22b20f0
|
|
/* 022B20F0 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022B20F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B20F4 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 022B20F4 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 022B20F8 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 022B20FC */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 022B20FC */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 022B2100 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 022B2104 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 022B2104 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 022B2108 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B2108 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B2108 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 022B2108 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022B2108 */ if (_t47) goto L_022B20F0; else goto L_022B210C;
|
|
L_022B210C: ; // 0x22b210c
|
|
/* 022B210C */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022B210C */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 022B2110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B2114 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2114 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022B2114 */ if (_t50) goto L_022B2158; else goto L_022B2118;
|
|
L_022B2118: ; // 0x22b2118
|
|
/* 022B2118 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022B2118 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B211C */ Gambit_fn_02826F20(cpu);
|
|
/* 022B2120 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B2120 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022B2124 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 022B2124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B2128 */ cpu->ctr = cpu->r[0];
|
|
/* 022B212C */ cpu->r[5] = 0x00000004u;
|
|
/* 022B2130 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B2134 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B213C */ cpu->r[10] = cpu->r[27];
|
|
/* 022B2140 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2140 */ _t55 = _t54 & 0x00000001u;
|
|
/* 022B2140 */ if (_t55) goto L_022B2148; else goto L_022B2144;
|
|
L_022B2144: ; // 0x22b2144
|
|
/* 022B2144 */ cpu->r[10] = 0x00000001u;
|
|
L_022B2148: ; // 0x22b2148
|
|
/* 022B2148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B214C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B214C */ _t57 = _t56 & 0x00000001u;
|
|
/* 022B214C */ if (_t57) goto L_022B2158; else goto L_022B2150;
|
|
L_022B2150: ; // 0x22b2150
|
|
/* 022B2150 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 022B2150 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 022B2154 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 022B2154 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_022B2158: ; // 0x22b2158
|
|
/* 022B2158 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 022B2158 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022B215C */ cpu->r[0] = 0x00000000u;
|
|
/* 022B2160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B2164 */ cpu->r[5] = cpu->r[0];
|
|
/* 022B2168 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2168 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022B2168 */ if (_t62) goto L_022B216C; else goto L_022B2190;
|
|
L_022B216C: ; // 0x22b216c
|
|
/* 022B216C */ cpu->ctr = cpu->r[12];
|
|
/* 022B2170 */ cpu->r[8] = 0x00000000u;
|
|
L_022B2174: ; // 0x22b2174
|
|
/* 022B2174 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 022B2174 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B2178 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 022B2178 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 022B217C */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 022B2180 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 022B2180 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 022B2184 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 022B2188 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 022B2188 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 022B218C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B218C */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B218C */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 022B218C */ _t69 = _t68 & 0x00000001u;
|
|
/* 022B218C */ if (_t69) goto L_022B2174; else goto L_022B2190;
|
|
L_022B2190: ; // 0x22b2190
|
|
/* 022B2190 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 022B2190 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 022B2194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022B2198 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2198 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022B2198 */ if (_t72) goto L_022B2274; else goto L_022B219C;
|
|
L_022B219C: ; // 0x22b219c
|
|
/* 022B219C */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022B219C */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022B21A0 */ Gambit_fn_02826F20(cpu);
|
|
/* 022B21A4 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B21A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022B21A8 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 022B21A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022B21AC */ cpu->ctr = cpu->r[12];
|
|
/* 022B21B0 */ cpu->r[5] = 0x00000004u;
|
|
/* 022B21B4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 022B21B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B21BC */ cpu->r[24] = cpu->r[3];
|
|
/* 022B21C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022B21C4 */ cpu->r[30] = cpu->r[25];
|
|
/* 022B21C8 */ cpu->r[7] = 0x00000000u;
|
|
/* 022B21CC */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B21CC */ _t77 = _t76 & 0x00000001u;
|
|
/* 022B21CC */ if (_t77) goto L_022B21D4; else goto L_022B21D0;
|
|
L_022B21D0: ; // 0x22b21d0
|
|
/* 022B21D0 */ cpu->r[30] = 0x00000001u;
|
|
L_022B21D4: ; // 0x22b21d4
|
|
/* 022B21D4 */ cpu->r[31] = 0x10110000u;
|
|
/* 022B21D8 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 022B21DC */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 022B21DC */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 022B21E0 */ cpu->r[23] = 0x00000018u;
|
|
L_022B21E4: ; // 0x22b21e4
|
|
/* 022B21E4 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 022B21E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B21E8 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B21E8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022B21E8 */ if (_t80) goto L_022B2258; else goto L_022B21EC;
|
|
L_022B21EC: ; // 0x22b21ec
|
|
/* 022B21EC */ cpu->r[26] = cpu->r[27];
|
|
/* 022B21EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022B21F0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B21F0 */ _t82 = _t81 & 0x00000001u;
|
|
/* 022B21F0 */ if (_t82) goto L_022B21F4; else goto L_022B2204;
|
|
L_022B21F4: ; // 0x22b21f4
|
|
/* 022B21F4 */ cpu->r[3] = 0x00000024u;
|
|
/* 022B21F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B21FC */ cpu->r[26] = cpu->r[3];
|
|
/* 022B21FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022B2200 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2200 */ _t84 = _t83 & 0x00000001u;
|
|
/* 022B2200 */ if (_t84) goto L_022B224C; else goto L_022B2204;
|
|
L_022B2204: ; // 0x22b2204
|
|
/* 022B2204 */ cpu->r[11] = cpu->r[26];
|
|
/* 022B2204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B2208 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2208 */ _t86 = _t85 & 0x00000001u;
|
|
/* 022B2208 */ if (_t86) goto L_022B220C; else goto L_022B221C;
|
|
L_022B220C: ; // 0x22b220c
|
|
/* 022B220C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022B2210 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B2214 */ cpu->r[11] = cpu->r[3];
|
|
/* 022B2214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B2218 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2218 */ _t88 = _t87 & 0x00000001u;
|
|
/* 022B2218 */ if (_t88) goto L_022B2238; else goto L_022B221C;
|
|
L_022B221C: ; // 0x22b221c
|
|
/* 022B221C */ cpu->r[5] = 0x10060000u;
|
|
/* 022B2220 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 022B2220 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 022B2224 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 022B2228 */ cpu->r[5] = cpu->r[5] + 0x00002F1Cu;
|
|
/* 022B222C */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 022B222C */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 022B2230 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 022B2230 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 022B2234 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 022B2234 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_022B2238: ; // 0x22b2238
|
|
/* 022B2238 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B223C */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 022B223C */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022B2240 */ cpu->r[6] = cpu->r[6] + 0x00002F44u;
|
|
/* 022B2244 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 022B2244 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 022B2248 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 022B2248 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_022B224C: ; // 0x22b224c
|
|
/* 022B224C */ cpu->r[0] = 0x10060000u;
|
|
/* 022B2250 */ cpu->r[0] = cpu->r[0] + 0x00002F5Cu;
|
|
/* 022B2254 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 022B2254 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_022B2258: ; // 0x22b2258
|
|
/* 022B2258 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 022B2258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B225C */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 022B2260 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2260 */ _t98 = _t97 & 0x00000001u;
|
|
/* 022B2260 */ if (_t98) goto L_022B2264; else goto L_022B21E4;
|
|
L_022B2264: ; // 0x22b2264
|
|
/* 022B2264 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 022B2268 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2268 */ _t100 = _t99 & 0x00000001u;
|
|
/* 022B2268 */ if (_t100) goto L_022B2274; else goto L_022B226C;
|
|
L_022B226C: ; // 0x22b226c
|
|
/* 022B226C */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 022B226C */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 022B2270 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 022B2270 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_022B2274: ; // 0x22b2274
|
|
/* 022B2274 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 022B2274 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 022B2278 */ /* nop */
|
|
/* 022B227C */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 022B227C */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022B2280 */ cpu->lr = cpu->r[0];
|
|
/* 022B2284 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022B2288 */ return;
|
|
}
|
|
|
|
// fn_022B228C @ 0x22b228c
|
|
void Gambit_fn_022B228C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_022B228C: ; // 0x22b228c
|
|
/* 022B228C */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 022B228C */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022B2290 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022B2290 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B2294 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022B2294 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B2298 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 022B229C */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 022B229C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B22A0 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B22A0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B22A0 */ if (_t5) goto L_022B22A4; else goto L_022B22AC;
|
|
L_022B22A4: ; // 0x22b22a4
|
|
/* 022B22A4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B22A8 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_022B22AC: ; // 0x22b22ac
|
|
/* 022B22AC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022B22AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B22B0 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 022B22B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B22B4 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 022B22B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022B22B8 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 022B22B8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 022B22BC */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 022B22BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B22C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 022B22C4 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022B22C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B22C8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B22C8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B22C8 */ if (_t13) goto L_022B22CC; else goto L_022B22D4;
|
|
L_022B22CC: ; // 0x22b22cc
|
|
/* 022B22CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B22D0 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_022B22D4: ; // 0x22b22d4
|
|
/* 022B22D4 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 022B22D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B22D8 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 022B22D8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022B22DC */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 022B22DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B22E0 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 022B22E0 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 022B22E4 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 022B22E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B22E8 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 022B22E8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 022B22EC */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 022B22EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B22F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 022B22F4 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 022B22F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B22F8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B22F8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B22F8 */ if (_t23) goto L_022B22FC; else goto L_022B2304;
|
|
L_022B22FC: ; // 0x22b22fc
|
|
/* 022B22FC */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B2300 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_022B2304: ; // 0x22b2304
|
|
/* 022B2304 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 022B2304 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 022B2308 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 022B2308 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B230C */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 022B230C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 022B2310 */ return;
|
|
}
|
|
|
|
// fn_022B2314 @ 0x22b2314
|
|
void Gambit_fn_022B2314(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B2314: ; // 0x22b2314
|
|
/* 022B2314 */ cpu->r[0] = cpu->lr;
|
|
/* 022B2318 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B231C */ cpu->r[7] = 0x022B0000u;
|
|
/* 022B2320 */ cpu->r[6] = 0x022B0000u;
|
|
/* 022B2324 */ cpu->r[10] = 0x101C0000u;
|
|
/* 022B2328 */ cpu->r[7] = cpu->r[7] + 0x00001B48u;
|
|
/* 022B232C */ cpu->r[6] = cpu->r[6] + 0x00001B48u;
|
|
/* 022B2330 */ cpu->r[10] = cpu->r[10] + 0x000056DCu;
|
|
/* 022B2334 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022B2334 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022B2338 */ cpu->r[0] = 0x101C0000u;
|
|
/* 022B233C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B233C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022B233C */ cpu->r[1] = _t1;
|
|
/* 022B2340 */ cpu->r[0] = cpu->r[0] + 0x000056D8u;
|
|
/* 022B2344 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022B2344 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B2348 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B234C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022B234C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B2350 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2354 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2354 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022B2358 */ Gambit_fn_02791B10(cpu);
|
|
/* 022B235C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022B235C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B2360 */ cpu->lr = cpu->r[0];
|
|
/* 022B2364 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B2368 */ return;
|
|
}
|
|
|
|
// fn_022B233C @ 0x22b233c
|
|
void Gambit_fn_022B233C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022B233C: ; // 0x22b233c
|
|
/* 022B233C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B233C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B233C */ cpu->r[1] = _t0;
|
|
/* 022B2340 */ cpu->r[0] = cpu->r[0] + 0x000056D8u;
|
|
/* 022B2344 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022B2344 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B2348 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B234C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022B234C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B2350 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2354 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2354 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 022B2358 */ Gambit_fn_02791B10(cpu);
|
|
/* 022B235C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B235C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B2360 */ cpu->lr = cpu->r[0];
|
|
/* 022B2364 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B2368 */ return;
|
|
}
|
|
|
|
// fn_022B236C @ 0x22b236c
|
|
void Gambit_fn_022B236C(CPUState* 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_022B236C: ; // 0x22b236c
|
|
/* 022B236C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B236C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022B2370 */ /* nop */
|
|
/* 022B2374 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 022B2374 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B2378 */ cpu->r[7] = cpu->r[0];
|
|
/* 022B237C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 022B2380 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 022B2380 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B2384 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B2384 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B2384 */ if (_t4) goto L_022B2388; else goto L_022B23A0;
|
|
L_022B2388: ; // 0x22b2388
|
|
/* 022B2388 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B238C */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 022B2390 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022B2390 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022B2394 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B2398 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2398 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B2398 */ if (_t7) goto L_022B239C; else goto L_022B23AC;
|
|
L_022B239C: ; // 0x22b239c
|
|
/* 022B239C */ return;
|
|
L_022B23A0: ; // 0x22b23a0
|
|
/* 022B23A0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022B23A0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022B23A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B23A8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B23A8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B23A8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B23A8 */ goto L_022B23AC;
|
|
L_022B23AC: ; // 0x22b23ac
|
|
/* 022B23AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 022B23B0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022B23B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B23B4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B23B4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B23B4 */ if (_t13) goto L_022B23B8; else goto L_022B23C0;
|
|
L_022B23B8: ; // 0x22b23b8
|
|
/* 022B23B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B23BC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022B23C0: ; // 0x22b23c0
|
|
/* 022B23C0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022B23C0 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022B23C4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022B23C4 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022B23C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B23CC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022B23CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B23D0 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 022B23D4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B23D4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B23D4 */ if (_t18) goto L_022B23EC; else goto L_022B23D8;
|
|
L_022B23D8: ; // 0x22b23d8
|
|
/* 022B23D8 */ /* nop */
|
|
/* 022B23DC */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022B23DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B23E0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B23E4 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 022B23E8 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022B23E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022B23EC: ; // 0x22b23ec
|
|
/* 022B23EC */ cpu->ctr = cpu->r[11];
|
|
/* 022B23F0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B23F4 @ 0x22b23f4
|
|
void Gambit_fn_022B23F4(CPUState* 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_022B23F4: ; // 0x22b23f4
|
|
/* 022B23F4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B23F4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022B23F8 */ /* nop */
|
|
/* 022B23FC */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022B23FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B2400 */ cpu->r[8] = cpu->r[0];
|
|
/* 022B2404 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 022B2408 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022B2408 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B240C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B240C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B240C */ if (_t4) goto L_022B2410; else goto L_022B2428;
|
|
L_022B2410: ; // 0x22b2410
|
|
/* 022B2410 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B2414 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 022B2418 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022B2418 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022B241C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B2420 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2420 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B2420 */ if (_t7) goto L_022B2424; else goto L_022B2434;
|
|
L_022B2424: ; // 0x22b2424
|
|
/* 022B2424 */ return;
|
|
L_022B2428: ; // 0x22b2428
|
|
/* 022B2428 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022B2428 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022B242C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B2430 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2430 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B2430 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B2430 */ goto L_022B2434;
|
|
L_022B2434: ; // 0x22b2434
|
|
/* 022B2434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 022B2438 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022B2438 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B243C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B243C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B243C */ if (_t13) goto L_022B2440; else goto L_022B2448;
|
|
L_022B2440: ; // 0x22b2440
|
|
/* 022B2440 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B2444 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022B2448: ; // 0x22b2448
|
|
/* 022B2448 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022B2448 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022B244C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022B244C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022B2450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B2454 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022B2454 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B2458 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 022B245C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B245C */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B245C */ if (_t18) goto L_022B2474; else goto L_022B2460;
|
|
L_022B2460: ; // 0x22b2460
|
|
/* 022B2460 */ /* nop */
|
|
/* 022B2464 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022B2464 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B2468 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B246C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 022B2470 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022B2470 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022B2474: ; // 0x22b2474
|
|
/* 022B2474 */ cpu->ctr = cpu->r[11];
|
|
/* 022B2478 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B247C @ 0x22b247c
|
|
void Gambit_fn_022B247C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022B247C: ; // 0x22b247c
|
|
/* 022B247C */ cpu->r[0] = cpu->lr;
|
|
/* 022B2480 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B2480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B2480 */ cpu->r[1] = _t0;
|
|
/* 022B2484 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B2484 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B2488 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2488 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B248C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B2490 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B2490 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B2494 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B2494 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022B2498 */ /* nop */
|
|
/* 022B249C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 022B24A0 */ cpu->r[31] = cpu->r[4];
|
|
/* 022B24A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B24A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B24A4 */ if (_t6) goto L_022B24A8; else goto L_022B24BC;
|
|
L_022B24A8: ; // 0x22b24a8
|
|
/* 022B24A8 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 022B24A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B24AC */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 022B24AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B24B0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B24B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B24B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B24BC: ; // 0x22b24bc
|
|
/* 022B24BC */ cpu->r[3] = cpu->r[30];
|
|
/* 022B24C0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B24C4 */ Gambit_fn_022B236C(cpu);
|
|
/* 022B24C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B24CC */ /* nop */
|
|
/* 022B24D0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B24D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B24D8 */ Gambit_fn_022B23F4(cpu);
|
|
/* 022B24DC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B24DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B24E0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022B24E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B24E4 */ cpu->lr = cpu->r[0];
|
|
/* 022B24E8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B24E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B24EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B24F0 */ return;
|
|
}
|
|
|
|
// fn_022B2480 @ 0x22b2480
|
|
void Gambit_fn_022B2480(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022B2480: ; // 0x22b2480
|
|
/* 022B2480 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B2480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B2480 */ cpu->r[1] = _t0;
|
|
/* 022B2484 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B2484 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B2488 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2488 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B248C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B2490 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B2490 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B2494 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B2494 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022B2498 */ /* nop */
|
|
/* 022B249C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 022B24A0 */ cpu->r[31] = cpu->r[4];
|
|
/* 022B24A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B24A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B24A4 */ if (_t6) goto L_022B24A8; else goto L_022B24BC;
|
|
L_022B24A8: ; // 0x22b24a8
|
|
/* 022B24A8 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 022B24A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B24AC */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 022B24AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B24B0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B24B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B24B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B24BC: ; // 0x22b24bc
|
|
/* 022B24BC */ cpu->r[3] = cpu->r[30];
|
|
/* 022B24C0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B24C4 */ Gambit_fn_022B236C(cpu);
|
|
/* 022B24C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B24CC */ /* nop */
|
|
/* 022B24D0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B24D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B24D8 */ Gambit_fn_022B23F4(cpu);
|
|
/* 022B24DC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B24DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B24E0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022B24E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B24E4 */ cpu->lr = cpu->r[0];
|
|
/* 022B24E8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B24E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B24EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B24F0 */ return;
|
|
}
|
|
|
|
// fn_022B24F4 @ 0x22b24f4
|
|
void Gambit_fn_022B24F4(CPUState* 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_022B24F4: ; // 0x22b24f4
|
|
/* 022B24F4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B24F4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022B24F8 */ /* nop */
|
|
/* 022B24FC */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 022B24FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B2500 */ cpu->r[8] = cpu->r[0];
|
|
/* 022B2504 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 022B2508 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022B2508 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B250C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B250C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B250C */ if (_t4) goto L_022B2510; else goto L_022B2528;
|
|
L_022B2510: ; // 0x22b2510
|
|
/* 022B2510 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B2514 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 022B2518 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022B2518 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022B251C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B2520 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2520 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B2520 */ if (_t7) goto L_022B2524; else goto L_022B2534;
|
|
L_022B2524: ; // 0x22b2524
|
|
/* 022B2524 */ return;
|
|
L_022B2528: ; // 0x22b2528
|
|
/* 022B2528 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022B2528 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022B252C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B2530 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2530 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B2530 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B2530 */ goto L_022B2534;
|
|
L_022B2534: ; // 0x22b2534
|
|
/* 022B2534 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 022B2538 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022B2538 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B253C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B253C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B253C */ if (_t13) goto L_022B2540; else goto L_022B2548;
|
|
L_022B2540: ; // 0x22b2540
|
|
/* 022B2540 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B2544 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022B2548: ; // 0x22b2548
|
|
/* 022B2548 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022B2548 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022B254C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022B254C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022B2550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B2554 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022B2554 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B2558 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 022B255C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B255C */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B255C */ if (_t18) goto L_022B2574; else goto L_022B2560;
|
|
L_022B2560: ; // 0x22b2560
|
|
/* 022B2560 */ /* nop */
|
|
/* 022B2564 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022B2564 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B2568 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B256C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 022B2570 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022B2570 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022B2574: ; // 0x22b2574
|
|
/* 022B2574 */ cpu->ctr = cpu->r[11];
|
|
/* 022B2578 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B257C @ 0x22b257c
|
|
void Gambit_fn_022B257C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022B257C: ; // 0x22b257c
|
|
/* 022B257C */ cpu->r[0] = cpu->lr;
|
|
/* 022B2580 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B2580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B2580 */ cpu->r[1] = _t0;
|
|
/* 022B2584 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B2588 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B258C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B258C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B2590 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022B2590 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B2594 */ cpu->r[12] = 0x00000000u;
|
|
/* 022B2598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B259C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022B259C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022B25A0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B25A0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B25A0 */ if (_t6) goto L_022B25C8; else goto L_022B25A4;
|
|
L_022B25A4: ; // 0x22b25a4
|
|
/* 022B25A4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B25A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022B25A8 */ /* nop */
|
|
/* 022B25AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022B25B0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B25B0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B25B0 */ if (_t9) goto L_022B25B4; else goto L_022B25C8;
|
|
L_022B25B4: ; // 0x22b25b4
|
|
/* 022B25B4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B25B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B25B8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022B25B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B25BC */ cpu->ctr = cpu->r[0];
|
|
/* 022B25C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B25C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B25C8: ; // 0x22b25c8
|
|
/* 022B25C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B25CC */ Gambit_fn_022B24F4(cpu);
|
|
/* 022B25D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B25D4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 022B25D8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B25D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B25DC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B25DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B25E0 */ cpu->lr = cpu->r[0];
|
|
/* 022B25E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B25E8 */ return;
|
|
}
|
|
|
|
// fn_022B2580 @ 0x22b2580
|
|
void Gambit_fn_022B2580(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022B2580: ; // 0x22b2580
|
|
/* 022B2580 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B2580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B2580 */ cpu->r[1] = _t0;
|
|
/* 022B2584 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B2588 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B258C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B258C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B2590 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022B2590 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B2594 */ cpu->r[12] = 0x00000000u;
|
|
/* 022B2598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B259C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022B259C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022B25A0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B25A0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B25A0 */ if (_t6) goto L_022B25C8; else goto L_022B25A4;
|
|
L_022B25A4: ; // 0x22b25a4
|
|
/* 022B25A4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B25A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022B25A8 */ /* nop */
|
|
/* 022B25AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022B25B0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B25B0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B25B0 */ if (_t9) goto L_022B25B4; else goto L_022B25C8;
|
|
L_022B25B4: ; // 0x22b25b4
|
|
/* 022B25B4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B25B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B25B8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022B25B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B25BC */ cpu->ctr = cpu->r[0];
|
|
/* 022B25C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B25C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B25C8: ; // 0x22b25c8
|
|
/* 022B25C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B25CC */ Gambit_fn_022B24F4(cpu);
|
|
/* 022B25D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B25D4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 022B25D8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B25D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B25DC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B25DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B25E0 */ cpu->lr = cpu->r[0];
|
|
/* 022B25E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B25E8 */ return;
|
|
}
|
|
|
|
// fn_022B25EC @ 0x22b25ec
|
|
void Gambit_fn_022B25EC(CPUState* cpu) {
|
|
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_022B25EC: ; // 0x22b25ec
|
|
/* 022B25EC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022B25EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B25EC */ cpu->r[1] = _t0;
|
|
/* 022B25F0 */ cpu->r[0] = cpu->lr;
|
|
/* 022B25F4 */ /* nop */
|
|
/* 022B25F8 */ cpu->r[30] = cpu->r[5];
|
|
/* 022B25FC */ cpu->r[26] = cpu->r[3];
|
|
/* 022B2600 */ cpu->r[27] = cpu->r[7];
|
|
/* 022B2604 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B2608 */ cpu->r[31] = cpu->r[6];
|
|
/* 022B260C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B260C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B2610 */ cpu->r[29] = cpu->r[4];
|
|
/* 022B2614 */ cpu->r[4] = cpu->r[27];
|
|
/* 022B2618 */ Gambit_fn_027DB318(cpu);
|
|
/* 022B261C */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 022B261C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022B2620 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2620 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B2620 */ if (_t3) goto L_022B26B4; else goto L_022B2624;
|
|
L_022B2624: ; // 0x22b2624
|
|
/* 022B2624 */ cpu->r[5] = cpu->r[28];
|
|
/* 022B2628 */ cpu->r[4] = cpu->r[29];
|
|
/* 022B262C */ cpu->r[3] = cpu->r[26];
|
|
/* 022B2630 */ Gambit_fn_022B2314(cpu);
|
|
/* 022B2634 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B2634 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B2638 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 022B2638 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B263C */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 022B2640 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022B2644 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022B2648 */ cpu->r[25] = 0x00000000u;
|
|
/* 022B264C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B264C */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B264C */ if (_t7) goto L_022B26B4; else goto L_022B2650;
|
|
L_022B2650: ; // 0x22b2650
|
|
/* 022B2650 */ cpu->r[24] = 0x101C0000u;
|
|
L_022B2654: ; // 0x22b2654
|
|
/* 022B2654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B2658 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2658 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B2658 */ if (_t9) goto L_022B2670; else goto L_022B265C;
|
|
L_022B265C: ; // 0x22b265c
|
|
/* 022B265C */ cpu->ctr = cpu->r[27];
|
|
/* 022B2660 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B2664 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B266C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B266C */ _t11 = _t10 & 0x00000001u;
|
|
/* 022B266C */ if (_t11) goto L_022B26A0; else goto L_022B2670;
|
|
L_022B2670: ; // 0x22b2670
|
|
/* 022B2670 */ _t12 = cpu->r[24] + 0x000056D8u;
|
|
/* 022B2670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B2674 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 022B2678 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 022B2678 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022B267C */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 022B267C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B2680 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B2684 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 022B2684 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B2688 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B268C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 022B268C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B2690 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B2694 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 022B2694 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B2698 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 022B269C */ Gambit_fn_022711B8(cpu);
|
|
L_022B26A0: ; // 0x22b26a0
|
|
/* 022B26A0 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 022B26A4 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 022B26A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B26A8 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022B26AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022B26B0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B26B0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B26B0 */ if (_t20) goto L_022B26B4; else goto L_022B2654;
|
|
L_022B26B4: ; // 0x22b26b4
|
|
/* 022B26B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B26B8 */ /* nop */
|
|
/* 022B26BC */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B26BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B26C0 */ cpu->lr = cpu->r[0];
|
|
/* 022B26C4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022B26C8 */ return;
|
|
}
|
|
|
|
// fn_022B26CC @ 0x22b26cc
|
|
void Gambit_fn_022B26CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418, _t419, _t420, _t421, _t422, _t423, _t424, _t425, _t426, _t427, _t428, _t429, _t430, _t431, _t432, _t433, _t434, _t435, _t436, _t437, _t438, _t439, _t440, _t441, _t442, _t443, _t444, _t445, _t446, _t447, _t448, _t449, _t450, _t451, _t452, _t453, _t454, _t455, _t456, _t457, _t458, _t459, _t460, _t461, _t462, _t463, _t464, _t465, _t466, _t467, _t468, _t469, _t470, _t471, _t472, _t473, _t474, _t475, _t476, _t477, _t478, _t479, _t480, _t481, _t482, _t483, _t484, _t485, _t486, _t487, _t488, _t489, _t490, _t491, _t492, _t493, _t494, _t495, _t496, _t497, _t498, _t499, _t500, _t501, _t502, _t503, _t504, _t505, _t506, _t507, _t508, _t509, _t510, _t511, _t512, _t513, _t514, _t515, _t516, _t517, _t518, _t519, _t520, _t521, _t522, _t523, _t524, _t525, _t526, _t527, _t528, _t529, _t530, _t531, _t532, _t533, _t534, _t535, _t536, _t537, _t538, _t539, _t540, _t541, _t542, _t543, _t544, _t545, _t546, _t547, _t548, _t549, _t550, _t551, _t552, _t553, _t554, _t555, _t556, _t557, _t558, _t559, _t560, _t561, _t562, _t563, _t564, _t565, _t566, _t567, _t568, _t569, _t570, _t571, _t572, _t573, _t574, _t575, _t576, _t577, _t578, _t579, _t580, _t581, _t582, _t583, _t584, _t585, _t586, _t587, _t588, _t589, _t590, _t591, _t592, _t593, _t594, _t595, _t596, _t597, _t598, _t599, _t600, _t601, _t602, _t603, _t604, _t605, _t606, _t607, _t608, _t609, _t610, _t611, _t612, _t613, _t614, _t615, _t616, _t617, _t618, _t619, _t620, _t621, _t622, _t623, _t624, _t625, _t626, _t627, _t628, _t629, _t630, _t631, _t632, _t633, _t634, _t635, _t636, _t637, _t638, _t639, _t640, _t641, _t642, _t643, _t644, _t645, _t646, _t647, _t648, _t649, _t650, _t651, _t652, _t653, _t654, _t655, _t656, _t657, _t658, _t659, _t660, _t661, _t662, _t663, _t664, _t665, _t666, _t667, _t668, _t669, _t670, _t671, _t672, _t673, _t674, _t675, _t676, _t677, _t678, _t679, _t680, _t681, _t682, _t683, _t684, _t685, _t686, _t687, _t688, _t689, _t690, _t691, _t692, _t693, _t694, _t695, _t696, _t697, _t698, _t699, _t700, _t701, _t702, _t703, _t704, _t705, _t706, _t707, _t708, _t709, _t710, _t711, _t712;
|
|
|
|
L_022B26CC: ; // 0x22b26cc
|
|
/* 022B26CC */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B26CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B26CC */ cpu->r[1] = _t0;
|
|
/* 022B26D0 */ /* nop */
|
|
/* 022B26D4 */ cpu->r[0] = cpu->lr;
|
|
/* 022B26D8 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022B26D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B26DC */ cpu->r[29] = cpu->r[3];
|
|
/* 022B26DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B26E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B26E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B26E0 */ if (_t3) goto L_022B26E4; else goto L_022B26F4;
|
|
L_022B26E4: ; // 0x22b26e4
|
|
/* 022B26E4 */ cpu->r[3] = 0x0000039Cu;
|
|
/* 022B26E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B26EC */ cpu->r[29] = cpu->r[3];
|
|
/* 022B26EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B26F0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B26F0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B26F0 */ if (_t5) goto L_022B3C3C; else goto L_022B26F4;
|
|
L_022B26F4: ; // 0x22b26f4
|
|
/* 022B26F4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B26F8 */ Gambit_fn_0226EA1C(cpu);
|
|
/* 022B26FC */ cpu->r[28] = 0x00000000u;
|
|
/* 022B2700 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B2704 */ _t6 = cpu->r[29] + 0x00000184u;
|
|
/* 022B2704 */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 022B2708 */ cpu->r[8] = cpu->r[8] + 0x00003BF8u;
|
|
/* 022B270C */ _t7 = cpu->r[29] + 0x00000188u;
|
|
/* 022B270C */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 022B2710 */ cpu->r[31] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B2710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B2714 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 022B2714 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022B2718 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2718 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B2718 */ if (_t10) goto L_022B271C; else goto L_022B272C;
|
|
L_022B271C: ; // 0x22b271c
|
|
/* 022B271C */ cpu->r[3] = 0x00000038u;
|
|
/* 022B2720 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B2724 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B2724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B2728 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2728 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022B2728 */ if (_t12) goto L_022B275C; else goto L_022B272C;
|
|
L_022B272C: ; // 0x22b272c
|
|
/* 022B272C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B2730 */ Gambit_fn_027FC29C(cpu);
|
|
/* 022B2734 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B2738 */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 022B2738 */ rbrew_write32(cpu->mem, _t13, cpu->r[28]);
|
|
/* 022B273C */ cpu->r[9] = cpu->r[9] + 0x00003BC8u;
|
|
/* 022B2740 */ _t14 = cpu->r[31] + 0x00000034u;
|
|
/* 022B2740 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 022B2744 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 022B2744 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 022B2748 */ _t16 = cpu->r[31] + 0x00000024u;
|
|
/* 022B2748 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 022B274C */ _t17 = cpu->r[31] + 0x00000028u;
|
|
/* 022B274C */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 022B2750 */ _t18 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022B2750 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 022B2754 */ _t19 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B2754 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 022B2758 */ _t20 = cpu->r[31] + 0x00000020u;
|
|
/* 022B2758 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
L_022B275C: ; // 0x22b275c
|
|
/* 022B275C */ cpu->r[31] = 0x101F0000u;
|
|
/* 022B2760 */ cpu->r[12] = 0x00000003u;
|
|
/* 022B2764 */ cpu->r[11] = cpu->r[29] + 0x000001C0u;
|
|
/* 022B2768 */ cpu->r[31] = cpu->r[31] + 0x00005E30u;
|
|
/* 022B276C */ cpu->ctr = cpu->r[12];
|
|
/* 022B2770 */ cpu->r[10] = cpu->r[31] + 0xFFFFFFFCu;
|
|
L_022B2774: ; // 0x22b2774
|
|
/* 022B2774 */ _t21 = cpu->r[10] + 0x00000004u;
|
|
/* 022B2774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B2778 */ _t22 = cpu->r[11] + 0x00000004u;
|
|
/* 022B2778 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 022B277C */ _t23 = cpu->r[10] + 0x00000008u;
|
|
/* 022B277C */ cpu->r[4] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B2780 */ _t24 = cpu->r[11] + 0x00000008u;
|
|
/* 022B2780 */ rbrew_write32(cpu->mem, _t24, cpu->r[4]);
|
|
/* 022B2784 */ _t25 = cpu->r[10] + 0x0000000Cu;
|
|
/* 022B2784 */ cpu->r[5] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B2788 */ _t26 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022B2788 */ rbrew_write32(cpu->mem, _t26, cpu->r[5]);
|
|
/* 022B278C */ _t27 = cpu->r[10] + 0x00000010u;
|
|
/* 022B278C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B278C */ cpu->r[10] = _t27;
|
|
/* 022B2790 */ _t28 = cpu->r[11] + 0x00000010u;
|
|
/* 022B2790 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022B2790 */ cpu->r[11] = _t28;
|
|
/* 022B2794 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B2794 */ _t29 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B2794 */ _t30 = _t29 >> (0x00000002u & 31u);
|
|
/* 022B2794 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022B2794 */ if (_t31) goto L_022B2774; else goto L_022B2798;
|
|
L_022B2798: ; // 0x22b2798
|
|
/* 022B2798 */ cpu->r[9] = 0x00000003u;
|
|
/* 022B279C */ cpu->r[7] = cpu->r[31] + 0xFFFFFFFCu;
|
|
/* 022B27A0 */ cpu->ctr = cpu->r[9];
|
|
/* 022B27A4 */ cpu->r[8] = cpu->r[29] + 0x000001F0u;
|
|
L_022B27A8: ; // 0x22b27a8
|
|
/* 022B27A8 */ _t32 = cpu->r[7] + 0x00000004u;
|
|
/* 022B27A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B27AC */ _t33 = cpu->r[8] + 0x00000004u;
|
|
/* 022B27AC */ rbrew_write32(cpu->mem, _t33, cpu->r[10]);
|
|
/* 022B27B0 */ _t34 = cpu->r[7] + 0x00000008u;
|
|
/* 022B27B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B27B4 */ _t35 = cpu->r[8] + 0x00000008u;
|
|
/* 022B27B4 */ rbrew_write32(cpu->mem, _t35, cpu->r[11]);
|
|
/* 022B27B8 */ _t36 = cpu->r[7] + 0x0000000Cu;
|
|
/* 022B27B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B27BC */ _t37 = cpu->r[8] + 0x0000000Cu;
|
|
/* 022B27BC */ rbrew_write32(cpu->mem, _t37, cpu->r[12]);
|
|
/* 022B27C0 */ _t38 = cpu->r[7] + 0x00000010u;
|
|
/* 022B27C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B27C0 */ cpu->r[7] = _t38;
|
|
/* 022B27C4 */ _t39 = cpu->r[8] + 0x00000010u;
|
|
/* 022B27C4 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 022B27C4 */ cpu->r[8] = _t39;
|
|
/* 022B27C8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B27C8 */ _t40 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B27C8 */ _t41 = _t40 >> (0x00000002u & 31u);
|
|
/* 022B27C8 */ _t42 = _t41 & 0x00000001u;
|
|
/* 022B27C8 */ if (_t42) goto L_022B27A8; else goto L_022B27CC;
|
|
L_022B27CC: ; // 0x22b27cc
|
|
/* 022B27CC */ cpu->r[4] = cpu->r[29] + 0x00000224u;
|
|
/* 022B27CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 022B27D0 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B27D0 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022B27D0 */ if (_t44) goto L_022B27D4; else goto L_022B27DC;
|
|
L_022B27D4: ; // 0x22b27d4
|
|
/* 022B27D4 */ cpu->r[3] = 0x00000030u;
|
|
/* 022B27D8 */ Gambit_fn_02801A78(cpu);
|
|
L_022B27DC: ; // 0x22b27dc
|
|
/* 022B27DC */ cpu->r[7] = 0x00000003u;
|
|
/* 022B27E0 */ cpu->r[5] = cpu->r[31] + 0xFFFFFFFCu;
|
|
/* 022B27E4 */ cpu->ctr = cpu->r[7];
|
|
/* 022B27E8 */ cpu->r[6] = cpu->r[29] + 0x00000250u;
|
|
L_022B27EC: ; // 0x22b27ec
|
|
/* 022B27EC */ _t45 = cpu->r[5] + 0x00000004u;
|
|
/* 022B27EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B27F0 */ _t46 = cpu->r[6] + 0x00000004u;
|
|
/* 022B27F0 */ rbrew_write32(cpu->mem, _t46, cpu->r[8]);
|
|
/* 022B27F4 */ _t47 = cpu->r[5] + 0x00000008u;
|
|
/* 022B27F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022B27F8 */ _t48 = cpu->r[6] + 0x00000008u;
|
|
/* 022B27F8 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 022B27FC */ _t49 = cpu->r[5] + 0x0000000Cu;
|
|
/* 022B27FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022B2800 */ _t50 = cpu->r[6] + 0x0000000Cu;
|
|
/* 022B2800 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 022B2804 */ _t51 = cpu->r[5] + 0x00000010u;
|
|
/* 022B2804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B2804 */ cpu->r[5] = _t51;
|
|
/* 022B2808 */ _t52 = cpu->r[6] + 0x00000010u;
|
|
/* 022B2808 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 022B2808 */ cpu->r[6] = _t52;
|
|
/* 022B280C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B280C */ _t53 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B280C */ _t54 = _t53 >> (0x00000002u & 31u);
|
|
/* 022B280C */ _t55 = _t54 & 0x00000001u;
|
|
/* 022B280C */ if (_t55) goto L_022B27EC; else goto L_022B2810;
|
|
L_022B2810: ; // 0x22b2810
|
|
/* 022B2810 */ cpu->r[5] = 0x00000003u;
|
|
/* 022B2814 */ cpu->r[12] = cpu->r[31] + 0xFFFFFFFCu;
|
|
/* 022B2818 */ cpu->ctr = cpu->r[5];
|
|
/* 022B281C */ cpu->r[4] = cpu->r[29] + 0x00000280u;
|
|
L_022B2820: ; // 0x22b2820
|
|
/* 022B2820 */ _t56 = cpu->r[12] + 0x00000004u;
|
|
/* 022B2820 */ cpu->r[6] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022B2824 */ _t57 = cpu->r[4] + 0x00000004u;
|
|
/* 022B2824 */ rbrew_write32(cpu->mem, _t57, cpu->r[6]);
|
|
/* 022B2828 */ _t58 = cpu->r[12] + 0x00000008u;
|
|
/* 022B2828 */ cpu->r[7] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022B282C */ _t59 = cpu->r[4] + 0x00000008u;
|
|
/* 022B282C */ rbrew_write32(cpu->mem, _t59, cpu->r[7]);
|
|
/* 022B2830 */ _t60 = cpu->r[12] + 0x0000000Cu;
|
|
/* 022B2830 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022B2834 */ _t61 = cpu->r[4] + 0x0000000Cu;
|
|
/* 022B2834 */ rbrew_write32(cpu->mem, _t61, cpu->r[8]);
|
|
/* 022B2838 */ _t62 = cpu->r[12] + 0x00000010u;
|
|
/* 022B2838 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B2838 */ cpu->r[12] = _t62;
|
|
/* 022B283C */ _t63 = cpu->r[4] + 0x00000010u;
|
|
/* 022B283C */ rbrew_write32(cpu->mem, _t63, cpu->r[9]);
|
|
/* 022B283C */ cpu->r[4] = _t63;
|
|
/* 022B2840 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B2840 */ _t64 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B2840 */ _t65 = _t64 >> (0x00000002u & 31u);
|
|
/* 022B2840 */ _t66 = _t65 & 0x00000001u;
|
|
/* 022B2840 */ if (_t66) goto L_022B2820; else goto L_022B2844;
|
|
L_022B2844: ; // 0x22b2844
|
|
/* 022B2844 */ _t67 = cpu->r[29] + 0x000002BEu;
|
|
/* 022B2844 */ rbrew_write16(cpu->mem, _t67, (uint16_t)cpu->r[28]);
|
|
/* 022B2848 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B284C */ _t68 = cpu->r[29] + 0x000002C2u;
|
|
/* 022B284C */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[28]);
|
|
/* 022B2850 */ _t69 = cpu->r[5] + 0x000037E8u;
|
|
/* 022B2850 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022B2854 */ _t70 = cpu->r[29] + 0x000002C0u;
|
|
/* 022B2854 */ rbrew_write16(cpu->mem, _t70, (uint16_t)cpu->r[28]);
|
|
/* 022B2858 */ _t71 = cpu->r[29] + 0x000002B8u;
|
|
/* 022B2858 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[0]);
|
|
/* 022B285C */ cpu->r[4] = 0x0000005Cu;
|
|
/* 022B2860 */ _t72 = cpu->r[29] + 0x000002C4u;
|
|
/* 022B2860 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 022B2864 */ _t73 = cpu->r[29] + 0x000002BCu;
|
|
/* 022B2864 */ rbrew_write16(cpu->mem, _t73, (uint16_t)cpu->r[28]);
|
|
/* 022B2868 */ cpu->r[3] = cpu->r[29] + 0x000002C8u;
|
|
/* 022B286C */ _t74 = cpu->r[29] + 0x000002B4u;
|
|
/* 022B286C */ rbrew_write_f32(cpu->mem, _t74, cpu->f[0]);
|
|
/* 022B2870 */ Gambit_fn_02C89380(cpu);
|
|
/* 022B2874 */ cpu->r[30] = 0x10060000u;
|
|
/* 022B2878 */ cpu->r[26] = cpu->r[29] + 0x000002C8u;
|
|
/* 022B2878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022B287C */ cpu->r[31] = 0x10060000u;
|
|
/* 022B2880 */ cpu->r[30] = cpu->r[30] + 0x00003864u;
|
|
/* 022B2884 */ cpu->r[31] = cpu->r[31] + 0x00003854u;
|
|
/* 022B2888 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2888 */ _t76 = _t75 & 0x00000001u;
|
|
/* 022B2888 */ if (_t76) goto L_022B288C; else goto L_022B289C;
|
|
L_022B288C: ; // 0x22b288c
|
|
/* 022B288C */ cpu->r[3] = 0x0000005Cu;
|
|
/* 022B2890 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B2894 */ cpu->r[26] = cpu->r[3];
|
|
/* 022B2894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022B2898 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2898 */ _t78 = _t77 & 0x00000001u;
|
|
/* 022B2898 */ if (_t78) goto L_022B28EC; else goto L_022B289C;
|
|
L_022B289C: ; // 0x22b289c
|
|
/* 022B289C */ cpu->r[27] = cpu->r[26];
|
|
/* 022B289C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B28A0 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B28A0 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022B28A0 */ if (_t80) goto L_022B28A4; else goto L_022B28B4;
|
|
L_022B28A4: ; // 0x22b28a4
|
|
/* 022B28A4 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 022B28A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B28AC */ cpu->r[27] = cpu->r[3];
|
|
/* 022B28AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B28B0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B28B0 */ _t82 = _t81 & 0x00000001u;
|
|
/* 022B28B0 */ if (_t82) goto L_022B28D8; else goto L_022B28B4;
|
|
L_022B28B4: ; // 0x22b28b4
|
|
/* 022B28B4 */ cpu->r[10] = cpu->r[27] + 0x00000010u;
|
|
/* 022B28B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B28B8 */ _t83 = cpu->r[27] + 0x00000000u;
|
|
/* 022B28B8 */ rbrew_write32(cpu->mem, _t83, cpu->r[31]);
|
|
/* 022B28BC */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B28BC */ _t85 = _t84 & 0x00000001u;
|
|
/* 022B28BC */ if (_t85) goto L_022B28C0; else goto L_022B28C8;
|
|
L_022B28C0: ; // 0x22b28c0
|
|
/* 022B28C0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022B28C4 */ Gambit_fn_02801A78(cpu);
|
|
L_022B28C8: ; // 0x22b28c8
|
|
/* 022B28C8 */ cpu->r[11] = cpu->r[27] + 0x0000001Cu;
|
|
/* 022B28C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B28CC */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B28CC */ _t87 = _t86 & 0x00000001u;
|
|
/* 022B28CC */ if (_t87) goto L_022B28D0; else goto L_022B28D8;
|
|
L_022B28D0: ; // 0x22b28d0
|
|
/* 022B28D0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022B28D4 */ Gambit_fn_02801A78(cpu);
|
|
L_022B28D8: ; // 0x22b28d8
|
|
/* 022B28D8 */ cpu->r[12] = cpu->r[26] + 0x0000002Cu;
|
|
/* 022B28D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B28DC */ _t88 = cpu->r[26] + 0x00000000u;
|
|
/* 022B28DC */ rbrew_write32(cpu->mem, _t88, cpu->r[30]);
|
|
/* 022B28E0 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B28E0 */ _t90 = _t89 & 0x00000001u;
|
|
/* 022B28E0 */ if (_t90) goto L_022B28E4; else goto L_022B28EC;
|
|
L_022B28E4: ; // 0x22b28e4
|
|
/* 022B28E4 */ cpu->r[3] = 0x00000030u;
|
|
/* 022B28E8 */ Gambit_fn_02801A78(cpu);
|
|
L_022B28EC: ; // 0x22b28ec
|
|
/* 022B28EC */ cpu->r[4] = 0x0000005Cu;
|
|
/* 022B28F0 */ cpu->r[3] = cpu->r[29] + 0x00000328u;
|
|
/* 022B28F4 */ _t91 = cpu->r[29] + 0x00000324u;
|
|
/* 022B28F4 */ rbrew_write32(cpu->mem, _t91, cpu->r[28]);
|
|
/* 022B28F8 */ Gambit_fn_02C89380(cpu);
|
|
/* 022B28FC */ cpu->r[26] = cpu->r[29] + 0x00000328u;
|
|
/* 022B28FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022B2900 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2900 */ _t93 = _t92 & 0x00000001u;
|
|
/* 022B2900 */ if (_t93) goto L_022B2904; else goto L_022B2914;
|
|
L_022B2904: ; // 0x22b2904
|
|
/* 022B2904 */ cpu->r[3] = 0x0000005Cu;
|
|
/* 022B2908 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B290C */ cpu->r[26] = cpu->r[3];
|
|
/* 022B290C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022B2910 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2910 */ _t95 = _t94 & 0x00000001u;
|
|
/* 022B2910 */ if (_t95) goto L_022B2964; else goto L_022B2914;
|
|
L_022B2914: ; // 0x22b2914
|
|
/* 022B2914 */ cpu->r[27] = cpu->r[26];
|
|
/* 022B2914 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B2918 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2918 */ _t97 = _t96 & 0x00000001u;
|
|
/* 022B2918 */ if (_t97) goto L_022B291C; else goto L_022B292C;
|
|
L_022B291C: ; // 0x22b291c
|
|
/* 022B291C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 022B2920 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B2924 */ cpu->r[27] = cpu->r[3];
|
|
/* 022B2924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B2928 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2928 */ _t99 = _t98 & 0x00000001u;
|
|
/* 022B2928 */ if (_t99) goto L_022B2950; else goto L_022B292C;
|
|
L_022B292C: ; // 0x22b292c
|
|
/* 022B292C */ cpu->r[0] = cpu->r[27] + 0x00000010u;
|
|
/* 022B292C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B2930 */ _t100 = cpu->r[27] + 0x00000000u;
|
|
/* 022B2930 */ rbrew_write32(cpu->mem, _t100, cpu->r[31]);
|
|
/* 022B2934 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2934 */ _t102 = _t101 & 0x00000001u;
|
|
/* 022B2934 */ if (_t102) goto L_022B2938; else goto L_022B2940;
|
|
L_022B2938: ; // 0x22b2938
|
|
/* 022B2938 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022B293C */ Gambit_fn_02801A78(cpu);
|
|
L_022B2940: ; // 0x22b2940
|
|
/* 022B2940 */ cpu->r[4] = cpu->r[27] + 0x0000001Cu;
|
|
/* 022B2940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 022B2944 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2944 */ _t104 = _t103 & 0x00000001u;
|
|
/* 022B2944 */ if (_t104) goto L_022B2948; else goto L_022B2950;
|
|
L_022B2948: ; // 0x22b2948
|
|
/* 022B2948 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022B294C */ Gambit_fn_02801A78(cpu);
|
|
L_022B2950: ; // 0x22b2950
|
|
/* 022B2950 */ cpu->r[5] = cpu->r[26] + 0x0000002Cu;
|
|
/* 022B2950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022B2954 */ _t105 = cpu->r[26] + 0x00000000u;
|
|
/* 022B2954 */ rbrew_write32(cpu->mem, _t105, cpu->r[30]);
|
|
/* 022B2958 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2958 */ _t107 = _t106 & 0x00000001u;
|
|
/* 022B2958 */ if (_t107) goto L_022B295C; else goto L_022B2964;
|
|
L_022B295C: ; // 0x22b295c
|
|
/* 022B295C */ cpu->r[3] = 0x00000030u;
|
|
/* 022B2960 */ Gambit_fn_02801A78(cpu);
|
|
L_022B2964: ; // 0x22b2964
|
|
/* 022B2964 */ _t108 = cpu->r[29] + 0x00000384u;
|
|
/* 022B2964 */ rbrew_write32(cpu->mem, _t108, cpu->r[28]);
|
|
/* 022B2968 */ cpu->r[6] = 0x0000003Cu;
|
|
/* 022B296C */ cpu->r[7] = cpu->r[29] + 0x0000038Cu;
|
|
/* 022B296C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B2970 */ _t109 = cpu->r[29] + 0x00000388u;
|
|
/* 022B2970 */ rbrew_write16(cpu->mem, _t109, (uint16_t)cpu->r[6]);
|
|
/* 022B2974 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2974 */ _t111 = _t110 & 0x00000001u;
|
|
/* 022B2974 */ if (_t111) goto L_022B2978; else goto L_022B2980;
|
|
L_022B2978: ; // 0x22b2978
|
|
/* 022B2978 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022B297C */ Gambit_fn_02801A78(cpu);
|
|
L_022B2980: ; // 0x22b2980
|
|
/* 022B2980 */ cpu->r[0] = 0x00000012u;
|
|
/* 022B2984 */ _t112 = cpu->r[29] + 0x00000398u;
|
|
/* 022B2984 */ rbrew_write32(cpu->mem, _t112, cpu->r[28]);
|
|
/* 022B2988 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B298C */ cpu->r[4] = cpu->r[29];
|
|
/* 022B2990 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B2994 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022B2998 */ _t113 = cpu->r[1] + 0x00000008u;
|
|
/* 022B2998 */ rbrew_write8(cpu->mem, _t113, (uint8_t)cpu->r[0]);
|
|
/* 022B299C */ Gambit_fn_022B771C(cpu);
|
|
/* 022B29A0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B29A4 */ cpu->r[4] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B29A8 */ Gambit_fn_02000834(cpu);
|
|
/* 022B29AC */ cpu->r[27] = 0x10060000u;
|
|
/* 022B29B0 */ cpu->r[26] = 0x022B0000u;
|
|
/* 022B29B4 */ cpu->r[27] = cpu->r[27] + 0x00003814u;
|
|
/* 022B29B8 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B29BC */ cpu->r[26] = cpu->r[26] + 0x000071F8u;
|
|
/* 022B29C0 */ cpu->r[8] = cpu->r[8] + 0x00003994u;
|
|
/* 022B29C4 */ cpu->ctr = cpu->r[26];
|
|
/* 022B29C8 */ _t114 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B29C8 */ rbrew_write32(cpu->mem, _t114, cpu->r[8]);
|
|
/* 022B29CC */ _t115 = cpu->r[1] + 0x00000010u;
|
|
/* 022B29CC */ rbrew_write32(cpu->mem, _t115, cpu->r[27]);
|
|
/* 022B29D0 */ _t116 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B29D0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t116);
|
|
/* 022B29D4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B29D8 */ _t117 = cpu->r[24] + 0x00000000u;
|
|
/* 022B29D8 */ cpu->r[25] = rbrew_read32(cpu->mem, _t117);
|
|
/* 022B29DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B29E0 */ cpu->r[30] = 0x10110000u;
|
|
/* 022B29E4 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B29E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t118);
|
|
/* 022B29E8 */ _t119 = cpu->r[30] + 0x00007399u;
|
|
/* 022B29E8 */ cpu->r[30] = rbrew_read8(cpu->mem, _t119);
|
|
/* 022B29EC */ _t120 = cpu->r[6] + 0x00000000u;
|
|
/* 022B29EC */ cpu->r[9] = rbrew_read8(cpu->mem, _t120);
|
|
/* 022B29F0 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B29F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 022B29F8 */ cpu->r[0] = 0x00080000u;
|
|
/* 022B29FC */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B29FC */ _t122 = _t121 & 0x00000001u;
|
|
/* 022B29FC */ if (_t122) goto L_022B2A24; else goto L_022B2A00;
|
|
L_022B2A00: ; // 0x22b2a00
|
|
/* 022B2A00 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B2A04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 022B2A08 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 022B2A0C */ _t123 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2A0C */ _t124 = _t123 & 0x00000001u;
|
|
/* 022B2A0C */ if (_t124) goto L_022B2A20; else goto L_022B2A10;
|
|
L_022B2A10: ; // 0x22b2a10
|
|
/* 022B2A10 */ _t125 = cpu->r[6] + 0x00000000u;
|
|
/* 022B2A10 */ cpu->r[10] = rbrew_read8(cpu->mem, _t125);
|
|
/* 022B2A14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 022B2A18 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2A18 */ _t127 = _t126 & 0x00000001u;
|
|
/* 022B2A18 */ if (_t127) goto L_022B2A1C; else goto L_022B2A00;
|
|
L_022B2A1C: ; // 0x22b2a1c
|
|
/* 022B2A1C */ goto L_022B2A24;
|
|
L_022B2A20: ; // 0x22b2a20
|
|
/* 022B2A20 */ cpu->r[31] = 0x00000000u;
|
|
L_022B2A24: ; // 0x22b2a24
|
|
/* 022B2A24 */ _t128 = cpu->r[24] + 0x00000008u;
|
|
/* 022B2A24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t128);
|
|
/* 022B2A28 */ _t129 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2A28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t129);
|
|
/* 022B2A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 022B2A30 */ _t130 = cpu->r[11] + 0x00000014u;
|
|
/* 022B2A30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t130);
|
|
/* 022B2A34 */ _t131 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B2A34 */ _t132 = _t131 & 0x00000001u;
|
|
/* 022B2A34 */ if (_t132) goto L_022B2A3C; else goto L_022B2A38;
|
|
L_022B2A38: ; // 0x22b2a38
|
|
/* 022B2A38 */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_022B2A3C: ; // 0x22b2a3c
|
|
/* 022B2A3C */ cpu->ctr = cpu->r[5];
|
|
/* 022B2A40 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2A44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2A48 */ _t133 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2A48 */ cpu->r[4] = rbrew_read32(cpu->mem, _t133);
|
|
/* 022B2A4C */ cpu->r[3] = cpu->r[25];
|
|
/* 022B2A50 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B2A54 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B2A58 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B2A5C */ _t134 = cpu->r[25] + cpu->r[31];
|
|
/* 022B2A5C */ rbrew_write8(cpu->mem, _t134, (uint8_t)cpu->r[30]);
|
|
/* 022B2A60 */ cpu->r[6] = 0x022B0000u;
|
|
/* 022B2A64 */ _t135 = cpu->r[1] + 0x00000024u;
|
|
/* 022B2A64 */ rbrew_write16(cpu->mem, _t135, (uint16_t)cpu->r[28]);
|
|
/* 022B2A68 */ cpu->r[6] = cpu->r[6] + 0x00005398u;
|
|
/* 022B2A6C */ _t136 = cpu->r[1] + 0x00000028u;
|
|
/* 022B2A6C */ rbrew_write32(cpu->mem, _t136, cpu->r[28]);
|
|
/* 022B2A70 */ cpu->r[7] = 0x00000000u;
|
|
/* 022B2A74 */ _t137 = cpu->r[1] + 0x00000014u;
|
|
/* 022B2A74 */ rbrew_write16(cpu->mem, _t137, (uint16_t)cpu->r[28]);
|
|
/* 022B2A78 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022B2A7C */ _t138 = cpu->r[1] + 0x00000008u;
|
|
/* 022B2A7C */ rbrew_write8(cpu->mem, _t138, (uint8_t)cpu->r[7]);
|
|
/* 022B2A80 */ _t139 = cpu->r[1] + 0x00000026u;
|
|
/* 022B2A80 */ rbrew_write16(cpu->mem, _t139, (uint16_t)cpu->r[28]);
|
|
/* 022B2A84 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 022B2A88 */ cpu->r[8] = 0x022B0000u;
|
|
/* 022B2A8C */ _t140 = cpu->r[1] + 0x00000018u;
|
|
/* 022B2A8C */ rbrew_write32(cpu->mem, _t140, cpu->r[6]);
|
|
/* 022B2A90 */ cpu->r[8] = cpu->r[8] + 0x00005400u;
|
|
/* 022B2A94 */ _t141 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B2A94 */ rbrew_write16(cpu->mem, _t141, (uint16_t)cpu->r[9]);
|
|
/* 022B2A98 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B2A9C */ _t142 = cpu->r[1] + 0x00000020u;
|
|
/* 022B2A9C */ rbrew_write32(cpu->mem, _t142, cpu->r[8]);
|
|
/* 022B2AA0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B2AA4 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2AA8 */ _t143 = cpu->r[1] + 0x00000016u;
|
|
/* 022B2AA8 */ rbrew_write16(cpu->mem, _t143, (uint16_t)cpu->r[9]);
|
|
/* 022B2AAC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B2AB0 */ _t144 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2AB0 */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[28]);
|
|
/* 022B2AB4 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B2AB8 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B2ABC */ _t145 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2ABC */ rbrew_write32(cpu->mem, _t145, cpu->r[27]);
|
|
/* 022B2AC0 */ cpu->r[0] = cpu->r[0] + 0x000039B4u;
|
|
/* 022B2AC4 */ _t146 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2AC4 */ rbrew_write32(cpu->mem, _t146, cpu->r[0]);
|
|
/* 022B2AC8 */ _t147 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B2AC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t147);
|
|
/* 022B2ACC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022B2AD0 */ _t148 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B2AD0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t148);
|
|
/* 022B2AD4 */ _t149 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2AD4 */ _t150 = _t149 & 0x00000001u;
|
|
/* 022B2AD4 */ if (_t150) goto L_022B2AD8; else goto L_022B2ADC;
|
|
L_022B2AD8: ; // 0x22b2ad8
|
|
/* 022B2AD8 */ cpu->r[25] = cpu->r[25] + 0x00000024u;
|
|
L_022B2ADC: ; // 0x22b2adc
|
|
/* 022B2ADC */ cpu->ctr = cpu->r[26];
|
|
/* 022B2AE0 */ _t151 = cpu->r[25] + 0x00000000u;
|
|
/* 022B2AE0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t151);
|
|
/* 022B2AE4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2AE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2AEC */ _t152 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2AEC */ cpu->r[4] = rbrew_read32(cpu->mem, _t152);
|
|
/* 022B2AF0 */ _t153 = cpu->r[4] + 0x00000000u;
|
|
/* 022B2AF0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t153);
|
|
/* 022B2AF4 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B2AF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]);
|
|
/* 022B2AFC */ cpu->r[5] = 0x00080000u;
|
|
/* 022B2B00 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2B00 */ _t155 = _t154 & 0x00000001u;
|
|
/* 022B2B00 */ if (_t155) goto L_022B2B28; else goto L_022B2B04;
|
|
L_022B2B04: ; // 0x22b2b04
|
|
/* 022B2B04 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B2B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 022B2B0C */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 022B2B10 */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2B10 */ _t157 = _t156 & 0x00000001u;
|
|
/* 022B2B10 */ if (_t157) goto L_022B2B24; else goto L_022B2B14;
|
|
L_022B2B14: ; // 0x22b2b14
|
|
/* 022B2B14 */ _t158 = cpu->r[4] + 0x00000000u;
|
|
/* 022B2B14 */ cpu->r[0] = rbrew_read8(cpu->mem, _t158);
|
|
/* 022B2B18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 022B2B1C */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2B1C */ _t160 = _t159 & 0x00000001u;
|
|
/* 022B2B1C */ if (_t160) goto L_022B2B20; else goto L_022B2B04;
|
|
L_022B2B20: ; // 0x22b2b20
|
|
/* 022B2B20 */ goto L_022B2B28;
|
|
L_022B2B24: ; // 0x22b2b24
|
|
/* 022B2B24 */ cpu->r[31] = 0x00000000u;
|
|
L_022B2B28: ; // 0x22b2b28
|
|
/* 022B2B28 */ _t161 = cpu->r[25] + 0x00000008u;
|
|
/* 022B2B28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t161);
|
|
/* 022B2B2C */ _t162 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2B2C */ cpu->r[6] = rbrew_read32(cpu->mem, _t162);
|
|
/* 022B2B30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022B2B34 */ _t163 = cpu->r[6] + 0x00000014u;
|
|
/* 022B2B34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t163);
|
|
/* 022B2B38 */ _t164 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B2B38 */ _t165 = _t164 & 0x00000001u;
|
|
/* 022B2B38 */ if (_t165) goto L_022B2B40; else goto L_022B2B3C;
|
|
L_022B2B3C: ; // 0x22b2b3c
|
|
/* 022B2B3C */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_022B2B40: ; // 0x22b2b40
|
|
/* 022B2B40 */ cpu->ctr = cpu->r[0];
|
|
/* 022B2B44 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2B48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2B4C */ _t166 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2B4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t166);
|
|
/* 022B2B50 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B2B54 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B2B58 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B2B5C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B2B60 */ _t167 = cpu->r[24] + cpu->r[31];
|
|
/* 022B2B60 */ rbrew_write8(cpu->mem, _t167, (uint8_t)cpu->r[30]);
|
|
/* 022B2B64 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B2B68 */ _t168 = cpu->r[1] + 0x00000028u;
|
|
/* 022B2B68 */ rbrew_write32(cpu->mem, _t168, cpu->r[28]);
|
|
/* 022B2B6C */ cpu->r[8] = 0x022B0000u;
|
|
/* 022B2B70 */ _t169 = cpu->r[1] + 0x00000008u;
|
|
/* 022B2B70 */ rbrew_write8(cpu->mem, _t169, (uint8_t)cpu->r[0]);
|
|
/* 022B2B74 */ cpu->r[11] = 0x022B0000u;
|
|
/* 022B2B78 */ _t170 = cpu->r[1] + 0x00000024u;
|
|
/* 022B2B78 */ rbrew_write16(cpu->mem, _t170, (uint16_t)cpu->r[28]);
|
|
/* 022B2B7C */ cpu->r[11] = cpu->r[11] + 0x00005560u;
|
|
/* 022B2B80 */ _t171 = cpu->r[1] + 0x00000026u;
|
|
/* 022B2B80 */ rbrew_write16(cpu->mem, _t171, (uint16_t)cpu->r[28]);
|
|
/* 022B2B84 */ _t172 = cpu->r[1] + 0x00000018u;
|
|
/* 022B2B84 */ rbrew_write32(cpu->mem, _t172, cpu->r[11]);
|
|
/* 022B2B88 */ cpu->r[8] = cpu->r[8] + 0x000054ECu;
|
|
/* 022B2B8C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B2B90 */ _t173 = cpu->r[1] + 0x00000020u;
|
|
/* 022B2B90 */ rbrew_write32(cpu->mem, _t173, cpu->r[8]);
|
|
/* 022B2B94 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 022B2B98 */ _t174 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2B98 */ rbrew_write16(cpu->mem, _t174, (uint16_t)cpu->r[28]);
|
|
/* 022B2B9C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B2BA0 */ _t175 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B2BA0 */ rbrew_write16(cpu->mem, _t175, (uint16_t)cpu->r[4]);
|
|
/* 022B2BA4 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B2BA8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B2BAC */ _t176 = cpu->r[1] + 0x00000016u;
|
|
/* 022B2BAC */ rbrew_write16(cpu->mem, _t176, (uint16_t)cpu->r[4]);
|
|
/* 022B2BB0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2BB4 */ _t177 = cpu->r[1] + 0x00000014u;
|
|
/* 022B2BB4 */ rbrew_write16(cpu->mem, _t177, (uint16_t)cpu->r[28]);
|
|
/* 022B2BB8 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B2BBC */ cpu->r[12] = 0x10060000u;
|
|
/* 022B2BC0 */ _t178 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2BC0 */ rbrew_write32(cpu->mem, _t178, cpu->r[27]);
|
|
/* 022B2BC4 */ cpu->r[12] = cpu->r[12] + 0x000039C4u;
|
|
/* 022B2BC8 */ _t179 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2BC8 */ rbrew_write32(cpu->mem, _t179, cpu->r[12]);
|
|
/* 022B2BCC */ _t180 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B2BCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t180);
|
|
/* 022B2BD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022B2BD4 */ _t181 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B2BD4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t181);
|
|
/* 022B2BD8 */ _t182 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2BD8 */ _t183 = _t182 & 0x00000001u;
|
|
/* 022B2BD8 */ if (_t183) goto L_022B2BDC; else goto L_022B2BE0;
|
|
L_022B2BDC: ; // 0x22b2bdc
|
|
/* 022B2BDC */ cpu->r[25] = cpu->r[25] + 0x00000048u;
|
|
L_022B2BE0: ; // 0x22b2be0
|
|
/* 022B2BE0 */ cpu->ctr = cpu->r[26];
|
|
/* 022B2BE4 */ _t184 = cpu->r[25] + 0x00000000u;
|
|
/* 022B2BE4 */ cpu->r[24] = rbrew_read32(cpu->mem, _t184);
|
|
/* 022B2BE8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2BEC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2BF0 */ _t185 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2BF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t185);
|
|
/* 022B2BF4 */ _t186 = cpu->r[12] + 0x00000000u;
|
|
/* 022B2BF4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t186);
|
|
/* 022B2BF8 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B2BFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 022B2C00 */ cpu->r[0] = 0x00080000u;
|
|
/* 022B2C04 */ _t187 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2C04 */ _t188 = _t187 & 0x00000001u;
|
|
/* 022B2C04 */ if (_t188) goto L_022B2C2C; else goto L_022B2C08;
|
|
L_022B2C08: ; // 0x22b2c08
|
|
/* 022B2C08 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B2C0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 022B2C10 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022B2C14 */ _t189 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2C14 */ _t190 = _t189 & 0x00000001u;
|
|
/* 022B2C14 */ if (_t190) goto L_022B2C28; else goto L_022B2C18;
|
|
L_022B2C18: ; // 0x22b2c18
|
|
/* 022B2C18 */ _t191 = cpu->r[12] + 0x00000000u;
|
|
/* 022B2C18 */ cpu->r[5] = rbrew_read8(cpu->mem, _t191);
|
|
/* 022B2C1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022B2C20 */ _t192 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2C20 */ _t193 = _t192 & 0x00000001u;
|
|
/* 022B2C20 */ if (_t193) goto L_022B2C24; else goto L_022B2C08;
|
|
L_022B2C24: ; // 0x22b2c24
|
|
/* 022B2C24 */ goto L_022B2C2C;
|
|
L_022B2C28: ; // 0x22b2c28
|
|
/* 022B2C28 */ cpu->r[31] = 0x00000000u;
|
|
L_022B2C2C: ; // 0x22b2c2c
|
|
/* 022B2C2C */ _t194 = cpu->r[25] + 0x00000008u;
|
|
/* 022B2C2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t194);
|
|
/* 022B2C30 */ _t195 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2C30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t195);
|
|
/* 022B2C34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 022B2C38 */ _t196 = cpu->r[6] + 0x00000014u;
|
|
/* 022B2C38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t196);
|
|
/* 022B2C3C */ _t197 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B2C3C */ _t198 = _t197 & 0x00000001u;
|
|
/* 022B2C3C */ if (_t198) goto L_022B2C44; else goto L_022B2C40;
|
|
L_022B2C40: ; // 0x22b2c40
|
|
/* 022B2C40 */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_022B2C44: ; // 0x22b2c44
|
|
/* 022B2C44 */ cpu->ctr = cpu->r[7];
|
|
/* 022B2C48 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2C4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2C50 */ _t199 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2C50 */ cpu->r[4] = rbrew_read32(cpu->mem, _t199);
|
|
/* 022B2C54 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B2C58 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B2C5C */ cpu->r[3] = cpu->r[24];
|
|
/* 022B2C60 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B2C64 */ _t200 = cpu->r[24] + cpu->r[31];
|
|
/* 022B2C64 */ rbrew_write8(cpu->mem, _t200, (uint8_t)cpu->r[30]);
|
|
/* 022B2C68 */ cpu->r[0] = 0x00000002u;
|
|
/* 022B2C6C */ _t201 = cpu->r[1] + 0x00000024u;
|
|
/* 022B2C6C */ rbrew_write16(cpu->mem, _t201, (uint16_t)cpu->r[28]);
|
|
/* 022B2C70 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 022B2C74 */ _t202 = cpu->r[1] + 0x00000008u;
|
|
/* 022B2C74 */ rbrew_write8(cpu->mem, _t202, (uint8_t)cpu->r[0]);
|
|
/* 022B2C78 */ cpu->r[8] = 0x022B0000u;
|
|
/* 022B2C7C */ _t203 = cpu->r[1] + 0x00000016u;
|
|
/* 022B2C7C */ rbrew_write16(cpu->mem, _t203, (uint16_t)cpu->r[10]);
|
|
/* 022B2C80 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022B2C84 */ _t204 = cpu->r[1] + 0x00000026u;
|
|
/* 022B2C84 */ rbrew_write16(cpu->mem, _t204, (uint16_t)cpu->r[28]);
|
|
/* 022B2C88 */ _t205 = cpu->r[1] + 0x00000014u;
|
|
/* 022B2C88 */ rbrew_write16(cpu->mem, _t205, (uint16_t)cpu->r[28]);
|
|
/* 022B2C8C */ cpu->r[12] = cpu->r[12] + 0x00005718u;
|
|
/* 022B2C90 */ _t206 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B2C90 */ rbrew_write16(cpu->mem, _t206, (uint16_t)cpu->r[10]);
|
|
/* 022B2C94 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B2C98 */ _t207 = cpu->r[1] + 0x00000018u;
|
|
/* 022B2C98 */ rbrew_write32(cpu->mem, _t207, cpu->r[12]);
|
|
/* 022B2C9C */ cpu->r[8] = cpu->r[8] + 0x000056B0u;
|
|
/* 022B2CA0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B2CA4 */ _t208 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2CA4 */ rbrew_write16(cpu->mem, _t208, (uint16_t)cpu->r[28]);
|
|
/* 022B2CA8 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B2CAC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B2CB0 */ _t209 = cpu->r[1] + 0x00000020u;
|
|
/* 022B2CB0 */ rbrew_write32(cpu->mem, _t209, cpu->r[8]);
|
|
/* 022B2CB4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2CB8 */ _t210 = cpu->r[1] + 0x00000028u;
|
|
/* 022B2CB8 */ rbrew_write32(cpu->mem, _t210, cpu->r[28]);
|
|
/* 022B2CBC */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B2CC0 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B2CC4 */ _t211 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2CC4 */ rbrew_write32(cpu->mem, _t211, cpu->r[27]);
|
|
/* 022B2CC8 */ cpu->r[0] = cpu->r[0] + 0x00003A18u;
|
|
/* 022B2CCC */ _t212 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2CCC */ rbrew_write32(cpu->mem, _t212, cpu->r[0]);
|
|
/* 022B2CD0 */ _t213 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B2CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t213);
|
|
/* 022B2CD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 022B2CD8 */ _t214 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B2CD8 */ cpu->r[25] = rbrew_read32(cpu->mem, _t214);
|
|
/* 022B2CDC */ _t215 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2CDC */ _t216 = _t215 & 0x00000001u;
|
|
/* 022B2CDC */ if (_t216) goto L_022B2CE0; else goto L_022B2CE4;
|
|
L_022B2CE0: ; // 0x22b2ce0
|
|
/* 022B2CE0 */ cpu->r[25] = cpu->r[25] + 0x0000006Cu;
|
|
L_022B2CE4: ; // 0x22b2ce4
|
|
/* 022B2CE4 */ cpu->ctr = cpu->r[26];
|
|
/* 022B2CE8 */ _t217 = cpu->r[25] + 0x00000000u;
|
|
/* 022B2CE8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t217);
|
|
/* 022B2CEC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2CF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2CF4 */ _t218 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2CF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t218);
|
|
/* 022B2CF8 */ _t219 = cpu->r[10] + 0x00000000u;
|
|
/* 022B2CF8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t219);
|
|
/* 022B2CFC */ cpu->r[31] = 0x00000000u;
|
|
/* 022B2D00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022B2D04 */ cpu->r[11] = 0x00080000u;
|
|
/* 022B2D08 */ _t220 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2D08 */ _t221 = _t220 & 0x00000001u;
|
|
/* 022B2D08 */ if (_t221) goto L_022B2D30; else goto L_022B2D0C;
|
|
L_022B2D0C: ; // 0x22b2d0c
|
|
/* 022B2D0C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B2D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 022B2D14 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 022B2D18 */ _t222 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2D18 */ _t223 = _t222 & 0x00000001u;
|
|
/* 022B2D18 */ if (_t223) goto L_022B2D2C; else goto L_022B2D1C;
|
|
L_022B2D1C: ; // 0x22b2d1c
|
|
/* 022B2D1C */ _t224 = cpu->r[10] + 0x00000000u;
|
|
/* 022B2D1C */ cpu->r[6] = rbrew_read8(cpu->mem, _t224);
|
|
/* 022B2D20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022B2D24 */ _t225 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2D24 */ _t226 = _t225 & 0x00000001u;
|
|
/* 022B2D24 */ if (_t226) goto L_022B2D28; else goto L_022B2D0C;
|
|
L_022B2D28: ; // 0x22b2d28
|
|
/* 022B2D28 */ goto L_022B2D30;
|
|
L_022B2D2C: ; // 0x22b2d2c
|
|
/* 022B2D2C */ cpu->r[31] = 0x00000000u;
|
|
L_022B2D30: ; // 0x22b2d30
|
|
/* 022B2D30 */ _t227 = cpu->r[25] + 0x00000008u;
|
|
/* 022B2D30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t227);
|
|
/* 022B2D34 */ _t228 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2D34 */ cpu->r[7] = rbrew_read32(cpu->mem, _t228);
|
|
/* 022B2D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 022B2D3C */ _t229 = cpu->r[7] + 0x00000014u;
|
|
/* 022B2D3C */ cpu->r[8] = rbrew_read32(cpu->mem, _t229);
|
|
/* 022B2D40 */ _t230 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B2D40 */ _t231 = _t230 & 0x00000001u;
|
|
/* 022B2D40 */ if (_t231) goto L_022B2D48; else goto L_022B2D44;
|
|
L_022B2D44: ; // 0x22b2d44
|
|
/* 022B2D44 */ cpu->r[31] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_022B2D48: ; // 0x22b2d48
|
|
/* 022B2D48 */ cpu->ctr = cpu->r[8];
|
|
/* 022B2D4C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2D54 */ _t232 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2D54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t232);
|
|
/* 022B2D58 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B2D5C */ cpu->r[5] = cpu->r[31];
|
|
/* 022B2D60 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B2D64 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B2D68 */ _t233 = cpu->r[24] + cpu->r[31];
|
|
/* 022B2D68 */ rbrew_write8(cpu->mem, _t233, (uint8_t)cpu->r[30]);
|
|
/* 022B2D6C */ cpu->r[11] = 0x022B0000u;
|
|
/* 022B2D70 */ _t234 = cpu->r[1] + 0x00000014u;
|
|
/* 022B2D70 */ rbrew_write16(cpu->mem, _t234, (uint16_t)cpu->r[28]);
|
|
/* 022B2D74 */ cpu->r[11] = cpu->r[11] + 0x000058A0u;
|
|
/* 022B2D78 */ _t235 = cpu->r[1] + 0x00000026u;
|
|
/* 022B2D78 */ rbrew_write16(cpu->mem, _t235, (uint16_t)cpu->r[28]);
|
|
/* 022B2D7C */ cpu->r[4] = 0x00000003u;
|
|
/* 022B2D80 */ _t236 = cpu->r[1] + 0x00000018u;
|
|
/* 022B2D80 */ rbrew_write32(cpu->mem, _t236, cpu->r[11]);
|
|
/* 022B2D84 */ cpu->r[9] = 0x022B0000u;
|
|
/* 022B2D88 */ _t237 = cpu->r[1] + 0x00000008u;
|
|
/* 022B2D88 */ rbrew_write8(cpu->mem, _t237, (uint8_t)cpu->r[4]);
|
|
/* 022B2D8C */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 022B2D90 */ _t238 = cpu->r[1] + 0x00000028u;
|
|
/* 022B2D90 */ rbrew_write32(cpu->mem, _t238, cpu->r[28]);
|
|
/* 022B2D94 */ cpu->r[9] = cpu->r[9] + 0x00007684u;
|
|
/* 022B2D98 */ _t239 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B2D98 */ rbrew_write16(cpu->mem, _t239, (uint16_t)cpu->r[6]);
|
|
/* 022B2D9C */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B2DA0 */ _t240 = cpu->r[1] + 0x00000016u;
|
|
/* 022B2DA0 */ rbrew_write16(cpu->mem, _t240, (uint16_t)cpu->r[6]);
|
|
/* 022B2DA4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B2DA8 */ _t241 = cpu->r[1] + 0x00000020u;
|
|
/* 022B2DA8 */ rbrew_write32(cpu->mem, _t241, cpu->r[9]);
|
|
/* 022B2DAC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B2DB0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B2DB4 */ _t242 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2DB4 */ rbrew_write16(cpu->mem, _t242, (uint16_t)cpu->r[28]);
|
|
/* 022B2DB8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2DBC */ _t243 = cpu->r[1] + 0x00000024u;
|
|
/* 022B2DBC */ rbrew_write16(cpu->mem, _t243, (uint16_t)cpu->r[28]);
|
|
/* 022B2DC0 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B2DC4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B2DC8 */ _t244 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2DC8 */ rbrew_write32(cpu->mem, _t244, cpu->r[27]);
|
|
/* 022B2DCC */ cpu->r[12] = cpu->r[12] + 0x000039A0u;
|
|
/* 022B2DD0 */ _t245 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2DD0 */ rbrew_write32(cpu->mem, _t245, cpu->r[12]);
|
|
/* 022B2DD4 */ _t246 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B2DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t246);
|
|
/* 022B2DD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 022B2DDC */ _t247 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B2DDC */ cpu->r[25] = rbrew_read32(cpu->mem, _t247);
|
|
/* 022B2DE0 */ _t248 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2DE0 */ _t249 = _t248 & 0x00000001u;
|
|
/* 022B2DE0 */ if (_t249) goto L_022B2DE4; else goto L_022B2DE8;
|
|
L_022B2DE4: ; // 0x22b2de4
|
|
/* 022B2DE4 */ cpu->r[25] = cpu->r[25] + 0x00000090u;
|
|
L_022B2DE8: ; // 0x22b2de8
|
|
/* 022B2DE8 */ cpu->ctr = cpu->r[26];
|
|
/* 022B2DEC */ _t250 = cpu->r[25] + 0x00000000u;
|
|
/* 022B2DEC */ cpu->r[24] = rbrew_read32(cpu->mem, _t250);
|
|
/* 022B2DF0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2DF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2DF8 */ _t251 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2DF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t251);
|
|
/* 022B2DFC */ _t252 = cpu->r[8] + 0x00000000u;
|
|
/* 022B2DFC */ cpu->r[4] = rbrew_read8(cpu->mem, _t252);
|
|
/* 022B2E00 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B2E04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022B2E08 */ cpu->r[9] = 0x00080000u;
|
|
/* 022B2E0C */ _t253 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2E0C */ _t254 = _t253 & 0x00000001u;
|
|
/* 022B2E0C */ if (_t254) goto L_022B2E34; else goto L_022B2E10;
|
|
L_022B2E10: ; // 0x22b2e10
|
|
/* 022B2E10 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B2E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022B2E18 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 022B2E1C */ _t255 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2E1C */ _t256 = _t255 & 0x00000001u;
|
|
/* 022B2E1C */ if (_t256) goto L_022B2E30; else goto L_022B2E20;
|
|
L_022B2E20: ; // 0x22b2e20
|
|
/* 022B2E20 */ _t257 = cpu->r[8] + 0x00000000u;
|
|
/* 022B2E20 */ cpu->r[0] = rbrew_read8(cpu->mem, _t257);
|
|
/* 022B2E24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 022B2E28 */ _t258 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2E28 */ _t259 = _t258 & 0x00000001u;
|
|
/* 022B2E28 */ if (_t259) goto L_022B2E2C; else goto L_022B2E10;
|
|
L_022B2E2C: ; // 0x22b2e2c
|
|
/* 022B2E2C */ goto L_022B2E34;
|
|
L_022B2E30: ; // 0x22b2e30
|
|
/* 022B2E30 */ cpu->r[31] = 0x00000000u;
|
|
L_022B2E34: ; // 0x22b2e34
|
|
/* 022B2E34 */ _t260 = cpu->r[25] + 0x00000008u;
|
|
/* 022B2E34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t260);
|
|
/* 022B2E38 */ _t261 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2E38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t261);
|
|
/* 022B2E3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 022B2E40 */ _t262 = cpu->r[6] + 0x00000014u;
|
|
/* 022B2E40 */ cpu->r[7] = rbrew_read32(cpu->mem, _t262);
|
|
/* 022B2E44 */ _t263 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B2E44 */ _t264 = _t263 & 0x00000001u;
|
|
/* 022B2E44 */ if (_t264) goto L_022B2E4C; else goto L_022B2E48;
|
|
L_022B2E48: ; // 0x22b2e48
|
|
/* 022B2E48 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_022B2E4C: ; // 0x22b2e4c
|
|
/* 022B2E4C */ cpu->ctr = cpu->r[7];
|
|
/* 022B2E50 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2E54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2E58 */ _t265 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2E58 */ cpu->r[4] = rbrew_read32(cpu->mem, _t265);
|
|
/* 022B2E5C */ cpu->r[3] = cpu->r[24];
|
|
/* 022B2E60 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B2E64 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B2E68 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B2E6C */ _t266 = cpu->r[24] + cpu->r[31];
|
|
/* 022B2E6C */ rbrew_write8(cpu->mem, _t266, (uint8_t)cpu->r[30]);
|
|
/* 022B2E70 */ cpu->r[0] = 0x00000004u;
|
|
/* 022B2E74 */ _t267 = cpu->r[1] + 0x00000028u;
|
|
/* 022B2E74 */ rbrew_write32(cpu->mem, _t267, cpu->r[28]);
|
|
/* 022B2E78 */ cpu->r[8] = 0x022B0000u;
|
|
/* 022B2E7C */ _t268 = cpu->r[1] + 0x00000008u;
|
|
/* 022B2E7C */ rbrew_write8(cpu->mem, _t268, (uint8_t)cpu->r[0]);
|
|
/* 022B2E80 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022B2E84 */ _t269 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2E84 */ rbrew_write16(cpu->mem, _t269, (uint16_t)cpu->r[28]);
|
|
/* 022B2E88 */ cpu->r[10] = 0x022B0000u;
|
|
/* 022B2E8C */ _t270 = cpu->r[1] + 0x00000024u;
|
|
/* 022B2E8C */ rbrew_write16(cpu->mem, _t270, (uint16_t)cpu->r[28]);
|
|
/* 022B2E90 */ _t271 = cpu->r[1] + 0x00000026u;
|
|
/* 022B2E90 */ rbrew_write16(cpu->mem, _t271, (uint16_t)cpu->r[28]);
|
|
/* 022B2E94 */ cpu->r[8] = cpu->r[8] + 0x00005918u;
|
|
/* 022B2E98 */ _t272 = cpu->r[1] + 0x00000016u;
|
|
/* 022B2E98 */ rbrew_write16(cpu->mem, _t272, (uint16_t)cpu->r[0]);
|
|
/* 022B2E9C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B2EA0 */ _t273 = cpu->r[1] + 0x00000020u;
|
|
/* 022B2EA0 */ rbrew_write32(cpu->mem, _t273, cpu->r[8]);
|
|
/* 022B2EA4 */ cpu->r[10] = cpu->r[10] + 0x00005974u;
|
|
/* 022B2EA8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B2EAC */ _t274 = cpu->r[1] + 0x00000014u;
|
|
/* 022B2EAC */ rbrew_write16(cpu->mem, _t274, (uint16_t)cpu->r[28]);
|
|
/* 022B2EB0 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B2EB4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B2EB8 */ _t275 = cpu->r[1] + 0x00000018u;
|
|
/* 022B2EB8 */ rbrew_write32(cpu->mem, _t275, cpu->r[10]);
|
|
/* 022B2EBC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2EC0 */ _t276 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B2EC0 */ rbrew_write16(cpu->mem, _t276, (uint16_t)cpu->r[0]);
|
|
/* 022B2EC4 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B2EC8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B2ECC */ _t277 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2ECC */ rbrew_write32(cpu->mem, _t277, cpu->r[27]);
|
|
/* 022B2ED0 */ cpu->r[12] = cpu->r[12] + 0x00003904u;
|
|
/* 022B2ED4 */ _t278 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2ED4 */ rbrew_write32(cpu->mem, _t278, cpu->r[12]);
|
|
/* 022B2ED8 */ _t279 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B2ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t279);
|
|
/* 022B2EDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000005u);
|
|
/* 022B2EE0 */ _t280 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B2EE0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t280);
|
|
/* 022B2EE4 */ _t281 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2EE4 */ _t282 = _t281 & 0x00000001u;
|
|
/* 022B2EE4 */ if (_t282) goto L_022B2EE8; else goto L_022B2EEC;
|
|
L_022B2EE8: ; // 0x22b2ee8
|
|
/* 022B2EE8 */ cpu->r[25] = cpu->r[25] + 0x000000B4u;
|
|
L_022B2EEC: ; // 0x22b2eec
|
|
/* 022B2EEC */ cpu->ctr = cpu->r[26];
|
|
/* 022B2EF0 */ _t283 = cpu->r[25] + 0x00000000u;
|
|
/* 022B2EF0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t283);
|
|
/* 022B2EF4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2EF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2EFC */ _t284 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2EFC */ cpu->r[6] = rbrew_read32(cpu->mem, _t284);
|
|
/* 022B2F00 */ _t285 = cpu->r[6] + 0x00000000u;
|
|
/* 022B2F00 */ cpu->r[4] = rbrew_read8(cpu->mem, _t285);
|
|
/* 022B2F04 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B2F08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022B2F0C */ cpu->r[7] = 0x00080000u;
|
|
/* 022B2F10 */ _t286 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2F10 */ _t287 = _t286 & 0x00000001u;
|
|
/* 022B2F10 */ if (_t287) goto L_022B2F38; else goto L_022B2F14;
|
|
L_022B2F14: ; // 0x22b2f14
|
|
/* 022B2F14 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B2F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 022B2F1C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 022B2F20 */ _t288 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2F20 */ _t289 = _t288 & 0x00000001u;
|
|
/* 022B2F20 */ if (_t289) goto L_022B2F34; else goto L_022B2F24;
|
|
L_022B2F24: ; // 0x22b2f24
|
|
/* 022B2F24 */ _t290 = cpu->r[6] + 0x00000000u;
|
|
/* 022B2F24 */ cpu->r[5] = rbrew_read8(cpu->mem, _t290);
|
|
/* 022B2F28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022B2F2C */ _t291 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B2F2C */ _t292 = _t291 & 0x00000001u;
|
|
/* 022B2F2C */ if (_t292) goto L_022B2F30; else goto L_022B2F14;
|
|
L_022B2F30: ; // 0x22b2f30
|
|
/* 022B2F30 */ goto L_022B2F38;
|
|
L_022B2F34: ; // 0x22b2f34
|
|
/* 022B2F34 */ cpu->r[31] = 0x00000000u;
|
|
L_022B2F38: ; // 0x22b2f38
|
|
/* 022B2F38 */ _t293 = cpu->r[25] + 0x00000008u;
|
|
/* 022B2F38 */ cpu->r[4] = rbrew_read32(cpu->mem, _t293);
|
|
/* 022B2F3C */ _t294 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2F3C */ cpu->r[6] = rbrew_read32(cpu->mem, _t294);
|
|
/* 022B2F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 022B2F44 */ _t295 = cpu->r[6] + 0x00000014u;
|
|
/* 022B2F44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t295);
|
|
/* 022B2F48 */ _t296 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B2F48 */ _t297 = _t296 & 0x00000001u;
|
|
/* 022B2F48 */ if (_t297) goto L_022B2F50; else goto L_022B2F4C;
|
|
L_022B2F4C: ; // 0x22b2f4c
|
|
/* 022B2F4C */ cpu->r[31] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_022B2F50: ; // 0x22b2f50
|
|
/* 022B2F50 */ cpu->ctr = cpu->r[0];
|
|
/* 022B2F54 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2F58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B2F5C */ _t298 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2F5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t298);
|
|
/* 022B2F60 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B2F64 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B2F68 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B2F6C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B2F70 */ _t299 = cpu->r[24] + cpu->r[31];
|
|
/* 022B2F70 */ rbrew_write8(cpu->mem, _t299, (uint8_t)cpu->r[30]);
|
|
/* 022B2F74 */ cpu->r[10] = 0x00000005u;
|
|
/* 022B2F78 */ _t300 = cpu->r[1] + 0x00000024u;
|
|
/* 022B2F78 */ rbrew_write16(cpu->mem, _t300, (uint16_t)cpu->r[28]);
|
|
/* 022B2F7C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 022B2F80 */ _t301 = cpu->r[1] + 0x00000008u;
|
|
/* 022B2F80 */ rbrew_write8(cpu->mem, _t301, (uint8_t)cpu->r[10]);
|
|
/* 022B2F84 */ cpu->r[8] = 0x022B0000u;
|
|
/* 022B2F88 */ _t302 = cpu->r[1] + 0x00000016u;
|
|
/* 022B2F88 */ rbrew_write16(cpu->mem, _t302, (uint16_t)cpu->r[11]);
|
|
/* 022B2F8C */ cpu->r[12] = 0x022B0000u;
|
|
/* 022B2F90 */ _t303 = cpu->r[1] + 0x00000026u;
|
|
/* 022B2F90 */ rbrew_write16(cpu->mem, _t303, (uint16_t)cpu->r[28]);
|
|
/* 022B2F94 */ _t304 = cpu->r[1] + 0x00000014u;
|
|
/* 022B2F94 */ rbrew_write16(cpu->mem, _t304, (uint16_t)cpu->r[28]);
|
|
/* 022B2F98 */ cpu->r[12] = cpu->r[12] + 0x00005BD8u;
|
|
/* 022B2F9C */ _t305 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B2F9C */ rbrew_write16(cpu->mem, _t305, (uint16_t)cpu->r[11]);
|
|
/* 022B2FA0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B2FA4 */ _t306 = cpu->r[1] + 0x00000018u;
|
|
/* 022B2FA4 */ rbrew_write32(cpu->mem, _t306, cpu->r[12]);
|
|
/* 022B2FA8 */ cpu->r[8] = cpu->r[8] + 0x00005BB4u;
|
|
/* 022B2FAC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B2FB0 */ _t307 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2FB0 */ rbrew_write16(cpu->mem, _t307, (uint16_t)cpu->r[28]);
|
|
/* 022B2FB4 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B2FB8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B2FBC */ _t308 = cpu->r[1] + 0x00000020u;
|
|
/* 022B2FBC */ rbrew_write32(cpu->mem, _t308, cpu->r[8]);
|
|
/* 022B2FC0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B2FC4 */ _t309 = cpu->r[1] + 0x00000028u;
|
|
/* 022B2FC4 */ rbrew_write32(cpu->mem, _t309, cpu->r[28]);
|
|
/* 022B2FC8 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B2FCC */ cpu->r[0] = 0x10060000u;
|
|
/* 022B2FD0 */ _t310 = cpu->r[1] + 0x00000010u;
|
|
/* 022B2FD0 */ rbrew_write32(cpu->mem, _t310, cpu->r[27]);
|
|
/* 022B2FD4 */ cpu->r[0] = cpu->r[0] + 0x0000391Cu;
|
|
/* 022B2FD8 */ _t311 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2FD8 */ rbrew_write32(cpu->mem, _t311, cpu->r[0]);
|
|
/* 022B2FDC */ _t312 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B2FDC */ cpu->r[4] = rbrew_read32(cpu->mem, _t312);
|
|
/* 022B2FE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000006u);
|
|
/* 022B2FE4 */ _t313 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B2FE4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t313);
|
|
/* 022B2FE8 */ _t314 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B2FE8 */ _t315 = _t314 & 0x00000001u;
|
|
/* 022B2FE8 */ if (_t315) goto L_022B2FEC; else goto L_022B2FF0;
|
|
L_022B2FEC: ; // 0x22b2fec
|
|
/* 022B2FEC */ cpu->r[25] = cpu->r[25] + 0x000000D8u;
|
|
L_022B2FF0: ; // 0x22b2ff0
|
|
/* 022B2FF0 */ cpu->ctr = cpu->r[26];
|
|
/* 022B2FF4 */ _t316 = cpu->r[25] + 0x00000000u;
|
|
/* 022B2FF4 */ cpu->r[24] = rbrew_read32(cpu->mem, _t316);
|
|
/* 022B2FF8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B2FFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3000 */ _t317 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3000 */ cpu->r[4] = rbrew_read32(cpu->mem, _t317);
|
|
/* 022B3004 */ _t318 = cpu->r[4] + 0x00000000u;
|
|
/* 022B3004 */ cpu->r[5] = rbrew_read8(cpu->mem, _t318);
|
|
/* 022B3008 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B300C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022B3010 */ cpu->r[5] = 0x00080000u;
|
|
/* 022B3014 */ _t319 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3014 */ _t320 = _t319 & 0x00000001u;
|
|
/* 022B3014 */ if (_t320) goto L_022B303C; else goto L_022B3018;
|
|
L_022B3018: ; // 0x22b3018
|
|
/* 022B3018 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B301C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 022B3020 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 022B3024 */ _t321 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3024 */ _t322 = _t321 & 0x00000001u;
|
|
/* 022B3024 */ if (_t322) goto L_022B3038; else goto L_022B3028;
|
|
L_022B3028: ; // 0x22b3028
|
|
/* 022B3028 */ _t323 = cpu->r[4] + 0x00000000u;
|
|
/* 022B3028 */ cpu->r[6] = rbrew_read8(cpu->mem, _t323);
|
|
/* 022B302C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022B3030 */ _t324 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3030 */ _t325 = _t324 & 0x00000001u;
|
|
/* 022B3030 */ if (_t325) goto L_022B3034; else goto L_022B3018;
|
|
L_022B3034: ; // 0x22b3034
|
|
/* 022B3034 */ goto L_022B303C;
|
|
L_022B3038: ; // 0x22b3038
|
|
/* 022B3038 */ cpu->r[31] = 0x00000000u;
|
|
L_022B303C: ; // 0x22b303c
|
|
/* 022B303C */ _t326 = cpu->r[25] + 0x00000008u;
|
|
/* 022B303C */ cpu->r[5] = rbrew_read32(cpu->mem, _t326);
|
|
/* 022B3040 */ _t327 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3040 */ cpu->r[7] = rbrew_read32(cpu->mem, _t327);
|
|
/* 022B3044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 022B3048 */ _t328 = cpu->r[7] + 0x00000014u;
|
|
/* 022B3048 */ cpu->r[8] = rbrew_read32(cpu->mem, _t328);
|
|
/* 022B304C */ _t329 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B304C */ _t330 = _t329 & 0x00000001u;
|
|
/* 022B304C */ if (_t330) goto L_022B3054; else goto L_022B3050;
|
|
L_022B3050: ; // 0x22b3050
|
|
/* 022B3050 */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_022B3054: ; // 0x22b3054
|
|
/* 022B3054 */ cpu->ctr = cpu->r[8];
|
|
/* 022B3058 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B305C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3060 */ _t331 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3060 */ cpu->r[4] = rbrew_read32(cpu->mem, _t331);
|
|
/* 022B3064 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3068 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B306C */ cpu->r[3] = cpu->r[24];
|
|
/* 022B3070 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3074 */ _t332 = cpu->r[24] + cpu->r[31];
|
|
/* 022B3074 */ rbrew_write8(cpu->mem, _t332, (uint8_t)cpu->r[30]);
|
|
/* 022B3078 */ cpu->r[0] = 0x00000006u;
|
|
/* 022B307C */ _t333 = cpu->r[1] + 0x00000024u;
|
|
/* 022B307C */ rbrew_write16(cpu->mem, _t333, (uint16_t)cpu->r[28]);
|
|
/* 022B3080 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 022B3084 */ _t334 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3084 */ rbrew_write8(cpu->mem, _t334, (uint8_t)cpu->r[0]);
|
|
/* 022B3088 */ cpu->r[9] = 0x022B0000u;
|
|
/* 022B308C */ _t335 = cpu->r[1] + 0x00000016u;
|
|
/* 022B308C */ rbrew_write16(cpu->mem, _t335, (uint16_t)cpu->r[10]);
|
|
/* 022B3090 */ cpu->r[11] = 0x022B0000u;
|
|
/* 022B3094 */ _t336 = cpu->r[1] + 0x00000026u;
|
|
/* 022B3094 */ rbrew_write16(cpu->mem, _t336, (uint16_t)cpu->r[28]);
|
|
/* 022B3098 */ _t337 = cpu->r[1] + 0x00000014u;
|
|
/* 022B3098 */ rbrew_write16(cpu->mem, _t337, (uint16_t)cpu->r[28]);
|
|
/* 022B309C */ cpu->r[11] = cpu->r[11] + 0x00005CB8u;
|
|
/* 022B30A0 */ _t338 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B30A0 */ rbrew_write16(cpu->mem, _t338, (uint16_t)cpu->r[10]);
|
|
/* 022B30A4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B30A8 */ _t339 = cpu->r[1] + 0x00000018u;
|
|
/* 022B30A8 */ rbrew_write32(cpu->mem, _t339, cpu->r[11]);
|
|
/* 022B30AC */ cpu->r[9] = cpu->r[9] + 0x00005C9Cu;
|
|
/* 022B30B0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B30B4 */ _t340 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B30B4 */ rbrew_write16(cpu->mem, _t340, (uint16_t)cpu->r[28]);
|
|
/* 022B30B8 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B30BC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B30C0 */ _t341 = cpu->r[1] + 0x00000020u;
|
|
/* 022B30C0 */ rbrew_write32(cpu->mem, _t341, cpu->r[9]);
|
|
/* 022B30C4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B30C8 */ _t342 = cpu->r[1] + 0x00000028u;
|
|
/* 022B30C8 */ rbrew_write32(cpu->mem, _t342, cpu->r[28]);
|
|
/* 022B30CC */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B30D0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B30D4 */ _t343 = cpu->r[1] + 0x00000010u;
|
|
/* 022B30D4 */ rbrew_write32(cpu->mem, _t343, cpu->r[27]);
|
|
/* 022B30D8 */ cpu->r[12] = cpu->r[12] + 0x00003934u;
|
|
/* 022B30DC */ _t344 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B30DC */ rbrew_write32(cpu->mem, _t344, cpu->r[12]);
|
|
/* 022B30E0 */ _t345 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B30E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t345);
|
|
/* 022B30E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000007u);
|
|
/* 022B30E8 */ _t346 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B30E8 */ cpu->r[25] = rbrew_read32(cpu->mem, _t346);
|
|
/* 022B30EC */ _t347 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B30EC */ _t348 = _t347 & 0x00000001u;
|
|
/* 022B30EC */ if (_t348) goto L_022B30F0; else goto L_022B30F4;
|
|
L_022B30F0: ; // 0x22b30f0
|
|
/* 022B30F0 */ cpu->r[25] = cpu->r[25] + 0x000000FCu;
|
|
L_022B30F4: ; // 0x22b30f4
|
|
/* 022B30F4 */ cpu->ctr = cpu->r[26];
|
|
/* 022B30F8 */ _t349 = cpu->r[25] + 0x00000000u;
|
|
/* 022B30F8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t349);
|
|
/* 022B30FC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3100 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3104 */ _t350 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3104 */ cpu->r[12] = rbrew_read32(cpu->mem, _t350);
|
|
/* 022B3108 */ _t351 = cpu->r[12] + 0x00000000u;
|
|
/* 022B3108 */ cpu->r[4] = rbrew_read8(cpu->mem, _t351);
|
|
/* 022B310C */ cpu->r[31] = 0x00000000u;
|
|
/* 022B3110 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022B3114 */ cpu->r[0] = 0x00080000u;
|
|
/* 022B3118 */ _t352 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3118 */ _t353 = _t352 & 0x00000001u;
|
|
/* 022B3118 */ if (_t353) goto L_022B3140; else goto L_022B311C;
|
|
L_022B311C: ; // 0x22b311c
|
|
/* 022B311C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B3120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 022B3124 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022B3128 */ _t354 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3128 */ _t355 = _t354 & 0x00000001u;
|
|
/* 022B3128 */ if (_t355) goto L_022B313C; else goto L_022B312C;
|
|
L_022B312C: ; // 0x22b312c
|
|
/* 022B312C */ _t356 = cpu->r[12] + 0x00000000u;
|
|
/* 022B312C */ cpu->r[5] = rbrew_read8(cpu->mem, _t356);
|
|
/* 022B3130 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022B3134 */ _t357 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3134 */ _t358 = _t357 & 0x00000001u;
|
|
/* 022B3134 */ if (_t358) goto L_022B3138; else goto L_022B311C;
|
|
L_022B3138: ; // 0x22b3138
|
|
/* 022B3138 */ goto L_022B3140;
|
|
L_022B313C: ; // 0x22b313c
|
|
/* 022B313C */ cpu->r[31] = 0x00000000u;
|
|
L_022B3140: ; // 0x22b3140
|
|
/* 022B3140 */ _t359 = cpu->r[25] + 0x00000008u;
|
|
/* 022B3140 */ cpu->r[6] = rbrew_read32(cpu->mem, _t359);
|
|
/* 022B3144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 022B3148 */ _t360 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3148 */ _t361 = _t360 & 0x00000001u;
|
|
/* 022B3148 */ if (_t361) goto L_022B3150; else goto L_022B314C;
|
|
L_022B314C: ; // 0x22b314c
|
|
/* 022B314C */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_022B3150: ; // 0x22b3150
|
|
/* 022B3150 */ _t362 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3150 */ cpu->r[6] = rbrew_read32(cpu->mem, _t362);
|
|
/* 022B3154 */ _t363 = cpu->r[6] + 0x00000014u;
|
|
/* 022B3154 */ cpu->r[7] = rbrew_read32(cpu->mem, _t363);
|
|
/* 022B3158 */ cpu->ctr = cpu->r[7];
|
|
/* 022B315C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3160 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3164 */ _t364 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3164 */ cpu->r[4] = rbrew_read32(cpu->mem, _t364);
|
|
/* 022B3168 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B316C */ cpu->r[5] = cpu->r[31];
|
|
/* 022B3170 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B3174 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3178 */ _t365 = cpu->r[24] + cpu->r[31];
|
|
/* 022B3178 */ rbrew_write8(cpu->mem, _t365, (uint8_t)cpu->r[30]);
|
|
/* 022B317C */ cpu->r[0] = 0x00000007u;
|
|
/* 022B3180 */ _t366 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B3180 */ rbrew_write16(cpu->mem, _t366, (uint16_t)cpu->r[28]);
|
|
/* 022B3184 */ cpu->r[11] = 0x022B0000u;
|
|
/* 022B3188 */ _t367 = cpu->r[1] + 0x00000024u;
|
|
/* 022B3188 */ rbrew_write16(cpu->mem, _t367, (uint16_t)cpu->r[28]);
|
|
/* 022B318C */ cpu->r[11] = cpu->r[11] + 0x0000611Cu;
|
|
/* 022B3190 */ _t368 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3190 */ rbrew_write8(cpu->mem, _t368, (uint8_t)cpu->r[0]);
|
|
/* 022B3194 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 022B3198 */ _t369 = cpu->r[1] + 0x00000026u;
|
|
/* 022B3198 */ rbrew_write16(cpu->mem, _t369, (uint16_t)cpu->r[28]);
|
|
/* 022B319C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B31A0 */ _t370 = cpu->r[1] + 0x00000016u;
|
|
/* 022B31A0 */ rbrew_write16(cpu->mem, _t370, (uint16_t)cpu->r[9]);
|
|
/* 022B31A4 */ cpu->r[8] = 0x022B0000u;
|
|
/* 022B31A8 */ _t371 = cpu->r[1] + 0x00000014u;
|
|
/* 022B31A8 */ rbrew_write16(cpu->mem, _t371, (uint16_t)cpu->r[28]);
|
|
/* 022B31AC */ cpu->r[8] = cpu->r[8] + 0x00007688u;
|
|
/* 022B31B0 */ _t372 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B31B0 */ rbrew_write16(cpu->mem, _t372, (uint16_t)cpu->r[9]);
|
|
/* 022B31B4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B31B8 */ _t373 = cpu->r[1] + 0x00000018u;
|
|
/* 022B31B8 */ rbrew_write32(cpu->mem, _t373, cpu->r[11]);
|
|
/* 022B31BC */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B31C0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B31C4 */ _t374 = cpu->r[1] + 0x00000020u;
|
|
/* 022B31C4 */ rbrew_write32(cpu->mem, _t374, cpu->r[8]);
|
|
/* 022B31C8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B31CC */ _t375 = cpu->r[1] + 0x00000028u;
|
|
/* 022B31CC */ rbrew_write32(cpu->mem, _t375, cpu->r[28]);
|
|
/* 022B31D0 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B31D4 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B31D8 */ _t376 = cpu->r[1] + 0x00000010u;
|
|
/* 022B31D8 */ rbrew_write32(cpu->mem, _t376, cpu->r[27]);
|
|
/* 022B31DC */ cpu->r[4] = cpu->r[4] + 0x000039D4u;
|
|
/* 022B31E0 */ _t377 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B31E0 */ rbrew_write32(cpu->mem, _t377, cpu->r[4]);
|
|
/* 022B31E4 */ _t378 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B31E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t378);
|
|
/* 022B31E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000008u);
|
|
/* 022B31EC */ _t379 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B31EC */ cpu->r[25] = rbrew_read32(cpu->mem, _t379);
|
|
/* 022B31F0 */ _t380 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B31F0 */ _t381 = _t380 & 0x00000001u;
|
|
/* 022B31F0 */ if (_t381) goto L_022B31F4; else goto L_022B31F8;
|
|
L_022B31F4: ; // 0x22b31f4
|
|
/* 022B31F4 */ cpu->r[25] = cpu->r[25] + 0x00000120u;
|
|
L_022B31F8: ; // 0x22b31f8
|
|
/* 022B31F8 */ cpu->ctr = cpu->r[26];
|
|
/* 022B31FC */ _t382 = cpu->r[25] + 0x00000000u;
|
|
/* 022B31FC */ cpu->r[24] = rbrew_read32(cpu->mem, _t382);
|
|
/* 022B3200 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3204 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3208 */ _t383 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3208 */ cpu->r[10] = rbrew_read32(cpu->mem, _t383);
|
|
/* 022B320C */ _t384 = cpu->r[10] + 0x00000000u;
|
|
/* 022B320C */ cpu->r[6] = rbrew_read8(cpu->mem, _t384);
|
|
/* 022B3210 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B3214 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022B3218 */ cpu->r[11] = 0x00080000u;
|
|
/* 022B321C */ _t385 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B321C */ _t386 = _t385 & 0x00000001u;
|
|
/* 022B321C */ if (_t386) goto L_022B3244; else goto L_022B3220;
|
|
L_022B3220: ; // 0x22b3220
|
|
/* 022B3220 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B3224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 022B3228 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 022B322C */ _t387 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B322C */ _t388 = _t387 & 0x00000001u;
|
|
/* 022B322C */ if (_t388) goto L_022B3240; else goto L_022B3230;
|
|
L_022B3230: ; // 0x22b3230
|
|
/* 022B3230 */ _t389 = cpu->r[10] + 0x00000000u;
|
|
/* 022B3230 */ cpu->r[7] = rbrew_read8(cpu->mem, _t389);
|
|
/* 022B3234 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 022B3238 */ _t390 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3238 */ _t391 = _t390 & 0x00000001u;
|
|
/* 022B3238 */ if (_t391) goto L_022B323C; else goto L_022B3220;
|
|
L_022B323C: ; // 0x22b323c
|
|
/* 022B323C */ goto L_022B3244;
|
|
L_022B3240: ; // 0x22b3240
|
|
/* 022B3240 */ cpu->r[31] = 0x00000000u;
|
|
L_022B3244: ; // 0x22b3244
|
|
/* 022B3244 */ _t392 = cpu->r[25] + 0x00000008u;
|
|
/* 022B3244 */ cpu->r[7] = rbrew_read32(cpu->mem, _t392);
|
|
/* 022B3248 */ _t393 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3248 */ cpu->r[8] = rbrew_read32(cpu->mem, _t393);
|
|
/* 022B324C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 022B3250 */ _t394 = cpu->r[8] + 0x00000014u;
|
|
/* 022B3250 */ cpu->r[9] = rbrew_read32(cpu->mem, _t394);
|
|
/* 022B3254 */ _t395 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3254 */ _t396 = _t395 & 0x00000001u;
|
|
/* 022B3254 */ if (_t396) goto L_022B325C; else goto L_022B3258;
|
|
L_022B3258: ; // 0x22b3258
|
|
/* 022B3258 */ cpu->r[31] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_022B325C: ; // 0x22b325c
|
|
/* 022B325C */ cpu->ctr = cpu->r[9];
|
|
/* 022B3260 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3264 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3268 */ _t397 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3268 */ cpu->r[4] = rbrew_read32(cpu->mem, _t397);
|
|
/* 022B326C */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3270 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B3274 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B3278 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B327C */ _t398 = cpu->r[24] + cpu->r[31];
|
|
/* 022B327C */ rbrew_write8(cpu->mem, _t398, (uint8_t)cpu->r[30]);
|
|
/* 022B3280 */ cpu->r[0] = 0x00000008u;
|
|
/* 022B3284 */ _t399 = cpu->r[1] + 0x00000024u;
|
|
/* 022B3284 */ rbrew_write16(cpu->mem, _t399, (uint16_t)cpu->r[28]);
|
|
/* 022B3288 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 022B328C */ _t400 = cpu->r[1] + 0x00000008u;
|
|
/* 022B328C */ rbrew_write8(cpu->mem, _t400, (uint8_t)cpu->r[0]);
|
|
/* 022B3290 */ cpu->r[10] = 0x022B0000u;
|
|
/* 022B3294 */ _t401 = cpu->r[1] + 0x00000016u;
|
|
/* 022B3294 */ rbrew_write16(cpu->mem, _t401, (uint16_t)cpu->r[8]);
|
|
/* 022B3298 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022B329C */ _t402 = cpu->r[1] + 0x00000026u;
|
|
/* 022B329C */ rbrew_write16(cpu->mem, _t402, (uint16_t)cpu->r[28]);
|
|
/* 022B32A0 */ _t403 = cpu->r[1] + 0x00000014u;
|
|
/* 022B32A0 */ rbrew_write16(cpu->mem, _t403, (uint16_t)cpu->r[28]);
|
|
/* 022B32A4 */ cpu->r[12] = cpu->r[12] + 0x0000623Cu;
|
|
/* 022B32A8 */ _t404 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B32A8 */ rbrew_write16(cpu->mem, _t404, (uint16_t)cpu->r[8]);
|
|
/* 022B32AC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B32B0 */ _t405 = cpu->r[1] + 0x00000018u;
|
|
/* 022B32B0 */ rbrew_write32(cpu->mem, _t405, cpu->r[12]);
|
|
/* 022B32B4 */ cpu->r[10] = cpu->r[10] + 0x0000768Cu;
|
|
/* 022B32B8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B32BC */ _t406 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B32BC */ rbrew_write16(cpu->mem, _t406, (uint16_t)cpu->r[28]);
|
|
/* 022B32C0 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B32C4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B32C8 */ _t407 = cpu->r[1] + 0x00000020u;
|
|
/* 022B32C8 */ rbrew_write32(cpu->mem, _t407, cpu->r[10]);
|
|
/* 022B32CC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B32D0 */ _t408 = cpu->r[1] + 0x00000028u;
|
|
/* 022B32D0 */ rbrew_write32(cpu->mem, _t408, cpu->r[28]);
|
|
/* 022B32D4 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B32D8 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B32DC */ _t409 = cpu->r[1] + 0x00000010u;
|
|
/* 022B32DC */ rbrew_write32(cpu->mem, _t409, cpu->r[27]);
|
|
/* 022B32E0 */ cpu->r[0] = cpu->r[0] + 0x0000394Cu;
|
|
/* 022B32E4 */ _t410 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B32E4 */ rbrew_write32(cpu->mem, _t410, cpu->r[0]);
|
|
/* 022B32E8 */ _t411 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B32E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t411);
|
|
/* 022B32EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000009u);
|
|
/* 022B32F0 */ _t412 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B32F0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t412);
|
|
/* 022B32F4 */ _t413 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B32F4 */ _t414 = _t413 & 0x00000001u;
|
|
/* 022B32F4 */ if (_t414) goto L_022B32F8; else goto L_022B32FC;
|
|
L_022B32F8: ; // 0x22b32f8
|
|
/* 022B32F8 */ cpu->r[25] = cpu->r[25] + 0x00000144u;
|
|
L_022B32FC: ; // 0x22b32fc
|
|
/* 022B32FC */ cpu->ctr = cpu->r[26];
|
|
/* 022B3300 */ _t415 = cpu->r[25] + 0x00000000u;
|
|
/* 022B3300 */ cpu->r[24] = rbrew_read32(cpu->mem, _t415);
|
|
/* 022B3304 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3308 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B330C */ _t416 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B330C */ cpu->r[8] = rbrew_read32(cpu->mem, _t416);
|
|
/* 022B3310 */ _t417 = cpu->r[8] + 0x00000000u;
|
|
/* 022B3310 */ cpu->r[5] = rbrew_read8(cpu->mem, _t417);
|
|
/* 022B3314 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B3318 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022B331C */ cpu->r[9] = 0x00080000u;
|
|
/* 022B3320 */ _t418 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3320 */ _t419 = _t418 & 0x00000001u;
|
|
/* 022B3320 */ if (_t419) goto L_022B3348; else goto L_022B3324;
|
|
L_022B3324: ; // 0x22b3324
|
|
/* 022B3324 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B3328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022B332C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 022B3330 */ _t420 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3330 */ _t421 = _t420 & 0x00000001u;
|
|
/* 022B3330 */ if (_t421) goto L_022B3344; else goto L_022B3334;
|
|
L_022B3334: ; // 0x22b3334
|
|
/* 022B3334 */ _t422 = cpu->r[8] + 0x00000000u;
|
|
/* 022B3334 */ cpu->r[0] = rbrew_read8(cpu->mem, _t422);
|
|
/* 022B3338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 022B333C */ _t423 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B333C */ _t424 = _t423 & 0x00000001u;
|
|
/* 022B333C */ if (_t424) goto L_022B3340; else goto L_022B3324;
|
|
L_022B3340: ; // 0x22b3340
|
|
/* 022B3340 */ goto L_022B3348;
|
|
L_022B3344: ; // 0x22b3344
|
|
/* 022B3344 */ cpu->r[31] = 0x00000000u;
|
|
L_022B3348: ; // 0x22b3348
|
|
/* 022B3348 */ _t425 = cpu->r[25] + 0x00000008u;
|
|
/* 022B3348 */ cpu->r[8] = rbrew_read32(cpu->mem, _t425);
|
|
/* 022B334C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 022B3350 */ _t426 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3350 */ cpu->r[7] = rbrew_read32(cpu->mem, _t426);
|
|
/* 022B3354 */ _t427 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3354 */ _t428 = _t427 & 0x00000001u;
|
|
/* 022B3354 */ if (_t428) goto L_022B335C; else goto L_022B3358;
|
|
L_022B3358: ; // 0x22b3358
|
|
/* 022B3358 */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_022B335C: ; // 0x22b335c
|
|
/* 022B335C */ _t429 = cpu->r[7] + 0x00000014u;
|
|
/* 022B335C */ cpu->r[8] = rbrew_read32(cpu->mem, _t429);
|
|
/* 022B3360 */ cpu->ctr = cpu->r[8];
|
|
/* 022B3364 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3368 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B336C */ _t430 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B336C */ cpu->r[4] = rbrew_read32(cpu->mem, _t430);
|
|
/* 022B3370 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B3374 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B3378 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B337C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3380 */ _t431 = cpu->r[24] + cpu->r[31];
|
|
/* 022B3380 */ rbrew_write8(cpu->mem, _t431, (uint8_t)cpu->r[30]);
|
|
/* 022B3384 */ cpu->r[9] = 0x022B0000u;
|
|
/* 022B3388 */ _t432 = cpu->r[1] + 0x00000028u;
|
|
/* 022B3388 */ rbrew_write32(cpu->mem, _t432, cpu->r[28]);
|
|
/* 022B338C */ cpu->r[11] = 0x022B0000u;
|
|
/* 022B3390 */ _t433 = cpu->r[1] + 0x00000024u;
|
|
/* 022B3390 */ rbrew_write16(cpu->mem, _t433, (uint16_t)cpu->r[28]);
|
|
/* 022B3394 */ cpu->r[11] = cpu->r[11] + 0x00006428u;
|
|
/* 022B3398 */ _t434 = cpu->r[1] + 0x00000026u;
|
|
/* 022B3398 */ rbrew_write16(cpu->mem, _t434, (uint16_t)cpu->r[28]);
|
|
/* 022B339C */ _t435 = cpu->r[1] + 0x00000018u;
|
|
/* 022B339C */ rbrew_write32(cpu->mem, _t435, cpu->r[11]);
|
|
/* 022B33A0 */ cpu->r[8] = 0x00000009u;
|
|
/* 022B33A4 */ _t436 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B33A4 */ rbrew_write16(cpu->mem, _t436, (uint16_t)cpu->r[28]);
|
|
/* 022B33A8 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 022B33AC */ _t437 = cpu->r[1] + 0x00000008u;
|
|
/* 022B33AC */ rbrew_write8(cpu->mem, _t437, (uint8_t)cpu->r[8]);
|
|
/* 022B33B0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B33B4 */ _t438 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B33B4 */ rbrew_write16(cpu->mem, _t438, (uint16_t)cpu->r[4]);
|
|
/* 022B33B8 */ cpu->r[9] = cpu->r[9] + 0x00006404u;
|
|
/* 022B33BC */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B33C0 */ _t439 = cpu->r[1] + 0x00000016u;
|
|
/* 022B33C0 */ rbrew_write16(cpu->mem, _t439, (uint16_t)cpu->r[4]);
|
|
/* 022B33C4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B33C8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B33CC */ _t440 = cpu->r[1] + 0x00000014u;
|
|
/* 022B33CC */ rbrew_write16(cpu->mem, _t440, (uint16_t)cpu->r[28]);
|
|
/* 022B33D0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B33D4 */ _t441 = cpu->r[1] + 0x00000020u;
|
|
/* 022B33D4 */ rbrew_write32(cpu->mem, _t441, cpu->r[9]);
|
|
/* 022B33D8 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B33DC */ cpu->r[12] = 0x10060000u;
|
|
/* 022B33E0 */ _t442 = cpu->r[1] + 0x00000010u;
|
|
/* 022B33E0 */ rbrew_write32(cpu->mem, _t442, cpu->r[27]);
|
|
/* 022B33E4 */ cpu->r[12] = cpu->r[12] + 0x00003964u;
|
|
/* 022B33E8 */ _t443 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B33E8 */ rbrew_write32(cpu->mem, _t443, cpu->r[12]);
|
|
/* 022B33EC */ _t444 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B33EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t444);
|
|
/* 022B33F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Au);
|
|
/* 022B33F4 */ _t445 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B33F4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t445);
|
|
/* 022B33F8 */ _t446 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B33F8 */ _t447 = _t446 & 0x00000001u;
|
|
/* 022B33F8 */ if (_t447) goto L_022B33FC; else goto L_022B3400;
|
|
L_022B33FC: ; // 0x22b33fc
|
|
/* 022B33FC */ cpu->r[25] = cpu->r[25] + 0x00000168u;
|
|
L_022B3400: ; // 0x22b3400
|
|
/* 022B3400 */ cpu->ctr = cpu->r[26];
|
|
/* 022B3404 */ _t448 = cpu->r[25] + 0x00000000u;
|
|
/* 022B3404 */ cpu->r[24] = rbrew_read32(cpu->mem, _t448);
|
|
/* 022B3408 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B340C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3410 */ _t449 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3410 */ cpu->r[6] = rbrew_read32(cpu->mem, _t449);
|
|
/* 022B3414 */ _t450 = cpu->r[6] + 0x00000000u;
|
|
/* 022B3414 */ cpu->r[4] = rbrew_read8(cpu->mem, _t450);
|
|
/* 022B3418 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B341C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022B3420 */ cpu->r[7] = 0x00080000u;
|
|
/* 022B3424 */ _t451 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3424 */ _t452 = _t451 & 0x00000001u;
|
|
/* 022B3424 */ if (_t452) goto L_022B344C; else goto L_022B3428;
|
|
L_022B3428: ; // 0x22b3428
|
|
/* 022B3428 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B342C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 022B3430 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 022B3434 */ _t453 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3434 */ _t454 = _t453 & 0x00000001u;
|
|
/* 022B3434 */ if (_t454) goto L_022B3448; else goto L_022B3438;
|
|
L_022B3438: ; // 0x22b3438
|
|
/* 022B3438 */ _t455 = cpu->r[6] + 0x00000000u;
|
|
/* 022B3438 */ cpu->r[5] = rbrew_read8(cpu->mem, _t455);
|
|
/* 022B343C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022B3440 */ _t456 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3440 */ _t457 = _t456 & 0x00000001u;
|
|
/* 022B3440 */ if (_t457) goto L_022B3444; else goto L_022B3428;
|
|
L_022B3444: ; // 0x22b3444
|
|
/* 022B3444 */ goto L_022B344C;
|
|
L_022B3448: ; // 0x22b3448
|
|
/* 022B3448 */ cpu->r[31] = 0x00000000u;
|
|
L_022B344C: ; // 0x22b344c
|
|
/* 022B344C */ _t458 = cpu->r[25] + 0x00000008u;
|
|
/* 022B344C */ cpu->r[9] = rbrew_read32(cpu->mem, _t458);
|
|
/* 022B3450 */ _t459 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3450 */ cpu->r[8] = rbrew_read32(cpu->mem, _t459);
|
|
/* 022B3454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022B3458 */ _t460 = cpu->r[8] + 0x00000014u;
|
|
/* 022B3458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t460);
|
|
/* 022B345C */ _t461 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B345C */ _t462 = _t461 & 0x00000001u;
|
|
/* 022B345C */ if (_t462) goto L_022B3464; else goto L_022B3460;
|
|
L_022B3460: ; // 0x22b3460
|
|
/* 022B3460 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_022B3464: ; // 0x22b3464
|
|
/* 022B3464 */ cpu->ctr = cpu->r[0];
|
|
/* 022B3468 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B346C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3470 */ _t463 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3470 */ cpu->r[4] = rbrew_read32(cpu->mem, _t463);
|
|
/* 022B3474 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B3478 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B347C */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3480 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3484 */ _t464 = cpu->r[24] + cpu->r[31];
|
|
/* 022B3484 */ rbrew_write8(cpu->mem, _t464, (uint8_t)cpu->r[30]);
|
|
/* 022B3488 */ cpu->r[0] = 0x0000000Au;
|
|
/* 022B348C */ _t465 = cpu->r[1] + 0x00000028u;
|
|
/* 022B348C */ rbrew_write32(cpu->mem, _t465, cpu->r[28]);
|
|
/* 022B3490 */ cpu->r[10] = 0x022B0000u;
|
|
/* 022B3494 */ _t466 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3494 */ rbrew_write8(cpu->mem, _t466, (uint8_t)cpu->r[0]);
|
|
/* 022B3498 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022B349C */ _t467 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B349C */ rbrew_write16(cpu->mem, _t467, (uint16_t)cpu->r[28]);
|
|
/* 022B34A0 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022B34A4 */ _t468 = cpu->r[1] + 0x00000024u;
|
|
/* 022B34A4 */ rbrew_write16(cpu->mem, _t468, (uint16_t)cpu->r[28]);
|
|
/* 022B34A8 */ _t469 = cpu->r[1] + 0x00000026u;
|
|
/* 022B34A8 */ rbrew_write16(cpu->mem, _t469, (uint16_t)cpu->r[28]);
|
|
/* 022B34AC */ cpu->r[10] = cpu->r[10] + 0x00006540u;
|
|
/* 022B34B0 */ _t470 = cpu->r[1] + 0x00000016u;
|
|
/* 022B34B0 */ rbrew_write16(cpu->mem, _t470, (uint16_t)cpu->r[0]);
|
|
/* 022B34B4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B34B8 */ _t471 = cpu->r[1] + 0x00000020u;
|
|
/* 022B34B8 */ rbrew_write32(cpu->mem, _t471, cpu->r[10]);
|
|
/* 022B34BC */ cpu->r[12] = cpu->r[12] + 0x0000654Cu;
|
|
/* 022B34C0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B34C4 */ _t472 = cpu->r[1] + 0x00000014u;
|
|
/* 022B34C4 */ rbrew_write16(cpu->mem, _t472, (uint16_t)cpu->r[28]);
|
|
/* 022B34C8 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B34CC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B34D0 */ _t473 = cpu->r[1] + 0x00000018u;
|
|
/* 022B34D0 */ rbrew_write32(cpu->mem, _t473, cpu->r[12]);
|
|
/* 022B34D4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B34D8 */ _t474 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B34D8 */ rbrew_write16(cpu->mem, _t474, (uint16_t)cpu->r[0]);
|
|
/* 022B34DC */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B34E0 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B34E4 */ _t475 = cpu->r[1] + 0x00000010u;
|
|
/* 022B34E4 */ rbrew_write32(cpu->mem, _t475, cpu->r[27]);
|
|
/* 022B34E8 */ cpu->r[4] = cpu->r[4] + 0x0000397Cu;
|
|
/* 022B34EC */ _t476 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B34EC */ rbrew_write32(cpu->mem, _t476, cpu->r[4]);
|
|
/* 022B34F0 */ _t477 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B34F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t477);
|
|
/* 022B34F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Bu);
|
|
/* 022B34F8 */ _t478 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B34F8 */ cpu->r[25] = rbrew_read32(cpu->mem, _t478);
|
|
/* 022B34FC */ _t479 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B34FC */ _t480 = _t479 & 0x00000001u;
|
|
/* 022B34FC */ if (_t480) goto L_022B3500; else goto L_022B3504;
|
|
L_022B3500: ; // 0x22b3500
|
|
/* 022B3500 */ cpu->r[25] = cpu->r[25] + 0x0000018Cu;
|
|
L_022B3504: ; // 0x22b3504
|
|
/* 022B3504 */ cpu->ctr = cpu->r[26];
|
|
/* 022B3508 */ _t481 = cpu->r[25] + 0x00000000u;
|
|
/* 022B3508 */ cpu->r[24] = rbrew_read32(cpu->mem, _t481);
|
|
/* 022B350C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3510 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3514 */ _t482 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t482);
|
|
/* 022B3518 */ _t483 = cpu->r[12] + 0x00000000u;
|
|
/* 022B3518 */ cpu->r[6] = rbrew_read8(cpu->mem, _t483);
|
|
/* 022B351C */ cpu->r[31] = 0x00000000u;
|
|
/* 022B3520 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022B3524 */ cpu->r[4] = 0x00080000u;
|
|
/* 022B3528 */ _t484 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3528 */ _t485 = _t484 & 0x00000001u;
|
|
/* 022B3528 */ if (_t485) goto L_022B3550; else goto L_022B352C;
|
|
L_022B352C: ; // 0x22b352c
|
|
/* 022B352C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B3530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 022B3534 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022B3538 */ _t486 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3538 */ _t487 = _t486 & 0x00000001u;
|
|
/* 022B3538 */ if (_t487) goto L_022B354C; else goto L_022B353C;
|
|
L_022B353C: ; // 0x22b353c
|
|
/* 022B353C */ _t488 = cpu->r[12] + 0x00000000u;
|
|
/* 022B353C */ cpu->r[7] = rbrew_read8(cpu->mem, _t488);
|
|
/* 022B3540 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 022B3544 */ _t489 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3544 */ _t490 = _t489 & 0x00000001u;
|
|
/* 022B3544 */ if (_t490) goto L_022B3548; else goto L_022B352C;
|
|
L_022B3548: ; // 0x22b3548
|
|
/* 022B3548 */ goto L_022B3550;
|
|
L_022B354C: ; // 0x22b354c
|
|
/* 022B354C */ cpu->r[31] = 0x00000000u;
|
|
L_022B3550: ; // 0x22b3550
|
|
/* 022B3550 */ _t491 = cpu->r[25] + 0x00000008u;
|
|
/* 022B3550 */ cpu->r[10] = rbrew_read32(cpu->mem, _t491);
|
|
/* 022B3554 */ _t492 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3554 */ cpu->r[8] = rbrew_read32(cpu->mem, _t492);
|
|
/* 022B3558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 022B355C */ _t493 = cpu->r[8] + 0x00000014u;
|
|
/* 022B355C */ cpu->r[9] = rbrew_read32(cpu->mem, _t493);
|
|
/* 022B3560 */ _t494 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3560 */ _t495 = _t494 & 0x00000001u;
|
|
/* 022B3560 */ if (_t495) goto L_022B3568; else goto L_022B3564;
|
|
L_022B3564: ; // 0x22b3564
|
|
/* 022B3564 */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_022B3568: ; // 0x22b3568
|
|
/* 022B3568 */ cpu->ctr = cpu->r[9];
|
|
/* 022B356C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3570 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3574 */ _t496 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3574 */ cpu->r[4] = rbrew_read32(cpu->mem, _t496);
|
|
/* 022B3578 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B357C */ cpu->r[5] = cpu->r[31];
|
|
/* 022B3580 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3584 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3588 */ _t497 = cpu->r[24] + cpu->r[31];
|
|
/* 022B3588 */ rbrew_write8(cpu->mem, _t497, (uint8_t)cpu->r[30]);
|
|
/* 022B358C */ cpu->r[12] = 0x0000000Bu;
|
|
/* 022B3590 */ _t498 = cpu->r[1] + 0x00000026u;
|
|
/* 022B3590 */ rbrew_write16(cpu->mem, _t498, (uint16_t)cpu->r[28]);
|
|
/* 022B3594 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022B3598 */ _t499 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3598 */ rbrew_write8(cpu->mem, _t499, (uint8_t)cpu->r[12]);
|
|
/* 022B359C */ cpu->r[10] = 0x022B0000u;
|
|
/* 022B35A0 */ _t500 = cpu->r[1] + 0x00000024u;
|
|
/* 022B35A0 */ rbrew_write16(cpu->mem, _t500, (uint16_t)cpu->r[28]);
|
|
/* 022B35A4 */ cpu->r[4] = 0x022B0000u;
|
|
/* 022B35A8 */ _t501 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B35A8 */ rbrew_write16(cpu->mem, _t501, (uint16_t)cpu->r[28]);
|
|
/* 022B35AC */ _t502 = cpu->r[1] + 0x00000016u;
|
|
/* 022B35AC */ rbrew_write16(cpu->mem, _t502, (uint16_t)cpu->r[0]);
|
|
/* 022B35B0 */ cpu->r[4] = cpu->r[4] + 0x00006588u;
|
|
/* 022B35B4 */ _t503 = cpu->r[1] + 0x00000014u;
|
|
/* 022B35B4 */ rbrew_write16(cpu->mem, _t503, (uint16_t)cpu->r[28]);
|
|
/* 022B35B8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B35BC */ _t504 = cpu->r[1] + 0x00000018u;
|
|
/* 022B35BC */ rbrew_write32(cpu->mem, _t504, cpu->r[4]);
|
|
/* 022B35C0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B35C4 */ cpu->r[10] = cpu->r[10] + 0x00007690u;
|
|
/* 022B35C8 */ _t505 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B35C8 */ rbrew_write16(cpu->mem, _t505, (uint16_t)cpu->r[0]);
|
|
/* 022B35CC */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B35D0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B35D4 */ _t506 = cpu->r[1] + 0x00000020u;
|
|
/* 022B35D4 */ rbrew_write32(cpu->mem, _t506, cpu->r[10]);
|
|
/* 022B35D8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B35DC */ _t507 = cpu->r[1] + 0x00000028u;
|
|
/* 022B35DC */ rbrew_write32(cpu->mem, _t507, cpu->r[28]);
|
|
/* 022B35E0 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B35E4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B35E8 */ _t508 = cpu->r[1] + 0x00000010u;
|
|
/* 022B35E8 */ rbrew_write32(cpu->mem, _t508, cpu->r[27]);
|
|
/* 022B35EC */ cpu->r[6] = cpu->r[6] + 0x000039E8u;
|
|
/* 022B35F0 */ _t509 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B35F0 */ rbrew_write32(cpu->mem, _t509, cpu->r[6]);
|
|
/* 022B35F4 */ _t510 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B35F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t510);
|
|
/* 022B35F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x0000000Cu);
|
|
/* 022B35FC */ _t511 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B35FC */ cpu->r[25] = rbrew_read32(cpu->mem, _t511);
|
|
/* 022B3600 */ _t512 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3600 */ _t513 = _t512 & 0x00000001u;
|
|
/* 022B3600 */ if (_t513) goto L_022B3604; else goto L_022B3608;
|
|
L_022B3604: ; // 0x22b3604
|
|
/* 022B3604 */ cpu->r[25] = cpu->r[25] + 0x000001B0u;
|
|
L_022B3608: ; // 0x22b3608
|
|
/* 022B3608 */ cpu->ctr = cpu->r[26];
|
|
/* 022B360C */ _t514 = cpu->r[25] + 0x00000000u;
|
|
/* 022B360C */ cpu->r[24] = rbrew_read32(cpu->mem, _t514);
|
|
/* 022B3610 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3614 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3618 */ _t515 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3618 */ cpu->r[10] = rbrew_read32(cpu->mem, _t515);
|
|
/* 022B361C */ _t516 = cpu->r[10] + 0x00000000u;
|
|
/* 022B361C */ cpu->r[8] = rbrew_read8(cpu->mem, _t516);
|
|
/* 022B3620 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B3624 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 022B3628 */ cpu->r[0] = 0x00080000u;
|
|
/* 022B362C */ _t517 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B362C */ _t518 = _t517 & 0x00000001u;
|
|
/* 022B362C */ if (_t518) goto L_022B3654; else goto L_022B3630;
|
|
L_022B3630: ; // 0x22b3630
|
|
/* 022B3630 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B3634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 022B3638 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 022B363C */ _t519 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B363C */ _t520 = _t519 & 0x00000001u;
|
|
/* 022B363C */ if (_t520) goto L_022B3650; else goto L_022B3640;
|
|
L_022B3640: ; // 0x22b3640
|
|
/* 022B3640 */ _t521 = cpu->r[10] + 0x00000000u;
|
|
/* 022B3640 */ cpu->r[9] = rbrew_read8(cpu->mem, _t521);
|
|
/* 022B3644 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 022B3648 */ _t522 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3648 */ _t523 = _t522 & 0x00000001u;
|
|
/* 022B3648 */ if (_t523) goto L_022B364C; else goto L_022B3630;
|
|
L_022B364C: ; // 0x22b364c
|
|
/* 022B364C */ goto L_022B3654;
|
|
L_022B3650: ; // 0x22b3650
|
|
/* 022B3650 */ cpu->r[31] = 0x00000000u;
|
|
L_022B3654: ; // 0x22b3654
|
|
/* 022B3654 */ _t524 = cpu->r[25] + 0x00000008u;
|
|
/* 022B3654 */ cpu->r[11] = rbrew_read32(cpu->mem, _t524);
|
|
/* 022B3658 */ _t525 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3658 */ cpu->r[10] = rbrew_read32(cpu->mem, _t525);
|
|
/* 022B365C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 022B3660 */ _t526 = cpu->r[10] + 0x00000014u;
|
|
/* 022B3660 */ cpu->r[0] = rbrew_read32(cpu->mem, _t526);
|
|
/* 022B3664 */ _t527 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3664 */ _t528 = _t527 & 0x00000001u;
|
|
/* 022B3664 */ if (_t528) goto L_022B366C; else goto L_022B3668;
|
|
L_022B3668: ; // 0x22b3668
|
|
/* 022B3668 */ cpu->r[31] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_022B366C: ; // 0x22b366c
|
|
/* 022B366C */ cpu->ctr = cpu->r[0];
|
|
/* 022B3670 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3674 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3678 */ _t529 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3678 */ cpu->r[4] = rbrew_read32(cpu->mem, _t529);
|
|
/* 022B367C */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3680 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B3684 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B3688 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B368C */ _t530 = cpu->r[24] + cpu->r[31];
|
|
/* 022B368C */ rbrew_write8(cpu->mem, _t530, (uint8_t)cpu->r[30]);
|
|
/* 022B3690 */ cpu->r[10] = 0x0000000Cu;
|
|
/* 022B3694 */ _t531 = cpu->r[1] + 0x00000024u;
|
|
/* 022B3694 */ rbrew_write16(cpu->mem, _t531, (uint16_t)cpu->r[28]);
|
|
/* 022B3698 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 022B369C */ _t532 = cpu->r[1] + 0x00000008u;
|
|
/* 022B369C */ rbrew_write8(cpu->mem, _t532, (uint8_t)cpu->r[10]);
|
|
/* 022B36A0 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022B36A4 */ _t533 = cpu->r[1] + 0x00000016u;
|
|
/* 022B36A4 */ rbrew_write16(cpu->mem, _t533, (uint16_t)cpu->r[11]);
|
|
/* 022B36A8 */ cpu->r[9] = 0x022B0000u;
|
|
/* 022B36AC */ _t534 = cpu->r[1] + 0x00000026u;
|
|
/* 022B36AC */ rbrew_write16(cpu->mem, _t534, (uint16_t)cpu->r[28]);
|
|
/* 022B36B0 */ _t535 = cpu->r[1] + 0x00000014u;
|
|
/* 022B36B0 */ rbrew_write16(cpu->mem, _t535, (uint16_t)cpu->r[28]);
|
|
/* 022B36B4 */ cpu->r[9] = cpu->r[9] + 0x000065E8u;
|
|
/* 022B36B8 */ _t536 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B36B8 */ rbrew_write16(cpu->mem, _t536, (uint16_t)cpu->r[11]);
|
|
/* 022B36BC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B36C0 */ _t537 = cpu->r[1] + 0x00000018u;
|
|
/* 022B36C0 */ rbrew_write32(cpu->mem, _t537, cpu->r[9]);
|
|
/* 022B36C4 */ cpu->r[12] = cpu->r[12] + 0x00007694u;
|
|
/* 022B36C8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B36CC */ _t538 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B36CC */ rbrew_write16(cpu->mem, _t538, (uint16_t)cpu->r[28]);
|
|
/* 022B36D0 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B36D4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B36D8 */ _t539 = cpu->r[1] + 0x00000020u;
|
|
/* 022B36D8 */ rbrew_write32(cpu->mem, _t539, cpu->r[12]);
|
|
/* 022B36DC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B36E0 */ _t540 = cpu->r[1] + 0x00000028u;
|
|
/* 022B36E0 */ rbrew_write32(cpu->mem, _t540, cpu->r[28]);
|
|
/* 022B36E4 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B36E8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B36EC */ _t541 = cpu->r[1] + 0x00000010u;
|
|
/* 022B36EC */ rbrew_write32(cpu->mem, _t541, cpu->r[27]);
|
|
/* 022B36F0 */ cpu->r[12] = cpu->r[12] + 0x00003A24u;
|
|
/* 022B36F4 */ _t542 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B36F4 */ rbrew_write32(cpu->mem, _t542, cpu->r[12]);
|
|
/* 022B36F8 */ _t543 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B36F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t543);
|
|
/* 022B36FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Du);
|
|
/* 022B3700 */ _t544 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B3700 */ cpu->r[25] = rbrew_read32(cpu->mem, _t544);
|
|
/* 022B3704 */ _t545 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3704 */ _t546 = _t545 & 0x00000001u;
|
|
/* 022B3704 */ if (_t546) goto L_022B3708; else goto L_022B370C;
|
|
L_022B3708: ; // 0x22b3708
|
|
/* 022B3708 */ cpu->r[25] = cpu->r[25] + 0x000001D4u;
|
|
L_022B370C: ; // 0x22b370c
|
|
/* 022B370C */ cpu->ctr = cpu->r[26];
|
|
/* 022B3710 */ _t547 = cpu->r[25] + 0x00000000u;
|
|
/* 022B3710 */ cpu->r[24] = rbrew_read32(cpu->mem, _t547);
|
|
/* 022B3714 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3718 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B371C */ _t548 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B371C */ cpu->r[6] = rbrew_read32(cpu->mem, _t548);
|
|
/* 022B3720 */ _t549 = cpu->r[6] + 0x00000000u;
|
|
/* 022B3720 */ cpu->r[4] = rbrew_read8(cpu->mem, _t549);
|
|
/* 022B3724 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B3728 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022B372C */ cpu->r[8] = 0x00080000u;
|
|
/* 022B3730 */ _t550 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3730 */ _t551 = _t550 & 0x00000001u;
|
|
/* 022B3730 */ if (_t551) goto L_022B3758; else goto L_022B3734;
|
|
L_022B3734: ; // 0x22b3734
|
|
/* 022B3734 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B3738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 022B373C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 022B3740 */ _t552 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3740 */ _t553 = _t552 & 0x00000001u;
|
|
/* 022B3740 */ if (_t553) goto L_022B3754; else goto L_022B3744;
|
|
L_022B3744: ; // 0x22b3744
|
|
/* 022B3744 */ _t554 = cpu->r[6] + 0x00000000u;
|
|
/* 022B3744 */ cpu->r[5] = rbrew_read8(cpu->mem, _t554);
|
|
/* 022B3748 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022B374C */ _t555 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B374C */ _t556 = _t555 & 0x00000001u;
|
|
/* 022B374C */ if (_t556) goto L_022B3750; else goto L_022B3734;
|
|
L_022B3750: ; // 0x22b3750
|
|
/* 022B3750 */ goto L_022B3758;
|
|
L_022B3754: ; // 0x22b3754
|
|
/* 022B3754 */ cpu->r[31] = 0x00000000u;
|
|
L_022B3758: ; // 0x22b3758
|
|
/* 022B3758 */ _t557 = cpu->r[25] + 0x00000008u;
|
|
/* 022B3758 */ cpu->r[12] = rbrew_read32(cpu->mem, _t557);
|
|
/* 022B375C */ _t558 = cpu->r[1] + 0x00000010u;
|
|
/* 022B375C */ cpu->r[7] = rbrew_read32(cpu->mem, _t558);
|
|
/* 022B3760 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 022B3764 */ _t559 = cpu->r[7] + 0x00000014u;
|
|
/* 022B3764 */ cpu->r[8] = rbrew_read32(cpu->mem, _t559);
|
|
/* 022B3768 */ _t560 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3768 */ _t561 = _t560 & 0x00000001u;
|
|
/* 022B3768 */ if (_t561) goto L_022B3770; else goto L_022B376C;
|
|
L_022B376C: ; // 0x22b376c
|
|
/* 022B376C */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_022B3770: ; // 0x22b3770
|
|
/* 022B3770 */ cpu->ctr = cpu->r[8];
|
|
/* 022B3774 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3778 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B377C */ _t562 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B377C */ cpu->r[4] = rbrew_read32(cpu->mem, _t562);
|
|
/* 022B3780 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3784 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B3788 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B378C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3790 */ _t563 = cpu->r[24] + cpu->r[31];
|
|
/* 022B3790 */ rbrew_write8(cpu->mem, _t563, (uint8_t)cpu->r[30]);
|
|
/* 022B3794 */ cpu->r[0] = 0x0000000Du;
|
|
/* 022B3798 */ _t564 = cpu->r[1] + 0x00000024u;
|
|
/* 022B3798 */ rbrew_write16(cpu->mem, _t564, (uint16_t)cpu->r[28]);
|
|
/* 022B379C */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 022B37A0 */ _t565 = cpu->r[1] + 0x00000008u;
|
|
/* 022B37A0 */ rbrew_write8(cpu->mem, _t565, (uint8_t)cpu->r[0]);
|
|
/* 022B37A4 */ cpu->r[9] = 0x022B0000u;
|
|
/* 022B37A8 */ _t566 = cpu->r[1] + 0x00000016u;
|
|
/* 022B37A8 */ rbrew_write16(cpu->mem, _t566, (uint16_t)cpu->r[10]);
|
|
/* 022B37AC */ cpu->r[12] = 0x022B0000u;
|
|
/* 022B37B0 */ _t567 = cpu->r[1] + 0x00000026u;
|
|
/* 022B37B0 */ rbrew_write16(cpu->mem, _t567, (uint16_t)cpu->r[28]);
|
|
/* 022B37B4 */ _t568 = cpu->r[1] + 0x00000014u;
|
|
/* 022B37B4 */ rbrew_write16(cpu->mem, _t568, (uint16_t)cpu->r[28]);
|
|
/* 022B37B8 */ cpu->r[12] = cpu->r[12] + 0x00006718u;
|
|
/* 022B37BC */ _t569 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B37BC */ rbrew_write16(cpu->mem, _t569, (uint16_t)cpu->r[10]);
|
|
/* 022B37C0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B37C4 */ _t570 = cpu->r[1] + 0x00000018u;
|
|
/* 022B37C4 */ rbrew_write32(cpu->mem, _t570, cpu->r[12]);
|
|
/* 022B37C8 */ cpu->r[9] = cpu->r[9] + 0x000066B4u;
|
|
/* 022B37CC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B37D0 */ _t571 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B37D0 */ rbrew_write16(cpu->mem, _t571, (uint16_t)cpu->r[28]);
|
|
/* 022B37D4 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B37D8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B37DC */ _t572 = cpu->r[1] + 0x00000020u;
|
|
/* 022B37DC */ rbrew_write32(cpu->mem, _t572, cpu->r[9]);
|
|
/* 022B37E0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B37E4 */ _t573 = cpu->r[1] + 0x00000028u;
|
|
/* 022B37E4 */ rbrew_write32(cpu->mem, _t573, cpu->r[28]);
|
|
/* 022B37E8 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B37EC */ cpu->r[4] = 0x10060000u;
|
|
/* 022B37F0 */ _t574 = cpu->r[1] + 0x00000010u;
|
|
/* 022B37F0 */ rbrew_write32(cpu->mem, _t574, cpu->r[27]);
|
|
/* 022B37F4 */ cpu->r[4] = cpu->r[4] + 0x00003A04u;
|
|
/* 022B37F8 */ _t575 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B37F8 */ rbrew_write32(cpu->mem, _t575, cpu->r[4]);
|
|
/* 022B37FC */ _t576 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B37FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t576);
|
|
/* 022B3800 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Eu);
|
|
/* 022B3804 */ _t577 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B3804 */ cpu->r[25] = rbrew_read32(cpu->mem, _t577);
|
|
/* 022B3808 */ _t578 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3808 */ _t579 = _t578 & 0x00000001u;
|
|
/* 022B3808 */ if (_t579) goto L_022B380C; else goto L_022B3810;
|
|
L_022B380C: ; // 0x22b380c
|
|
/* 022B380C */ cpu->r[25] = cpu->r[25] + 0x000001F8u;
|
|
L_022B3810: ; // 0x22b3810
|
|
/* 022B3810 */ cpu->ctr = cpu->r[26];
|
|
/* 022B3814 */ _t580 = cpu->r[25] + 0x00000000u;
|
|
/* 022B3814 */ cpu->r[24] = rbrew_read32(cpu->mem, _t580);
|
|
/* 022B3818 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B381C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3820 */ _t581 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3820 */ cpu->r[12] = rbrew_read32(cpu->mem, _t581);
|
|
/* 022B3824 */ _t582 = cpu->r[12] + 0x00000000u;
|
|
/* 022B3824 */ cpu->r[6] = rbrew_read8(cpu->mem, _t582);
|
|
/* 022B3828 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B382C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022B3830 */ cpu->r[5] = 0x00080000u;
|
|
/* 022B3834 */ _t583 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3834 */ _t584 = _t583 & 0x00000001u;
|
|
/* 022B3834 */ if (_t584) goto L_022B385C; else goto L_022B3838;
|
|
L_022B3838: ; // 0x22b3838
|
|
/* 022B3838 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B383C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 022B3840 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022B3844 */ _t585 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3844 */ _t586 = _t585 & 0x00000001u;
|
|
/* 022B3844 */ if (_t586) goto L_022B3858; else goto L_022B3848;
|
|
L_022B3848: ; // 0x22b3848
|
|
/* 022B3848 */ _t587 = cpu->r[12] + 0x00000000u;
|
|
/* 022B3848 */ cpu->r[0] = rbrew_read8(cpu->mem, _t587);
|
|
/* 022B384C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 022B3850 */ _t588 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3850 */ _t589 = _t588 & 0x00000001u;
|
|
/* 022B3850 */ if (_t589) goto L_022B3854; else goto L_022B3838;
|
|
L_022B3854: ; // 0x22b3854
|
|
/* 022B3854 */ goto L_022B385C;
|
|
L_022B3858: ; // 0x22b3858
|
|
/* 022B3858 */ cpu->r[31] = 0x00000000u;
|
|
L_022B385C: ; // 0x22b385c
|
|
/* 022B385C */ _t590 = cpu->r[25] + 0x00000008u;
|
|
/* 022B385C */ cpu->r[4] = rbrew_read32(cpu->mem, _t590);
|
|
/* 022B3860 */ _t591 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3860 */ cpu->r[8] = rbrew_read32(cpu->mem, _t591);
|
|
/* 022B3864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 022B3868 */ _t592 = cpu->r[8] + 0x00000014u;
|
|
/* 022B3868 */ cpu->r[9] = rbrew_read32(cpu->mem, _t592);
|
|
/* 022B386C */ _t593 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B386C */ _t594 = _t593 & 0x00000001u;
|
|
/* 022B386C */ if (_t594) goto L_022B3874; else goto L_022B3870;
|
|
L_022B3870: ; // 0x22b3870
|
|
/* 022B3870 */ cpu->r[31] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_022B3874: ; // 0x22b3874
|
|
/* 022B3874 */ cpu->ctr = cpu->r[9];
|
|
/* 022B3878 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B387C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3880 */ _t595 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3880 */ cpu->r[4] = rbrew_read32(cpu->mem, _t595);
|
|
/* 022B3884 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3888 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B388C */ cpu->r[3] = cpu->r[24];
|
|
/* 022B3890 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3894 */ _t596 = cpu->r[24] + cpu->r[31];
|
|
/* 022B3894 */ rbrew_write8(cpu->mem, _t596, (uint8_t)cpu->r[30]);
|
|
/* 022B3898 */ cpu->r[0] = 0x0000000Eu;
|
|
/* 022B389C */ _t597 = cpu->r[1] + 0x00000024u;
|
|
/* 022B389C */ rbrew_write16(cpu->mem, _t597, (uint16_t)cpu->r[28]);
|
|
/* 022B38A0 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 022B38A4 */ _t598 = cpu->r[1] + 0x00000008u;
|
|
/* 022B38A4 */ rbrew_write8(cpu->mem, _t598, (uint8_t)cpu->r[0]);
|
|
/* 022B38A8 */ cpu->r[10] = 0x022B0000u;
|
|
/* 022B38AC */ _t599 = cpu->r[1] + 0x00000016u;
|
|
/* 022B38AC */ rbrew_write16(cpu->mem, _t599, (uint16_t)cpu->r[9]);
|
|
/* 022B38B0 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022B38B4 */ _t600 = cpu->r[1] + 0x00000026u;
|
|
/* 022B38B4 */ rbrew_write16(cpu->mem, _t600, (uint16_t)cpu->r[28]);
|
|
/* 022B38B8 */ _t601 = cpu->r[1] + 0x00000014u;
|
|
/* 022B38B8 */ rbrew_write16(cpu->mem, _t601, (uint16_t)cpu->r[28]);
|
|
/* 022B38BC */ cpu->r[12] = cpu->r[12] + 0x00006868u;
|
|
/* 022B38C0 */ _t602 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B38C0 */ rbrew_write16(cpu->mem, _t602, (uint16_t)cpu->r[9]);
|
|
/* 022B38C4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B38C8 */ _t603 = cpu->r[1] + 0x00000018u;
|
|
/* 022B38C8 */ rbrew_write32(cpu->mem, _t603, cpu->r[12]);
|
|
/* 022B38CC */ cpu->r[10] = cpu->r[10] + 0x000067D4u;
|
|
/* 022B38D0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B38D4 */ _t604 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B38D4 */ rbrew_write16(cpu->mem, _t604, (uint16_t)cpu->r[28]);
|
|
/* 022B38D8 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B38DC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B38E0 */ _t605 = cpu->r[1] + 0x00000020u;
|
|
/* 022B38E0 */ rbrew_write32(cpu->mem, _t605, cpu->r[10]);
|
|
/* 022B38E4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B38E8 */ _t606 = cpu->r[1] + 0x00000028u;
|
|
/* 022B38E8 */ rbrew_write32(cpu->mem, _t606, cpu->r[28]);
|
|
/* 022B38EC */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B38F0 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B38F4 */ _t607 = cpu->r[1] + 0x00000010u;
|
|
/* 022B38F4 */ rbrew_write32(cpu->mem, _t607, cpu->r[27]);
|
|
/* 022B38F8 */ cpu->r[4] = cpu->r[4] + 0x00003A40u;
|
|
/* 022B38FC */ _t608 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B38FC */ rbrew_write32(cpu->mem, _t608, cpu->r[4]);
|
|
/* 022B3900 */ _t609 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B3900 */ cpu->r[5] = rbrew_read32(cpu->mem, _t609);
|
|
/* 022B3904 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Fu);
|
|
/* 022B3908 */ _t610 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B3908 */ cpu->r[31] = rbrew_read32(cpu->mem, _t610);
|
|
/* 022B390C */ _t611 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B390C */ _t612 = _t611 & 0x00000001u;
|
|
/* 022B390C */ if (_t612) goto L_022B3910; else goto L_022B3914;
|
|
L_022B3910: ; // 0x22b3910
|
|
/* 022B3910 */ cpu->r[31] = cpu->r[31] + 0x0000021Cu;
|
|
L_022B3914: ; // 0x22b3914
|
|
/* 022B3914 */ cpu->ctr = cpu->r[26];
|
|
/* 022B3918 */ _t613 = cpu->r[31] + 0x00000000u;
|
|
/* 022B3918 */ cpu->r[24] = rbrew_read32(cpu->mem, _t613);
|
|
/* 022B391C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3920 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3924 */ _t614 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3924 */ cpu->r[9] = rbrew_read32(cpu->mem, _t614);
|
|
/* 022B3928 */ _t615 = cpu->r[9] + 0x00000000u;
|
|
/* 022B3928 */ cpu->r[6] = rbrew_read8(cpu->mem, _t615);
|
|
/* 022B392C */ cpu->r[25] = 0x00000000u;
|
|
/* 022B3930 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022B3934 */ cpu->r[0] = 0x00080000u;
|
|
/* 022B3938 */ _t616 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3938 */ _t617 = _t616 & 0x00000001u;
|
|
/* 022B3938 */ if (_t617) goto L_022B3960; else goto L_022B393C;
|
|
L_022B393C: ; // 0x22b393c
|
|
/* 022B393C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 022B3940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 022B3944 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 022B3948 */ _t618 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3948 */ _t619 = _t618 & 0x00000001u;
|
|
/* 022B3948 */ if (_t619) goto L_022B395C; else goto L_022B394C;
|
|
L_022B394C: ; // 0x22b394c
|
|
/* 022B394C */ _t620 = cpu->r[9] + 0x00000000u;
|
|
/* 022B394C */ cpu->r[7] = rbrew_read8(cpu->mem, _t620);
|
|
/* 022B3950 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 022B3954 */ _t621 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3954 */ _t622 = _t621 & 0x00000001u;
|
|
/* 022B3954 */ if (_t622) goto L_022B3958; else goto L_022B393C;
|
|
L_022B3958: ; // 0x22b3958
|
|
/* 022B3958 */ goto L_022B3960;
|
|
L_022B395C: ; // 0x22b395c
|
|
/* 022B395C */ cpu->r[25] = 0x00000000u;
|
|
L_022B3960: ; // 0x22b3960
|
|
/* 022B3960 */ _t623 = cpu->r[31] + 0x00000008u;
|
|
/* 022B3960 */ cpu->r[5] = rbrew_read32(cpu->mem, _t623);
|
|
/* 022B3964 */ _t624 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3964 */ cpu->r[8] = rbrew_read32(cpu->mem, _t624);
|
|
/* 022B3968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[5]);
|
|
/* 022B396C */ _t625 = cpu->r[8] + 0x00000014u;
|
|
/* 022B396C */ cpu->r[0] = rbrew_read32(cpu->mem, _t625);
|
|
/* 022B3970 */ _t626 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3970 */ _t627 = _t626 & 0x00000001u;
|
|
/* 022B3970 */ if (_t627) goto L_022B3978; else goto L_022B3974;
|
|
L_022B3974: ; // 0x22b3974
|
|
/* 022B3974 */ cpu->r[25] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_022B3978: ; // 0x22b3978
|
|
/* 022B3978 */ cpu->ctr = cpu->r[0];
|
|
/* 022B397C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3980 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3984 */ _t628 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3984 */ cpu->r[4] = rbrew_read32(cpu->mem, _t628);
|
|
/* 022B3988 */ cpu->r[3] = cpu->r[24];
|
|
/* 022B398C */ cpu->r[5] = cpu->r[25];
|
|
/* 022B3990 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3994 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3998 */ _t629 = cpu->r[24] + cpu->r[25];
|
|
/* 022B3998 */ rbrew_write8(cpu->mem, _t629, (uint8_t)cpu->r[30]);
|
|
/* 022B399C */ cpu->r[12] = 0x0000000Fu;
|
|
/* 022B39A0 */ _t630 = cpu->r[1] + 0x00000026u;
|
|
/* 022B39A0 */ rbrew_write16(cpu->mem, _t630, (uint16_t)cpu->r[28]);
|
|
/* 022B39A4 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 022B39A8 */ _t631 = cpu->r[1] + 0x00000008u;
|
|
/* 022B39A8 */ rbrew_write8(cpu->mem, _t631, (uint8_t)cpu->r[12]);
|
|
/* 022B39AC */ cpu->r[10] = 0x022B0000u;
|
|
/* 022B39B0 */ _t632 = cpu->r[1] + 0x00000024u;
|
|
/* 022B39B0 */ rbrew_write16(cpu->mem, _t632, (uint16_t)cpu->r[28]);
|
|
/* 022B39B4 */ cpu->r[4] = 0x022B0000u;
|
|
/* 022B39B8 */ _t633 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B39B8 */ rbrew_write16(cpu->mem, _t633, (uint16_t)cpu->r[28]);
|
|
/* 022B39BC */ _t634 = cpu->r[1] + 0x00000016u;
|
|
/* 022B39BC */ rbrew_write16(cpu->mem, _t634, (uint16_t)cpu->r[8]);
|
|
/* 022B39C0 */ cpu->r[4] = cpu->r[4] + 0x00006A98u;
|
|
/* 022B39C4 */ _t635 = cpu->r[1] + 0x00000014u;
|
|
/* 022B39C4 */ rbrew_write16(cpu->mem, _t635, (uint16_t)cpu->r[28]);
|
|
/* 022B39C8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B39CC */ _t636 = cpu->r[1] + 0x00000018u;
|
|
/* 022B39CC */ rbrew_write32(cpu->mem, _t636, cpu->r[4]);
|
|
/* 022B39D0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B39D4 */ cpu->r[10] = cpu->r[10] + 0x00006A14u;
|
|
/* 022B39D8 */ _t637 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B39D8 */ rbrew_write16(cpu->mem, _t637, (uint16_t)cpu->r[8]);
|
|
/* 022B39DC */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B39E0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B39E4 */ _t638 = cpu->r[1] + 0x00000020u;
|
|
/* 022B39E4 */ rbrew_write32(cpu->mem, _t638, cpu->r[10]);
|
|
/* 022B39E8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B39EC */ _t639 = cpu->r[1] + 0x00000028u;
|
|
/* 022B39EC */ rbrew_write32(cpu->mem, _t639, cpu->r[28]);
|
|
/* 022B39F0 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B39F4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B39F8 */ _t640 = cpu->r[1] + 0x00000010u;
|
|
/* 022B39F8 */ rbrew_write32(cpu->mem, _t640, cpu->r[27]);
|
|
/* 022B39FC */ cpu->r[6] = cpu->r[6] + 0x00003A54u;
|
|
/* 022B3A00 */ _t641 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3A00 */ rbrew_write32(cpu->mem, _t641, cpu->r[6]);
|
|
/* 022B3A04 */ _t642 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B3A04 */ cpu->r[7] = rbrew_read32(cpu->mem, _t642);
|
|
/* 022B3A08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000010u);
|
|
/* 022B3A0C */ _t643 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B3A0C */ cpu->r[25] = rbrew_read32(cpu->mem, _t643);
|
|
/* 022B3A10 */ _t644 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3A10 */ _t645 = _t644 & 0x00000001u;
|
|
/* 022B3A10 */ if (_t645) goto L_022B3A14; else goto L_022B3A18;
|
|
L_022B3A14: ; // 0x22b3a14
|
|
/* 022B3A14 */ cpu->r[25] = cpu->r[25] + 0x00000240u;
|
|
L_022B3A18: ; // 0x22b3a18
|
|
/* 022B3A18 */ cpu->ctr = cpu->r[26];
|
|
/* 022B3A1C */ _t646 = cpu->r[25] + 0x00000000u;
|
|
/* 022B3A1C */ cpu->r[24] = rbrew_read32(cpu->mem, _t646);
|
|
/* 022B3A20 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3A24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3A28 */ _t647 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3A28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t647);
|
|
/* 022B3A2C */ _t648 = cpu->r[5] + 0x00000000u;
|
|
/* 022B3A2C */ cpu->r[8] = rbrew_read8(cpu->mem, _t648);
|
|
/* 022B3A30 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B3A34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 022B3A38 */ cpu->r[8] = 0x00080000u;
|
|
/* 022B3A3C */ _t649 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3A3C */ _t650 = _t649 & 0x00000001u;
|
|
/* 022B3A3C */ if (_t650) goto L_022B3A64; else goto L_022B3A40;
|
|
L_022B3A40: ; // 0x22b3a40
|
|
/* 022B3A40 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B3A44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 022B3A48 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 022B3A4C */ _t651 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3A4C */ _t652 = _t651 & 0x00000001u;
|
|
/* 022B3A4C */ if (_t652) goto L_022B3A60; else goto L_022B3A50;
|
|
L_022B3A50: ; // 0x22b3a50
|
|
/* 022B3A50 */ _t653 = cpu->r[5] + 0x00000000u;
|
|
/* 022B3A50 */ cpu->r[9] = rbrew_read8(cpu->mem, _t653);
|
|
/* 022B3A54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 022B3A58 */ _t654 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3A58 */ _t655 = _t654 & 0x00000001u;
|
|
/* 022B3A58 */ if (_t655) goto L_022B3A5C; else goto L_022B3A40;
|
|
L_022B3A5C: ; // 0x22b3a5c
|
|
/* 022B3A5C */ goto L_022B3A64;
|
|
L_022B3A60: ; // 0x22b3a60
|
|
/* 022B3A60 */ cpu->r[31] = 0x00000000u;
|
|
L_022B3A64: ; // 0x22b3a64
|
|
/* 022B3A64 */ _t656 = cpu->r[25] + 0x00000008u;
|
|
/* 022B3A64 */ cpu->r[6] = rbrew_read32(cpu->mem, _t656);
|
|
/* 022B3A68 */ _t657 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3A68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t657);
|
|
/* 022B3A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 022B3A70 */ _t658 = cpu->r[10] + 0x00000014u;
|
|
/* 022B3A70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t658);
|
|
/* 022B3A74 */ _t659 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3A74 */ _t660 = _t659 & 0x00000001u;
|
|
/* 022B3A74 */ if (_t660) goto L_022B3A7C; else goto L_022B3A78;
|
|
L_022B3A78: ; // 0x22b3a78
|
|
/* 022B3A78 */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_022B3A7C: ; // 0x22b3a7c
|
|
/* 022B3A7C */ cpu->ctr = cpu->r[11];
|
|
/* 022B3A80 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3A84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3A88 */ _t661 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3A88 */ cpu->r[4] = rbrew_read32(cpu->mem, _t661);
|
|
/* 022B3A8C */ cpu->r[3] = cpu->r[24];
|
|
/* 022B3A90 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B3A94 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3A98 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3A9C */ _t662 = cpu->r[24] + cpu->r[31];
|
|
/* 022B3A9C */ rbrew_write8(cpu->mem, _t662, (uint8_t)cpu->r[30]);
|
|
/* 022B3AA0 */ cpu->r[10] = 0x00000010u;
|
|
/* 022B3AA4 */ _t663 = cpu->r[1] + 0x00000026u;
|
|
/* 022B3AA4 */ rbrew_write16(cpu->mem, _t663, (uint16_t)cpu->r[28]);
|
|
/* 022B3AA8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022B3AAC */ _t664 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3AAC */ rbrew_write8(cpu->mem, _t664, (uint8_t)cpu->r[10]);
|
|
/* 022B3AB0 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022B3AB4 */ _t665 = cpu->r[1] + 0x00000024u;
|
|
/* 022B3AB4 */ rbrew_write16(cpu->mem, _t665, (uint16_t)cpu->r[28]);
|
|
/* 022B3AB8 */ cpu->r[4] = 0x022B0000u;
|
|
/* 022B3ABC */ _t666 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B3ABC */ rbrew_write16(cpu->mem, _t666, (uint16_t)cpu->r[28]);
|
|
/* 022B3AC0 */ _t667 = cpu->r[1] + 0x00000016u;
|
|
/* 022B3AC0 */ rbrew_write16(cpu->mem, _t667, (uint16_t)cpu->r[0]);
|
|
/* 022B3AC4 */ cpu->r[4] = cpu->r[4] + 0x00006CCCu;
|
|
/* 022B3AC8 */ _t668 = cpu->r[1] + 0x00000014u;
|
|
/* 022B3AC8 */ rbrew_write16(cpu->mem, _t668, (uint16_t)cpu->r[28]);
|
|
/* 022B3ACC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B3AD0 */ _t669 = cpu->r[1] + 0x00000018u;
|
|
/* 022B3AD0 */ rbrew_write32(cpu->mem, _t669, cpu->r[4]);
|
|
/* 022B3AD4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B3AD8 */ cpu->r[12] = cpu->r[12] + 0x00006C70u;
|
|
/* 022B3ADC */ _t670 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B3ADC */ rbrew_write16(cpu->mem, _t670, (uint16_t)cpu->r[0]);
|
|
/* 022B3AE0 */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B3AE4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B3AE8 */ _t671 = cpu->r[1] + 0x00000020u;
|
|
/* 022B3AE8 */ rbrew_write32(cpu->mem, _t671, cpu->r[12]);
|
|
/* 022B3AEC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B3AF0 */ _t672 = cpu->r[1] + 0x00000028u;
|
|
/* 022B3AF0 */ rbrew_write32(cpu->mem, _t672, cpu->r[28]);
|
|
/* 022B3AF4 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B3AF8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B3AFC */ _t673 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3AFC */ rbrew_write32(cpu->mem, _t673, cpu->r[27]);
|
|
/* 022B3B00 */ cpu->r[6] = cpu->r[6] + 0x00003A68u;
|
|
/* 022B3B04 */ _t674 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3B04 */ rbrew_write32(cpu->mem, _t674, cpu->r[6]);
|
|
/* 022B3B08 */ _t675 = cpu->r[29] + 0x000001A0u;
|
|
/* 022B3B08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t675);
|
|
/* 022B3B0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000011u);
|
|
/* 022B3B10 */ _t676 = cpu->r[29] + 0x000001A4u;
|
|
/* 022B3B10 */ cpu->r[27] = rbrew_read32(cpu->mem, _t676);
|
|
/* 022B3B14 */ _t677 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3B14 */ _t678 = _t677 & 0x00000001u;
|
|
/* 022B3B14 */ if (_t678) goto L_022B3B18; else goto L_022B3B1C;
|
|
L_022B3B18: ; // 0x22b3b18
|
|
/* 022B3B18 */ cpu->r[27] = cpu->r[27] + 0x00000264u;
|
|
L_022B3B1C: ; // 0x22b3b1c
|
|
/* 022B3B1C */ cpu->ctr = cpu->r[26];
|
|
/* 022B3B20 */ _t679 = cpu->r[27] + 0x00000000u;
|
|
/* 022B3B20 */ cpu->r[25] = rbrew_read32(cpu->mem, _t679);
|
|
/* 022B3B24 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3B28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3B2C */ _t680 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3B2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t680);
|
|
/* 022B3B30 */ _t681 = cpu->r[12] + 0x00000000u;
|
|
/* 022B3B30 */ cpu->r[8] = rbrew_read8(cpu->mem, _t681);
|
|
/* 022B3B34 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B3B38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 022B3B3C */ cpu->r[4] = 0x00080000u;
|
|
/* 022B3B40 */ _t682 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3B40 */ _t683 = _t682 & 0x00000001u;
|
|
/* 022B3B40 */ if (_t683) goto L_022B3B68; else goto L_022B3B44;
|
|
L_022B3B44: ; // 0x22b3b44
|
|
/* 022B3B44 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022B3B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 022B3B4C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022B3B50 */ _t684 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3B50 */ _t685 = _t684 & 0x00000001u;
|
|
/* 022B3B50 */ if (_t685) goto L_022B3B64; else goto L_022B3B54;
|
|
L_022B3B54: ; // 0x22b3b54
|
|
/* 022B3B54 */ _t686 = cpu->r[12] + 0x00000000u;
|
|
/* 022B3B54 */ cpu->r[9] = rbrew_read8(cpu->mem, _t686);
|
|
/* 022B3B58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 022B3B5C */ _t687 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3B5C */ _t688 = _t687 & 0x00000001u;
|
|
/* 022B3B5C */ if (_t688) goto L_022B3B60; else goto L_022B3B44;
|
|
L_022B3B60: ; // 0x22b3b60
|
|
/* 022B3B60 */ goto L_022B3B68;
|
|
L_022B3B64: ; // 0x22b3b64
|
|
/* 022B3B64 */ cpu->r[31] = 0x00000000u;
|
|
L_022B3B68: ; // 0x22b3b68
|
|
/* 022B3B68 */ _t689 = cpu->r[27] + 0x00000008u;
|
|
/* 022B3B68 */ cpu->r[7] = rbrew_read32(cpu->mem, _t689);
|
|
/* 022B3B6C */ _t690 = cpu->r[1] + 0x00000010u;
|
|
/* 022B3B6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t690);
|
|
/* 022B3B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 022B3B74 */ _t691 = cpu->r[10] + 0x00000014u;
|
|
/* 022B3B74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t691);
|
|
/* 022B3B78 */ _t692 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3B78 */ _t693 = _t692 & 0x00000001u;
|
|
/* 022B3B78 */ if (_t693) goto L_022B3B80; else goto L_022B3B7C;
|
|
L_022B3B7C: ; // 0x22b3b7c
|
|
/* 022B3B7C */ cpu->r[31] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_022B3B80: ; // 0x22b3b80
|
|
/* 022B3B80 */ cpu->ctr = cpu->r[11];
|
|
/* 022B3B84 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3B88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3B8C */ _t694 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3B8C */ cpu->r[4] = rbrew_read32(cpu->mem, _t694);
|
|
/* 022B3B90 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B3B94 */ cpu->r[5] = cpu->r[31];
|
|
/* 022B3B98 */ cpu->r[3] = cpu->r[25];
|
|
/* 022B3B9C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022B3BA0 */ _t695 = cpu->r[25] + cpu->r[31];
|
|
/* 022B3BA0 */ rbrew_write8(cpu->mem, _t695, (uint8_t)cpu->r[30]);
|
|
/* 022B3BA4 */ cpu->r[7] = 0x00000011u;
|
|
/* 022B3BA8 */ _t696 = cpu->r[1] + 0x00000028u;
|
|
/* 022B3BA8 */ rbrew_write32(cpu->mem, _t696, cpu->r[28]);
|
|
/* 022B3BAC */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 022B3BB0 */ _t697 = cpu->r[1] + 0x00000026u;
|
|
/* 022B3BB0 */ rbrew_write16(cpu->mem, _t697, (uint16_t)cpu->r[28]);
|
|
/* 022B3BB4 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022B3BB8 */ _t698 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022B3BB8 */ rbrew_write16(cpu->mem, _t698, (uint16_t)cpu->r[5]);
|
|
/* 022B3BBC */ cpu->r[12] = 0x022B0000u;
|
|
/* 022B3BC0 */ _t699 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B3BC0 */ rbrew_write16(cpu->mem, _t699, (uint16_t)cpu->r[28]);
|
|
/* 022B3BC4 */ _t700 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3BC4 */ rbrew_write8(cpu->mem, _t700, (uint8_t)cpu->r[7]);
|
|
/* 022B3BC8 */ cpu->r[0] = cpu->r[0] + 0x00006F28u;
|
|
/* 022B3BCC */ _t701 = cpu->r[1] + 0x00000016u;
|
|
/* 022B3BCC */ rbrew_write16(cpu->mem, _t701, (uint16_t)cpu->r[5]);
|
|
/* 022B3BD0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B3BD4 */ _t702 = cpu->r[1] + 0x00000024u;
|
|
/* 022B3BD4 */ rbrew_write16(cpu->mem, _t702, (uint16_t)cpu->r[28]);
|
|
/* 022B3BD8 */ cpu->r[12] = cpu->r[12] + 0x00006ECCu;
|
|
/* 022B3BDC */ cpu->r[3] = cpu->r[29] + 0x0000018Cu;
|
|
/* 022B3BE0 */ _t703 = cpu->r[1] + 0x00000018u;
|
|
/* 022B3BE0 */ rbrew_write32(cpu->mem, _t703, cpu->r[0]);
|
|
/* 022B3BE4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B3BE8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022B3BEC */ _t704 = cpu->r[1] + 0x00000014u;
|
|
/* 022B3BEC */ rbrew_write16(cpu->mem, _t704, (uint16_t)cpu->r[28]);
|
|
/* 022B3BF0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B3BF4 */ _t705 = cpu->r[1] + 0x00000020u;
|
|
/* 022B3BF4 */ rbrew_write32(cpu->mem, _t705, cpu->r[12]);
|
|
/* 022B3BF8 */ Gambit_fn_022B79CC(cpu);
|
|
/* 022B3BFC */ cpu->r[3] = 0x000002A8u;
|
|
/* 022B3C00 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B3C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B3C08 */ cpu->r[0] = cpu->r[3];
|
|
/* 022B3C0C */ _t706 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3C0C */ _t707 = _t706 & 0x00000001u;
|
|
/* 022B3C0C */ if (_t707) goto L_022B3C1C; else goto L_022B3C10;
|
|
L_022B3C10: ; // 0x22b3c10
|
|
/* 022B3C10 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B3C14 */ Gambit_fn_024F7A74(cpu);
|
|
/* 022B3C18 */ cpu->r[0] = cpu->r[3];
|
|
L_022B3C1C: ; // 0x22b3c1c
|
|
/* 022B3C1C */ cpu->r[3] = 0x000002A8u;
|
|
/* 022B3C20 */ _t708 = cpu->r[29] + 0x00000324u;
|
|
/* 022B3C20 */ rbrew_write32(cpu->mem, _t708, cpu->r[0]);
|
|
/* 022B3C24 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B3C28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B3C2C */ _t709 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3C2C */ _t710 = _t709 & 0x00000001u;
|
|
/* 022B3C2C */ if (_t710) goto L_022B3C38; else goto L_022B3C30;
|
|
L_022B3C30: ; // 0x22b3c30
|
|
/* 022B3C30 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B3C34 */ Gambit_fn_024F7A74(cpu);
|
|
L_022B3C38: ; // 0x22b3c38
|
|
/* 022B3C38 */ _t711 = cpu->r[29] + 0x00000384u;
|
|
/* 022B3C38 */ rbrew_write32(cpu->mem, _t711, cpu->r[3]);
|
|
L_022B3C3C: ; // 0x22b3c3c
|
|
/* 022B3C3C */ cpu->r[3] = cpu->r[29];
|
|
/* 022B3C40 */ /* nop */
|
|
/* 022B3C44 */ _t712 = cpu->r[1] + 0x00000054u;
|
|
/* 022B3C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t712);
|
|
/* 022B3C48 */ cpu->lr = cpu->r[0];
|
|
/* 022B3C4C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B3C50 */ return;
|
|
}
|
|
|
|
// fn_022B3C54 @ 0x22b3c54
|
|
void Gambit_fn_022B3C54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62;
|
|
|
|
L_022B3C54: ; // 0x22b3c54
|
|
/* 022B3C54 */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 022B3C54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B3C54 */ cpu->r[1] = _t0;
|
|
/* 022B3C58 */ cpu->r[0] = cpu->lr;
|
|
/* 022B3C5C */ /* nop */
|
|
/* 022B3C60 */ _t1 = cpu->r[1] + 0x00000094u;
|
|
/* 022B3C60 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B3C64 */ cpu->r[29] = cpu->r[3];
|
|
/* 022B3C68 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B3C6C */ Gambit_fn_02043B8C(cpu);
|
|
/* 022B3C70 */ cpu->r[27] = 0x10060000u;
|
|
/* 022B3C74 */ _t2 = cpu->r[29] + 0x00000184u;
|
|
/* 022B3C74 */ rbrew_write32(cpu->mem, _t2, cpu->r[3]);
|
|
/* 022B3C78 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 022B3C7C */ cpu->r[27] = cpu->r[27] + 0x00003814u;
|
|
/* 022B3C80 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B3C84 */ cpu->r[5] = 0x00000000u;
|
|
/* 022B3C88 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3C88 */ rbrew_write32(cpu->mem, _t3, cpu->r[27]);
|
|
/* 022B3C8C */ cpu->r[12] = cpu->r[12] + 0x00003AA0u;
|
|
/* 022B3C90 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B3C94 */ cpu->r[6] = cpu->r[5];
|
|
/* 022B3C98 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3C98 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022B3C9C */ Gambit_fn_027C6980(cpu);
|
|
/* 022B3CA0 */ cpu->r[30] = 0x10060000u;
|
|
/* 022B3CA4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 022B3CA8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B3CA8 */ rbrew_write32(cpu->mem, _t5, cpu->r[27]);
|
|
/* 022B3CAC */ cpu->r[30] = cpu->r[30] + 0x00003A88u;
|
|
/* 022B3CB0 */ cpu->r[5] = 0x00000000u;
|
|
/* 022B3CB4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 022B3CB8 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 022B3CB8 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 022B3CBC */ Gambit_fn_027C6C00(cpu);
|
|
/* 022B3CC0 */ cpu->r[5] = 0x00000000u;
|
|
/* 022B3CC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B3CC8 */ cpu->r[3] = cpu->r[29] + 0x000002C8u;
|
|
/* 022B3CCC */ cpu->r[6] = cpu->r[5];
|
|
/* 022B3CD0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B3CD4 */ Gambit_fn_027DF790(cpu);
|
|
/* 022B3CD8 */ _t7 = cpu->r[29] + 0x00000324u;
|
|
/* 022B3CD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B3CDC */ cpu->r[4] = cpu->r[31];
|
|
/* 022B3CE0 */ cpu->r[5] = cpu->r[30];
|
|
/* 022B3CE4 */ Gambit_fn_0204049C(cpu);
|
|
/* 022B3CE8 */ _t8 = cpu->r[29] + 0x00000324u;
|
|
/* 022B3CE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B3CEC */ cpu->r[3] = cpu->r[30];
|
|
/* 022B3CF0 */ Gambit_fn_0203F288(cpu);
|
|
/* 022B3CF4 */ cpu->r[31] = 0x00000001u;
|
|
/* 022B3CF8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 022B3CFC */ cpu->r[28] = 0x10060000u;
|
|
/* 022B3D00 */ _t9 = cpu->r[30] + 0x000001E8u;
|
|
/* 022B3D00 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[31]);
|
|
/* 022B3D04 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022B3D08 */ cpu->r[28] = cpu->r[28] + 0x00003AB0u;
|
|
/* 022B3D0C */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 022B3D0C */ rbrew_write32(cpu->mem, _t10, cpu->r[27]);
|
|
/* 022B3D10 */ cpu->r[5] = 0x00000000u;
|
|
/* 022B3D14 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 022B3D14 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 022B3D18 */ Gambit_fn_027C6C00(cpu);
|
|
/* 022B3D1C */ cpu->r[5] = 0x00000000u;
|
|
/* 022B3D20 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B3D24 */ cpu->r[3] = cpu->r[29] + 0x00000328u;
|
|
/* 022B3D28 */ cpu->r[6] = cpu->r[5];
|
|
/* 022B3D2C */ cpu->r[4] = cpu->r[30];
|
|
/* 022B3D30 */ Gambit_fn_027DF790(cpu);
|
|
/* 022B3D34 */ _t12 = cpu->r[29] + 0x00000384u;
|
|
/* 022B3D34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B3D38 */ cpu->r[5] = cpu->r[28];
|
|
/* 022B3D3C */ cpu->r[4] = cpu->r[30];
|
|
/* 022B3D40 */ Gambit_fn_0204049C(cpu);
|
|
/* 022B3D44 */ _t13 = cpu->r[29] + 0x00000384u;
|
|
/* 022B3D44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B3D48 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B3D4C */ Gambit_fn_0203F288(cpu);
|
|
/* 022B3D50 */ _t14 = cpu->r[30] + 0x000001E8u;
|
|
/* 022B3D50 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[31]);
|
|
/* 022B3D54 */ _t15 = cpu->r[29] + 0x0000005Cu;
|
|
/* 022B3D54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B3D58 */ Gambit_fn_02393BC8(cpu);
|
|
/* 022B3D5C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B3D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B3D60 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3D60 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B3D60 */ if (_t17) goto L_022B3DF4; else goto L_022B3D64;
|
|
L_022B3D64: ; // 0x22b3d64
|
|
/* 022B3D64 */ cpu->r[3] = 0x000000A0u;
|
|
/* 022B3D68 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B3D6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B3D70 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3D70 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022B3D70 */ if (_t19) goto L_022B3D78; else goto L_022B3D74;
|
|
L_022B3D74: ; // 0x22b3d74
|
|
/* 022B3D74 */ Gambit_fn_023AFBAC(cpu);
|
|
L_022B3D78: ; // 0x22b3d78
|
|
/* 022B3D78 */ _t20 = cpu->r[29] + 0x0000005Cu;
|
|
/* 022B3D78 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B3D7C */ _t21 = cpu->r[29] + 0x00000188u;
|
|
/* 022B3D7C */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 022B3D80 */ Gambit_fn_023B0294(cpu);
|
|
/* 022B3D84 */ _t22 = cpu->r[29] + 0x00000188u;
|
|
/* 022B3D84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B3D88 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B3D8C */ _t23 = cpu->r[12] + 0x00000038u;
|
|
/* 022B3D8C */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[0]);
|
|
/* 022B3D90 */ cpu->r[0] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 022B3D94 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B3D98 */ cpu->r[0] = cpu->r[31] - cpu->r[0];
|
|
/* 022B3D9C */ _t24 = cpu->r[12] + 0x00003A7Cu;
|
|
/* 022B3D9C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B3DA0 */ _t25 = cpu->r[29] + 0x00000070u;
|
|
/* 022B3DA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B3DA4 */ _t26 = cpu->r[29] + 0x000002C2u;
|
|
/* 022B3DA4 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[0]);
|
|
/* 022B3DA8 */ Gambit_fn_0231DF64(cpu);
|
|
/* 022B3DAC */ cpu->r[11] = 0x10060000u;
|
|
/* 022B3DB0 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3DB0 */ rbrew_write32(cpu->mem, _t27, cpu->r[27]);
|
|
/* 022B3DB4 */ cpu->r[11] = cpu->r[11] + 0x00003A80u;
|
|
/* 022B3DB8 */ _t28 = cpu->r[29] + 0x00000008u;
|
|
/* 022B3DB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B3DBC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B3DC0 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3DC0 */ rbrew_write32(cpu->mem, _t29, cpu->r[11]);
|
|
/* 022B3DC4 */ Gambit_fn_029807A8(cpu);
|
|
/* 022B3DC8 */ cpu->r[28] = cpu->r[3];
|
|
/* 022B3DCC */ _t30 = cpu->r[29] + 0x00000008u;
|
|
/* 022B3DCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B3DD0 */ /* nop */
|
|
/* 022B3DD4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B3DD8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B3DDC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 022B3DE0 */ _t31 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022B3DE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B3DE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 022B3DE8 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B3DEC */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3DEC */ _t33 = _t32 & 0x00000001u;
|
|
/* 022B3DEC */ if (_t33) goto L_022B3DF0; else goto L_022B3E68;
|
|
L_022B3DF0: ; // 0x22b3df0
|
|
/* 022B3DF0 */ goto L_022B3E5C;
|
|
L_022B3DF4: ; // 0x22b3df4
|
|
/* 022B3DF4 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B3DF8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B3DFC */ _t34 = cpu->r[29] + 0x00000188u;
|
|
/* 022B3DFC */ rbrew_write32(cpu->mem, _t34, cpu->r[8]);
|
|
/* 022B3E00 */ cpu->r[0] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 022B3E04 */ _t35 = cpu->r[12] + 0x00003A7Cu;
|
|
/* 022B3E04 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B3E08 */ cpu->r[0] = cpu->r[31] - cpu->r[0];
|
|
/* 022B3E0C */ _t36 = cpu->r[29] + 0x00000070u;
|
|
/* 022B3E0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B3E10 */ _t37 = cpu->r[29] + 0x000002C2u;
|
|
/* 022B3E10 */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[0]);
|
|
/* 022B3E14 */ Gambit_fn_0231DF64(cpu);
|
|
/* 022B3E18 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B3E1C */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3E1C */ rbrew_write32(cpu->mem, _t38, cpu->r[27]);
|
|
/* 022B3E20 */ cpu->r[11] = cpu->r[11] + 0x00003A80u;
|
|
/* 022B3E24 */ _t39 = cpu->r[29] + 0x00000008u;
|
|
/* 022B3E24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022B3E28 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B3E2C */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3E2C */ rbrew_write32(cpu->mem, _t40, cpu->r[11]);
|
|
/* 022B3E30 */ Gambit_fn_029807A8(cpu);
|
|
/* 022B3E34 */ cpu->r[28] = cpu->r[3];
|
|
/* 022B3E38 */ _t41 = cpu->r[29] + 0x00000008u;
|
|
/* 022B3E38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B3E3C */ /* nop */
|
|
/* 022B3E40 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B3E44 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B3E48 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 022B3E4C */ _t42 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022B3E4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B3E50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 022B3E54 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B3E58 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B3E58 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022B3E58 */ if (_t44) goto L_022B3E5C; else goto L_022B3E68;
|
|
L_022B3E5C: ; // 0x22b3e5c
|
|
/* 022B3E5C */ _t45 = cpu->r[30] + 0x00000024u;
|
|
/* 022B3E5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B3E60 */ cpu->r[8] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B3E64 */ _t46 = cpu->r[8] + cpu->r[0];
|
|
/* 022B3E64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t46);
|
|
L_022B3E68: ; // 0x22b3e68
|
|
/* 022B3E68 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 022B3E68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022B3E6C */ _t48 = cpu->r[3] + 0x00000088u;
|
|
/* 022B3E6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022B3E70 */ _t49 = cpu->r[10] + 0x00000064u;
|
|
/* 022B3E70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022B3E74 */ cpu->ctr = cpu->r[0];
|
|
/* 022B3E78 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 022B3E7C */ cpu->r[4] = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B3E80 */ /* nop */
|
|
/* 022B3E84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B3E88 */ cpu->r[5] = 0x00000003u;
|
|
/* 022B3E8C */ cpu->r[4] = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B3E90 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 022B3E94 */ Gambit_fn_0200FE00(cpu);
|
|
/* 022B3E98 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 022B3E98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022B3E9C */ _t51 = cpu->r[1] + 0x00000038u;
|
|
/* 022B3E9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B3EA0 */ _t52 = cpu->r[1] + 0x00000028u;
|
|
/* 022B3EA0 */ rbrew_write32(cpu->mem, _t52, cpu->r[11]);
|
|
/* 022B3EA4 */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 022B3EA4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022B3EA8 */ _t54 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B3EA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022B3EAC */ _t55 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B3EAC */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 022B3EB0 */ _t56 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B3EB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022B3EB4 */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 022B3EB4 */ rbrew_write32(cpu->mem, _t57, cpu->r[11]);
|
|
/* 022B3EB8 */ _t58 = cpu->r[1] + 0x00000030u;
|
|
/* 022B3EB8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B3EBC */ _t59 = cpu->r[29] + 0x0000007Cu;
|
|
/* 022B3EBC */ rbrew_write_f32(cpu->mem, _t59, cpu->f[13]);
|
|
/* 022B3EC0 */ _t60 = cpu->r[29] + 0x00000080u;
|
|
/* 022B3EC0 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 022B3EC4 */ _t61 = cpu->r[29] + 0x00000078u;
|
|
/* 022B3EC4 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 022B3EC8 */ /* nop */
|
|
/* 022B3ECC */ _t62 = cpu->r[1] + 0x00000094u;
|
|
/* 022B3ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B3ED0 */ cpu->lr = cpu->r[0];
|
|
/* 022B3ED4 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 022B3ED8 */ return;
|
|
}
|
|
|
|
// fn_022B3EDC @ 0x22b3edc
|
|
void Gambit_fn_022B3EDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022B3EDC: ; // 0x22b3edc
|
|
/* 022B3EDC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B3EDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B3EDC */ cpu->r[1] = _t0;
|
|
/* 022B3EE0 */ _t1 = cpu->r[3] + 0x000002BCu;
|
|
/* 022B3EE0 */ cpu->r[11] = rbrew_read16(cpu->mem, _t1);
|
|
/* 022B3EE4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B3EE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B3EEC */ _t2 = cpu->r[12] + 0x000037E8u;
|
|
/* 022B3EEC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022B3EF0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B3EF0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B3EF0 */ if (_t4) goto L_022B3F14; else goto L_022B3EF4;
|
|
L_022B3EF4: ; // 0x22b3ef4
|
|
/* 022B3EF4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B3EF4 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022B3EF8 */ cpu->r[0] = 0x43300000u;
|
|
/* 022B3EFC */ cpu->r[12] = 0x10060000u;
|
|
/* 022B3F00 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3F00 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B3F04 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022B3F04 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t7);
|
|
/* 022B3F08 */ _t8 = cpu->r[12] + 0x00003AC8u;
|
|
/* 022B3F08 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t8);
|
|
/* 022B3F0C */ cpu->f[10] = cpu->f[13] - cpu->f[0];
|
|
/* 022B3F10 */ cpu->f[10] = (double)(float)cpu->f[10];
|
|
L_022B3F14: ; // 0x22b3f14
|
|
/* 022B3F14 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B3F18 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B3F1C */ _t9 = cpu->r[11] + 0x00003AD4u;
|
|
/* 022B3F1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B3F20 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B3F24 */ _t10 = cpu->r[12] + 0x00003AD0u;
|
|
/* 022B3F24 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B3F28 */ _t11 = cpu->r[11] + 0x00003AD8u;
|
|
/* 022B3F28 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B3F2C */ cpu->f[13] = fma(cpu->f[13], cpu->f[10], cpu->f[0]);
|
|
/* 022B3F30 */ _t12 = cpu->r[3] + 0x00000198u;
|
|
/* 022B3F30 */ cpu->r[11] = rbrew_read8(cpu->mem, _t12);
|
|
/* 022B3F34 */ cpu->f[11] = cpu->f[13] * cpu->f[11];
|
|
/* 022B3F38 */ /* nop */
|
|
/* 022B3F3C */ cpu->r[0] = cpu->r[11] + 0xFFFFFFF7u;
|
|
/* 022B3F40 */ cpu->f[12] = -cpu->f[11];
|
|
/* 022B3F44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 022B3F48 */ _t13 = cpu->r[3] + 0x000002B8u;
|
|
/* 022B3F48 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 022B3F4C */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B3F4C */ _t15 = _t14 & 0x00000001u;
|
|
/* 022B3F4C */ if (_t15) goto L_022B3F50; else goto L_022B3F68;
|
|
L_022B3F50: ; // 0x22b3f50
|
|
/* 022B3F50 */ _t16 = cpu->r[3] + 0x000002B4u;
|
|
/* 022B3F50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B3F54 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B3F58 */ cpu->f[11] = cpu->f[12] - cpu->f[0];
|
|
/* 022B3F5C */ _t17 = cpu->r[12] + 0x00003ADCu;
|
|
/* 022B3F5C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B3F60 */ cpu->f[10] = fma(cpu->f[11], cpu->f[12], cpu->f[0]);
|
|
/* 022B3F64 */ _t18 = cpu->r[3] + 0x000002B4u;
|
|
/* 022B3F64 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[10]);
|
|
L_022B3F68: ; // 0x22b3f68
|
|
/* 022B3F68 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B3F6C */ return;
|
|
}
|
|
|
|
// fn_022B3F70 @ 0x22b3f70
|
|
void Gambit_fn_022B3F70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345;
|
|
double _ft190, _ft191, _ft199, _ft200, _ft208, _ft209;
|
|
|
|
L_022B3F70: ; // 0x22b3f70
|
|
/* 022B3F70 */ cpu->r[0] = cpu->lr;
|
|
/* 022B3F74 */ _t0 = cpu->r[1] + 0xFFFFFE78u;
|
|
/* 022B3F74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B3F74 */ cpu->r[1] = _t0;
|
|
/* 022B3F78 */ _t1 = cpu->r[1] + 0x00000178u;
|
|
/* 022B3F78 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B3F7C */ /* nop */
|
|
/* 022B3F80 */ _t2 = cpu->r[1] + 0x0000016Cu;
|
|
/* 022B3F80 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022B3F84 */ _t3 = cpu->r[1] + 0x00000180u;
|
|
/* 022B3F84 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022B3F88 */ _t4 = cpu->r[1] + 0x00000170u;
|
|
/* 022B3F88 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022B3F8C */ _t5 = cpu->r[1] + 0x00000174u;
|
|
/* 022B3F8C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022B3F90 */ _t6 = cpu->r[1] + 0x0000018Cu;
|
|
/* 022B3F90 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B3F94 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B3F98 */ _t7 = cpu->r[1] + 0x00000168u;
|
|
/* 022B3F98 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 022B3F9C */ Gambit_fn_022B3EDC(cpu);
|
|
/* 022B3FA0 */ _t8 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B3FA0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B3FA4 */ _t9 = cpu->r[31] + 0x00000140u;
|
|
/* 022B3FA4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B3FA8 */ _t10 = cpu->r[1] + 0x00000068u;
|
|
/* 022B3FA8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[9]);
|
|
/* 022B3FAC */ _t11 = cpu->r[31] + 0x00000134u;
|
|
/* 022B3FAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B3FB0 */ _t12 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B3FB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B3FB4 */ _t13 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B3FB4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B3FB8 */ _t14 = cpu->r[31] + 0x00000120u;
|
|
/* 022B3FB8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B3FBC */ _t15 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B3FBC */ rbrew_write_f32(cpu->mem, _t15, cpu->f[9]);
|
|
/* 022B3FC0 */ _t16 = cpu->r[1] + 0x00000078u;
|
|
/* 022B3FC0 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[8]);
|
|
/* 022B3FC4 */ _t17 = cpu->r[1] + 0x00000070u;
|
|
/* 022B3FC4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 022B3FC8 */ _t18 = cpu->r[31] + 0x00000144u;
|
|
/* 022B3FC8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B3FCC */ _t19 = cpu->r[1] + 0x00000090u;
|
|
/* 022B3FCC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022B3FD0 */ _t20 = cpu->r[1] + 0x00000084u;
|
|
/* 022B3FD0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 022B3FD4 */ _t21 = cpu->r[31] + 0x00000128u;
|
|
/* 022B3FD4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B3FD8 */ _t22 = cpu->r[31] + 0x00000124u;
|
|
/* 022B3FD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B3FDC */ _t23 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B3FDC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[10]);
|
|
/* 022B3FE0 */ _t24 = cpu->r[1] + 0x00000088u;
|
|
/* 022B3FE0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 022B3FE4 */ _t25 = cpu->r[31] + 0x00000130u;
|
|
/* 022B3FE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B3FE8 */ _t26 = cpu->r[31] + 0x00000148u;
|
|
/* 022B3FE8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B3FEC */ _t27 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B3FEC */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 022B3FF0 */ _t28 = cpu->r[1] + 0x00000074u;
|
|
/* 022B3FF0 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[7]);
|
|
/* 022B3FF4 */ _t29 = cpu->r[31] + 0x00000138u;
|
|
/* 022B3FF4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B3FF8 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 022B3FFC */ cpu->r[4] = cpu->r[31] + 0x00000254u;
|
|
/* 022B4000 */ _t30 = cpu->r[1] + 0x00000094u;
|
|
/* 022B4000 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[6]);
|
|
/* 022B4004 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4008 */ _t31 = cpu->r[1] + 0x00000080u;
|
|
/* 022B4008 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[10]);
|
|
/* 022B400C */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4010 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 022B4014 */ cpu->r[4] = cpu->r[31] + 0x00000224u;
|
|
/* 022B4018 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B401C */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4020 */ cpu->r[9] = 0x101F0000u;
|
|
/* 022B4024 */ cpu->r[7] = 0x101E0000u;
|
|
/* 022B4028 */ _t32 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B4028 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B402C */ cpu->r[9] = cpu->r[9] + 0x00006368u;
|
|
/* 022B4030 */ cpu->r[7] = cpu->r[7] + 0x00003A6Cu;
|
|
/* 022B4034 */ /* nop */
|
|
/* 022B4038 */ _t33 = cpu->r[7] + 0x00000008u;
|
|
/* 022B4038 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B403C */ /* nop */
|
|
/* 022B4040 */ /* nop */
|
|
/* 022B4044 */ _t34 = cpu->r[9] + 0x00000008u;
|
|
/* 022B4044 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B4048 */ /* nop */
|
|
/* 022B404C */ /* nop */
|
|
/* 022B4050 */ _t35 = cpu->r[1] + 0x0000011Cu;
|
|
/* 022B4050 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B4054 */ cpu->f[10] = cpu->f[11] * cpu->f[0];
|
|
/* 022B4058 */ /* nop */
|
|
/* 022B405C */ _t36 = cpu->r[1] + 0x00000128u;
|
|
/* 022B405C */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B4060 */ cpu->f[6] = cpu->f[7] * cpu->f[0];
|
|
/* 022B4064 */ _t37 = cpu->r[1] + 0x00000124u;
|
|
/* 022B4064 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[10]);
|
|
/* 022B4068 */ _t38 = cpu->r[1] + 0x00000124u;
|
|
/* 022B4068 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B406C */ _t39 = cpu->r[1] + 0x00000120u;
|
|
/* 022B406C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022B4070 */ _t40 = cpu->r[1] + 0x00000130u;
|
|
/* 022B4070 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[6]);
|
|
/* 022B4074 */ _t41 = cpu->r[1] + 0x00000130u;
|
|
/* 022B4074 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B4078 */ cpu->r[29] = 0x101F0000u;
|
|
/* 022B407C */ cpu->r[29] = cpu->r[29] + 0x00006338u;
|
|
/* 022B4080 */ _t42 = cpu->r[1] + 0x00000108u;
|
|
/* 022B4080 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 022B4084 */ cpu->r[3] = cpu->r[31] + 0x000001C4u;
|
|
/* 022B4088 */ _t43 = cpu->r[1] + 0x0000012Cu;
|
|
/* 022B4088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B408C */ cpu->r[4] = cpu->r[1] + 0x00000104u;
|
|
/* 022B4090 */ _t44 = cpu->r[1] + 0x00000104u;
|
|
/* 022B4090 */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 022B4094 */ cpu->r[7] = cpu->r[1] + 0x00000110u;
|
|
/* 022B4098 */ _t45 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022B4098 */ rbrew_write32(cpu->mem, _t45, cpu->r[6]);
|
|
/* 022B409C */ _t46 = cpu->r[1] + 0x00000118u;
|
|
/* 022B409C */ rbrew_write32(cpu->mem, _t46, cpu->r[5]);
|
|
/* 022B40A0 */ cpu->r[6] = cpu->r[7];
|
|
/* 022B40A4 */ _t47 = cpu->r[1] + 0x00000110u;
|
|
/* 022B40A4 */ rbrew_write32(cpu->mem, _t47, cpu->r[9]);
|
|
/* 022B40A8 */ cpu->r[5] = cpu->r[29];
|
|
/* 022B40AC */ _t48 = cpu->r[1] + 0x00000114u;
|
|
/* 022B40AC */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 022B40B0 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B40B4 */ cpu->r[4] = 0x101E0000u;
|
|
/* 022B40B8 */ _t49 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B40B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B40BC */ cpu->r[4] = cpu->r[4] + 0x00003A78u;
|
|
/* 022B40C0 */ cpu->r[28] = 0x101E0000u;
|
|
/* 022B40C4 */ _t50 = cpu->r[4] + 0x00000008u;
|
|
/* 022B40C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B40C8 */ cpu->r[28] = cpu->r[28] + 0x00003A60u;
|
|
/* 022B40CC */ /* nop */
|
|
/* 022B40D0 */ /* nop */
|
|
/* 022B40D4 */ /* nop */
|
|
/* 022B40D8 */ _t51 = cpu->r[28] + 0x00000008u;
|
|
/* 022B40D8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022B40DC */ cpu->f[10] = cpu->f[11] * cpu->f[0];
|
|
/* 022B40E0 */ /* nop */
|
|
/* 022B40E4 */ _t52 = cpu->r[1] + 0x00000134u;
|
|
/* 022B40E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022B40E8 */ /* nop */
|
|
/* 022B40EC */ _t53 = cpu->r[1] + 0x00000138u;
|
|
/* 022B40EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B40F0 */ /* nop */
|
|
/* 022B40F4 */ _t54 = cpu->r[1] + 0x00000140u;
|
|
/* 022B40F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022B40F8 */ cpu->f[0] = cpu->f[6] * cpu->f[0];
|
|
/* 022B40FC */ _t55 = cpu->r[1] + 0x00000110u;
|
|
/* 022B40FC */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 022B4100 */ _t56 = cpu->r[1] + 0x00000144u;
|
|
/* 022B4100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022B4104 */ _t57 = cpu->r[1] + 0x00000148u;
|
|
/* 022B4104 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 022B4108 */ _t58 = cpu->r[1] + 0x00000148u;
|
|
/* 022B4108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022B410C */ _t59 = cpu->r[1] + 0x0000013Cu;
|
|
/* 022B410C */ rbrew_write_f32(cpu->mem, _t59, cpu->f[10]);
|
|
/* 022B4110 */ _t60 = cpu->r[1] + 0x0000013Cu;
|
|
/* 022B4110 */ cpu->r[6] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022B4114 */ _t61 = cpu->r[1] + 0x00000108u;
|
|
/* 022B4114 */ rbrew_write32(cpu->mem, _t61, cpu->r[12]);
|
|
/* 022B4118 */ cpu->r[9] = cpu->r[1] + 0x00000104u;
|
|
/* 022B411C */ _t62 = cpu->r[1] + 0x00000118u;
|
|
/* 022B411C */ rbrew_write32(cpu->mem, _t62, cpu->r[6]);
|
|
/* 022B4120 */ cpu->r[6] = cpu->r[9];
|
|
/* 022B4124 */ _t63 = cpu->r[1] + 0x00000114u;
|
|
/* 022B4124 */ rbrew_write32(cpu->mem, _t63, cpu->r[5]);
|
|
/* 022B4128 */ cpu->r[4] = cpu->r[1] + 0x00000110u;
|
|
/* 022B412C */ _t64 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022B412C */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 022B4130 */ cpu->r[5] = cpu->r[29];
|
|
/* 022B4134 */ cpu->r[3] = cpu->r[31] + 0x000001F4u;
|
|
/* 022B4138 */ _t65 = cpu->r[1] + 0x00000104u;
|
|
/* 022B4138 */ rbrew_write32(cpu->mem, _t65, cpu->r[11]);
|
|
/* 022B413C */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B4140 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B4144 */ _t66 = cpu->r[31] + 0x000002B4u;
|
|
/* 022B4144 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022B4148 */ _t67 = cpu->r[6] + 0x000037E8u;
|
|
/* 022B4148 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022B414C */ _t68 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B414C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[7]);
|
|
/* 022B4150 */ _t69 = cpu->r[1] + 0x000000FCu;
|
|
/* 022B4150 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[31]);
|
|
/* 022B4154 */ cpu->r[4] = cpu->r[1] + 0x000000F8u;
|
|
/* 022B4158 */ cpu->r[3] = cpu->r[31] + 0x00000254u;
|
|
/* 022B415C */ _t70 = cpu->r[1] + 0x00000100u;
|
|
/* 022B415C */ rbrew_write_f32(cpu->mem, _t70, cpu->f[31]);
|
|
/* 022B4160 */ Gambit_fn_021E983C(cpu);
|
|
/* 022B4164 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B4168 */ _t71 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B4168 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022B416C */ cpu->r[30] = cpu->r[30] + 0x00003A54u;
|
|
/* 022B4170 */ /* nop */
|
|
/* 022B4174 */ _t72 = cpu->r[30] + 0x00000008u;
|
|
/* 022B4174 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 022B4178 */ /* nop */
|
|
/* 022B417C */ _t73 = cpu->r[28] + 0x00000008u;
|
|
/* 022B417C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 022B4180 */ cpu->f[10] = cpu->f[12] * cpu->f[0];
|
|
/* 022B4184 */ /* nop */
|
|
/* 022B4188 */ /* nop */
|
|
/* 022B418C */ cpu->f[11] = cpu->f[6] * cpu->f[0];
|
|
/* 022B4190 */ _t74 = cpu->r[1] + 0x00000154u;
|
|
/* 022B4190 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[10]);
|
|
/* 022B4194 */ _t75 = cpu->r[1] + 0x00000154u;
|
|
/* 022B4194 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022B4198 */ _t76 = cpu->r[1] + 0x0000014Cu;
|
|
/* 022B4198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022B419C */ /* nop */
|
|
/* 022B41A0 */ _t77 = cpu->r[1] + 0x00000110u;
|
|
/* 022B41A0 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 022B41A4 */ /* nop */
|
|
/* 022B41A8 */ _t78 = cpu->r[1] + 0x00000158u;
|
|
/* 022B41A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B41AC */ _t79 = cpu->r[1] + 0x00000160u;
|
|
/* 022B41AC */ rbrew_write_f32(cpu->mem, _t79, cpu->f[11]);
|
|
/* 022B41B0 */ _t80 = cpu->r[1] + 0x00000160u;
|
|
/* 022B41B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022B41B4 */ _t81 = cpu->r[1] + 0x00000150u;
|
|
/* 022B41B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022B41B8 */ _t82 = cpu->r[1] + 0x00000104u;
|
|
/* 022B41B8 */ rbrew_write32(cpu->mem, _t82, cpu->r[0]);
|
|
/* 022B41BC */ _t83 = cpu->r[1] + 0x00000114u;
|
|
/* 022B41BC */ rbrew_write32(cpu->mem, _t83, cpu->r[11]);
|
|
/* 022B41C0 */ cpu->r[5] = cpu->r[29];
|
|
/* 022B41C4 */ _t84 = cpu->r[1] + 0x0000015Cu;
|
|
/* 022B41C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022B41C8 */ cpu->r[6] = cpu->r[1] + 0x00000104u;
|
|
/* 022B41CC */ _t85 = cpu->r[1] + 0x00000118u;
|
|
/* 022B41CC */ rbrew_write32(cpu->mem, _t85, cpu->r[4]);
|
|
/* 022B41D0 */ cpu->r[9] = cpu->r[1] + 0x00000110u;
|
|
/* 022B41D4 */ _t86 = cpu->r[1] + 0x00000108u;
|
|
/* 022B41D4 */ rbrew_write32(cpu->mem, _t86, cpu->r[7]);
|
|
/* 022B41D8 */ cpu->r[4] = cpu->r[9];
|
|
/* 022B41DC */ cpu->r[3] = cpu->r[31] + 0x00000224u;
|
|
/* 022B41E0 */ _t87 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022B41E0 */ rbrew_write32(cpu->mem, _t87, cpu->r[8]);
|
|
/* 022B41E4 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B41E8 */ _t88 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B41E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 022B41EC */ _t89 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B41EC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022B41F0 */ _t90 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B41F0 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[13]);
|
|
/* 022B41F4 */ _t91 = cpu->r[1] + 0x00000008u;
|
|
/* 022B41F4 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[6]);
|
|
/* 022B41F8 */ _t92 = cpu->r[1] + 0x00000038u;
|
|
/* 022B41F8 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[6]);
|
|
/* 022B41FC */ _t93 = cpu->r[31] + 0x00000138u;
|
|
/* 022B41FC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 022B4200 */ _t94 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4200 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 022B4204 */ _t95 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4204 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[7]);
|
|
/* 022B4208 */ _t96 = cpu->r[1] + 0x00000050u;
|
|
/* 022B4208 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[8]);
|
|
/* 022B420C */ _t97 = cpu->r[1] + 0x00000010u;
|
|
/* 022B420C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[8]);
|
|
/* 022B4210 */ _t98 = cpu->r[1] + 0x00000048u;
|
|
/* 022B4210 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[13]);
|
|
/* 022B4214 */ _t99 = cpu->r[31] + 0x00000124u;
|
|
/* 022B4214 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 022B4218 */ _t100 = cpu->r[31] + 0x00000140u;
|
|
/* 022B4218 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 022B421C */ _t101 = cpu->r[31] + 0x00000120u;
|
|
/* 022B421C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 022B4220 */ _t102 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4220 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[12]);
|
|
/* 022B4224 */ _t103 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B4224 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[12]);
|
|
/* 022B4228 */ _t104 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B4228 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 022B422C */ _t105 = cpu->r[31] + 0x00000130u;
|
|
/* 022B422C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 022B4230 */ _t106 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4230 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[11]);
|
|
/* 022B4234 */ _t107 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4234 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[11]);
|
|
/* 022B4238 */ _t108 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4238 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 022B423C */ _t109 = cpu->r[1] + 0x00000058u;
|
|
/* 022B423C */ rbrew_write_f32(cpu->mem, _t109, cpu->f[6]);
|
|
/* 022B4240 */ _t110 = cpu->r[1] + 0x00000064u;
|
|
/* 022B4240 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[11]);
|
|
/* 022B4244 */ _t111 = cpu->r[31] + 0x00000144u;
|
|
/* 022B4244 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 022B4248 */ _t112 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4248 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[12]);
|
|
/* 022B424C */ _t113 = cpu->r[1] + 0x00000024u;
|
|
/* 022B424C */ rbrew_write_f32(cpu->mem, _t113, cpu->f[9]);
|
|
/* 022B4250 */ _t114 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4250 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[12]);
|
|
/* 022B4254 */ _t115 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4254 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[10]);
|
|
/* 022B4258 */ _t116 = cpu->r[31] + 0x00000128u;
|
|
/* 022B4258 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 022B425C */ _t117 = cpu->r[1] + 0x00000054u;
|
|
/* 022B425C */ rbrew_write_f32(cpu->mem, _t117, cpu->f[7]);
|
|
/* 022B4260 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4260 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[0]);
|
|
/* 022B4264 */ _t119 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4264 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[6]);
|
|
/* 022B4268 */ _t120 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4268 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[11]);
|
|
/* 022B426C */ cpu->r[4] = cpu->r[31] + 0x00000354u;
|
|
/* 022B4270 */ _t121 = cpu->r[1] + 0x00000060u;
|
|
/* 022B4270 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[9]);
|
|
/* 022B4274 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4278 */ _t122 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4278 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[0]);
|
|
/* 022B427C */ _t123 = cpu->r[1] + 0x00000028u;
|
|
/* 022B427C */ rbrew_write_f32(cpu->mem, _t123, cpu->f[10]);
|
|
/* 022B4280 */ Gambit_fn_02C69510(cpu);
|
|
/* 022B4284 */ _t124 = cpu->r[31] + 0x00000384u;
|
|
/* 022B4284 */ cpu->r[3] = rbrew_read32(cpu->mem, _t124);
|
|
/* 022B4288 */ _t125 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B4288 */ cpu->r[7] = rbrew_read32(cpu->mem, _t125);
|
|
/* 022B428C */ _t126 = cpu->r[7] + 0x0000002Cu;
|
|
/* 022B428C */ cpu->r[8] = rbrew_read32(cpu->mem, _t126);
|
|
/* 022B4290 */ cpu->ctr = cpu->r[8];
|
|
/* 022B4294 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B4298 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B429C */ _t127 = cpu->r[31] + 0x00000384u;
|
|
/* 022B429C */ cpu->r[3] = rbrew_read32(cpu->mem, _t127);
|
|
/* 022B42A0 */ _t128 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B42A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t128);
|
|
/* 022B42A4 */ _t129 = cpu->r[11] + 0x00000024u;
|
|
/* 022B42A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 022B42A8 */ cpu->ctr = cpu->r[0];
|
|
/* 022B42AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B42B0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B42B4 */ _t130 = cpu->r[10] + 0x000037DCu;
|
|
/* 022B42B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 022B42B8 */ _t131 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B42B8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 022B42BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 022B42C0 */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B42C0 */ _t133 = _t132 & 0x00000001u;
|
|
/* 022B42C0 */ if (_t133) goto L_022B4714; else goto L_022B42C4;
|
|
L_022B42C4: ; // 0x22b42c4
|
|
/* 022B42C4 */ _t134 = cpu->r[31] + 0x00000138u;
|
|
/* 022B42C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 022B42C8 */ _t135 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B42C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 022B42CC */ _t136 = cpu->r[1] + 0x00000020u;
|
|
/* 022B42CC */ rbrew_write_f32(cpu->mem, _t136, cpu->f[12]);
|
|
/* 022B42D0 */ _t137 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B42D0 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[11]);
|
|
/* 022B42D4 */ _t138 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B42D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 022B42D8 */ _t139 = cpu->r[31] + 0x00000120u;
|
|
/* 022B42D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 022B42DC */ _t140 = cpu->r[1] + 0x00000030u;
|
|
/* 022B42DC */ rbrew_write_f32(cpu->mem, _t140, cpu->f[11]);
|
|
/* 022B42E0 */ _t141 = cpu->r[1] + 0x00000018u;
|
|
/* 022B42E0 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[9]);
|
|
/* 022B42E4 */ _t142 = cpu->r[31] + 0x00000130u;
|
|
/* 022B42E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 022B42E8 */ _t143 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B42E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 022B42EC */ _t144 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B42EC */ rbrew_write_f32(cpu->mem, _t144, cpu->f[9]);
|
|
/* 022B42F0 */ _t145 = cpu->r[1] + 0x00000008u;
|
|
/* 022B42F0 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[13]);
|
|
/* 022B42F4 */ _t146 = cpu->r[31] + 0x00000140u;
|
|
/* 022B42F4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 022B42F8 */ _t147 = cpu->r[31] + 0x00000144u;
|
|
/* 022B42F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 022B42FC */ _t148 = cpu->r[1] + 0x00000014u;
|
|
/* 022B42FC */ rbrew_write_f32(cpu->mem, _t148, cpu->f[7]);
|
|
/* 022B4300 */ _t149 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4300 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[13]);
|
|
/* 022B4304 */ _t150 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4304 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 022B4308 */ _t151 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4308 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 022B430C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4310 */ _t152 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4310 */ rbrew_write_f32(cpu->mem, _t152, cpu->f[12]);
|
|
/* 022B4314 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4318 */ _t153 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4318 */ rbrew_write_f32(cpu->mem, _t153, cpu->f[6]);
|
|
/* 022B431C */ _t154 = cpu->r[31] + 0x00000128u;
|
|
/* 022B431C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 022B4320 */ _t155 = cpu->r[31] + 0x00000124u;
|
|
/* 022B4320 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 022B4324 */ _t156 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4324 */ rbrew_write_f32(cpu->mem, _t156, cpu->f[0]);
|
|
/* 022B4328 */ cpu->r[4] = cpu->r[31] + 0x00000254u;
|
|
/* 022B432C */ _t157 = cpu->r[1] + 0x00000028u;
|
|
/* 022B432C */ rbrew_write_f32(cpu->mem, _t157, cpu->f[6]);
|
|
/* 022B4330 */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4334 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4338 */ cpu->r[4] = cpu->r[31] + 0x00000224u;
|
|
/* 022B433C */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4340 */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4344 */ cpu->r[4] = cpu->r[31] + 0x000002F4u;
|
|
/* 022B4348 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B434C */ Gambit_fn_02C69510(cpu);
|
|
/* 022B4350 */ _t158 = cpu->r[31] + 0x00000324u;
|
|
/* 022B4350 */ cpu->r[3] = rbrew_read32(cpu->mem, _t158);
|
|
/* 022B4354 */ _t159 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B4354 */ cpu->r[10] = rbrew_read32(cpu->mem, _t159);
|
|
/* 022B4358 */ _t160 = cpu->r[10] + 0x00000044u;
|
|
/* 022B4358 */ cpu->r[0] = rbrew_read32(cpu->mem, _t160);
|
|
/* 022B435C */ _t161 = cpu->r[30] + 0x00000000u;
|
|
/* 022B435C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 022B4360 */ cpu->ctr = cpu->r[0];
|
|
/* 022B4364 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B4368 */ _t162 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4368 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 022B436C */ _t163 = cpu->r[1] + 0x00000018u;
|
|
/* 022B436C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 022B4370 */ _t164 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4370 */ rbrew_write_f32(cpu->mem, _t164, cpu->f[5]);
|
|
/* 022B4374 */ _t165 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4374 */ rbrew_write_f32(cpu->mem, _t165, cpu->f[12]);
|
|
/* 022B4378 */ _t166 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4378 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 022B437C */ cpu->r[4] = 0x10060000u;
|
|
/* 022B4380 */ _t167 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4380 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 022B4384 */ _t168 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4384 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 022B4388 */ _t169 = cpu->r[1] + 0x00000048u;
|
|
/* 022B4388 */ rbrew_write_f32(cpu->mem, _t169, cpu->f[9]);
|
|
/* 022B438C */ _t170 = cpu->r[1] + 0x00000050u;
|
|
/* 022B438C */ rbrew_write_f32(cpu->mem, _t170, cpu->f[7]);
|
|
/* 022B4390 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 022B4394 */ _t171 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4394 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 022B4398 */ _t172 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4398 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 022B439C */ _t173 = cpu->r[1] + 0x00000054u;
|
|
/* 022B439C */ rbrew_write_f32(cpu->mem, _t173, cpu->f[9]);
|
|
/* 022B43A0 */ cpu->f[7] = fma(cpu->f[6], cpu->f[6], cpu->f[13]);
|
|
/* 022B43A4 */ _t174 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B43A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 022B43A8 */ _t175 = cpu->r[4] + 0x000037ECu;
|
|
/* 022B43A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 022B43AC */ _t176 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B43AC */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 022B43B0 */ cpu->f[1] = fma(cpu->f[5], cpu->f[5], cpu->f[7]);
|
|
/* 022B43B4 */ _t177 = cpu->r[1] + 0x00000034u;
|
|
/* 022B43B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 022B43B8 */ _t178 = cpu->r[1] + 0x00000038u;
|
|
/* 022B43B8 */ rbrew_write_f32(cpu->mem, _t178, cpu->f[6]);
|
|
/* 022B43BC */ _t179 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B43BC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 022B43C0 */ _t180 = cpu->r[1] + 0x00000064u;
|
|
/* 022B43C0 */ rbrew_write_f32(cpu->mem, _t180, cpu->f[7]);
|
|
/* 022B43C4 */ _t181 = cpu->r[1] + 0x00000044u;
|
|
/* 022B43C4 */ rbrew_write_f32(cpu->mem, _t181, cpu->f[6]);
|
|
/* 022B43C8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B43CC */ _t182 = cpu->r[1] + 0x00000030u;
|
|
/* 022B43CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 022B43D0 */ _t183 = cpu->r[1] + 0x00000014u;
|
|
/* 022B43D0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 022B43D4 */ _t184 = cpu->r[1] + 0x00000058u;
|
|
/* 022B43D4 */ rbrew_write_f32(cpu->mem, _t184, cpu->f[11]);
|
|
/* 022B43D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 022B43DC */ _t185 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B43DC */ rbrew_write_f32(cpu->mem, _t185, cpu->f[8]);
|
|
/* 022B43E0 */ _t186 = cpu->r[9] + 0x000037E4u;
|
|
/* 022B43E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 022B43E4 */ _t187 = cpu->r[1] + 0x00000060u;
|
|
/* 022B43E4 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[10]);
|
|
/* 022B43E8 */ _t188 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B43E8 */ _t189 = _t188 & 0x00000001u;
|
|
/* 022B43E8 */ if (_t189) goto L_022B43EC; else goto L_022B441C;
|
|
L_022B43EC: ; // 0x22b43ec
|
|
/* 022B43EC */ _ft190 = sqrt(cpu->f[1]);
|
|
/* 022B43EC */ _ft191 = (double)(int32_t)0x00000001u;
|
|
/* 022B43EC */ cpu->f[8] = _ft191 / _ft190;
|
|
/* 022B43F0 */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 022B43F4 */ cpu->f[10] = cpu->f[8] * cpu->f[0];
|
|
/* 022B43F8 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[1], -(cpu->f[13]));
|
|
/* 022B43FC */ cpu->f[8] = cpu->f[9] * cpu->f[10];
|
|
/* 022B4400 */ /* nop */
|
|
/* 022B4404 */ _t192 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4404 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 022B4408 */ /* nop */
|
|
/* 022B440C */ cpu->f[12] = cpu->f[12] * cpu->f[8];
|
|
/* 022B4410 */ /* nop */
|
|
/* 022B4414 */ cpu->f[1] = cpu->f[1] * cpu->f[8];
|
|
/* 022B4418 */ _t193 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4418 */ rbrew_write_f32(cpu->mem, _t193, cpu->f[12]);
|
|
L_022B441C: ; // 0x22b441c
|
|
/* 022B441C */ _t194 = cpu->r[1] + 0x00000048u;
|
|
/* 022B441C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 022B4420 */ cpu->f[7] = cpu->f[6] * cpu->f[6];
|
|
/* 022B4424 */ _t195 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4424 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 022B4428 */ cpu->f[9] = fma(cpu->f[11], cpu->f[11], cpu->f[7]);
|
|
/* 022B442C */ _t196 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B442C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t196);
|
|
/* 022B4430 */ cpu->f[11] = fma(cpu->f[7], cpu->f[7], cpu->f[9]);
|
|
/* 022B4434 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 022B4438 */ _t197 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B4438 */ _t198 = _t197 & 0x00000001u;
|
|
/* 022B4438 */ if (_t198) goto L_022B443C; else goto L_022B4468;
|
|
L_022B443C: ; // 0x22b443c
|
|
/* 022B443C */ _ft199 = sqrt(cpu->f[11]);
|
|
/* 022B443C */ _ft200 = (double)(int32_t)0x00000001u;
|
|
/* 022B443C */ cpu->f[12] = _ft200 / _ft199;
|
|
/* 022B4440 */ cpu->f[6] = cpu->f[12] * cpu->f[12];
|
|
/* 022B4444 */ cpu->f[7] = cpu->f[12] * cpu->f[0];
|
|
/* 022B4448 */ cpu->f[6] = -fma(cpu->f[6], cpu->f[11], -(cpu->f[13]));
|
|
/* 022B444C */ cpu->f[12] = cpu->f[6] * cpu->f[7];
|
|
/* 022B4450 */ _t201 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4450 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t201);
|
|
/* 022B4454 */ /* nop */
|
|
/* 022B4458 */ cpu->f[8] = cpu->f[8] * cpu->f[12];
|
|
/* 022B445C */ /* nop */
|
|
/* 022B4460 */ _t202 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4460 */ rbrew_write_f32(cpu->mem, _t202, cpu->f[8]);
|
|
/* 022B4464 */ /* nop */
|
|
L_022B4468: ; // 0x22b4468
|
|
/* 022B4468 */ _t203 = cpu->r[1] + 0x00000054u;
|
|
/* 022B4468 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t203);
|
|
/* 022B446C */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 022B4470 */ _t204 = cpu->r[1] + 0x00000050u;
|
|
/* 022B4470 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t204);
|
|
/* 022B4474 */ cpu->f[10] = fma(cpu->f[12], cpu->f[12], cpu->f[9]);
|
|
/* 022B4478 */ _t205 = cpu->r[1] + 0x00000058u;
|
|
/* 022B4478 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 022B447C */ cpu->f[8] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 022B4480 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 022B4484 */ _t206 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B4484 */ _t207 = _t206 & 0x00000001u;
|
|
/* 022B4484 */ if (_t207) goto L_022B4488; else goto L_022B44B4;
|
|
L_022B4488: ; // 0x22b4488
|
|
/* 022B4488 */ _ft208 = sqrt(cpu->f[8]);
|
|
/* 022B4488 */ _ft209 = (double)(int32_t)0x00000001u;
|
|
/* 022B4488 */ cpu->f[9] = _ft209 / _ft208;
|
|
/* 022B448C */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 022B4490 */ cpu->f[12] = cpu->f[9] * cpu->f[0];
|
|
/* 022B4494 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[13]));
|
|
/* 022B4498 */ cpu->f[9] = cpu->f[10] * cpu->f[12];
|
|
/* 022B449C */ _t210 = cpu->r[1] + 0x00000058u;
|
|
/* 022B449C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 022B44A0 */ /* nop */
|
|
/* 022B44A4 */ cpu->f[13] = cpu->f[13] * cpu->f[9];
|
|
/* 022B44A8 */ /* nop */
|
|
/* 022B44AC */ _t211 = cpu->r[1] + 0x00000058u;
|
|
/* 022B44AC */ rbrew_write_f32(cpu->mem, _t211, cpu->f[13]);
|
|
/* 022B44B0 */ /* nop */
|
|
L_022B44B4: ; // 0x22b44b4
|
|
/* 022B44B4 */ _t212 = cpu->r[31] + 0x00000324u;
|
|
/* 022B44B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t212);
|
|
/* 022B44B8 */ _t213 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B44B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t213);
|
|
/* 022B44BC */ _t214 = cpu->r[8] + 0x00000044u;
|
|
/* 022B44BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t214);
|
|
/* 022B44C0 */ cpu->ctr = cpu->r[10];
|
|
/* 022B44C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B44C8 */ _t215 = cpu->r[31] + 0x00000324u;
|
|
/* 022B44C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t215);
|
|
/* 022B44CC */ _t216 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B44CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t216);
|
|
/* 022B44D0 */ _t217 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022B44D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t217);
|
|
/* 022B44D4 */ cpu->ctr = cpu->r[6];
|
|
/* 022B44D8 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B44DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B44E0 */ _t218 = cpu->r[31] + 0x00000324u;
|
|
/* 022B44E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t218);
|
|
/* 022B44E4 */ _t219 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B44E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t219);
|
|
/* 022B44E8 */ _t220 = cpu->r[8] + 0x00000024u;
|
|
/* 022B44E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t220);
|
|
/* 022B44EC */ cpu->ctr = cpu->r[0];
|
|
/* 022B44F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B44F4 */ _t221 = cpu->r[1] + 0x00000018u;
|
|
/* 022B44F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 022B44F8 */ _t222 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B44F8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t222);
|
|
/* 022B44FC */ _t223 = cpu->r[1] + 0x000000CCu;
|
|
/* 022B44FC */ rbrew_write_f32(cpu->mem, _t223, cpu->f[8]);
|
|
/* 022B4500 */ _t224 = cpu->r[1] + 0x00000088u;
|
|
/* 022B4500 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t224);
|
|
/* 022B4504 */ _t225 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4504 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 022B4508 */ _t226 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B4508 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t226);
|
|
/* 022B450C */ _t227 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B450C */ rbrew_write_f32(cpu->mem, _t227, cpu->f[10]);
|
|
/* 022B4510 */ _t228 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B4510 */ rbrew_write_f32(cpu->mem, _t228, cpu->f[11]);
|
|
/* 022B4514 */ _t229 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4514 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 022B4518 */ _t230 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B4518 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[8]);
|
|
/* 022B451C */ _t231 = cpu->r[1] + 0x00000030u;
|
|
/* 022B451C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t231);
|
|
/* 022B4520 */ _t232 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B4520 */ rbrew_write_f32(cpu->mem, _t232, cpu->f[10]);
|
|
/* 022B4524 */ _t233 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B4524 */ rbrew_write_f32(cpu->mem, _t233, cpu->f[8]);
|
|
/* 022B4528 */ _t234 = cpu->r[1] + 0x00000068u;
|
|
/* 022B4528 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t234);
|
|
/* 022B452C */ _t235 = cpu->r[1] + 0x00000010u;
|
|
/* 022B452C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t235);
|
|
/* 022B4530 */ _t236 = cpu->r[1] + 0x00000098u;
|
|
/* 022B4530 */ rbrew_write_f32(cpu->mem, _t236, cpu->f[12]);
|
|
/* 022B4534 */ _t237 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B4534 */ rbrew_write_f32(cpu->mem, _t237, cpu->f[13]);
|
|
/* 022B4538 */ _t238 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4538 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t238);
|
|
/* 022B453C */ _t239 = cpu->r[1] + 0x00000024u;
|
|
/* 022B453C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t239);
|
|
/* 022B4540 */ _t240 = cpu->r[1] + 0x000000ECu;
|
|
/* 022B4540 */ rbrew_write_f32(cpu->mem, _t240, cpu->f[9]);
|
|
/* 022B4544 */ _t241 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B4544 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t241);
|
|
/* 022B4548 */ _t242 = cpu->r[1] + 0x00000078u;
|
|
/* 022B4548 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t242);
|
|
/* 022B454C */ _t243 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B454C */ rbrew_write_f32(cpu->mem, _t243, cpu->f[0]);
|
|
/* 022B4550 */ _t244 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4550 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t244);
|
|
/* 022B4554 */ _t245 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4554 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t245);
|
|
/* 022B4558 */ _t246 = cpu->r[1] + 0x000000D4u;
|
|
/* 022B4558 */ rbrew_write_f32(cpu->mem, _t246, cpu->f[0]);
|
|
/* 022B455C */ _t247 = cpu->r[1] + 0x000000F4u;
|
|
/* 022B455C */ rbrew_write_f32(cpu->mem, _t247, cpu->f[11]);
|
|
/* 022B4560 */ _t248 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B4560 */ rbrew_write_f32(cpu->mem, _t248, cpu->f[7]);
|
|
/* 022B4564 */ _t249 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4564 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t249);
|
|
/* 022B4568 */ _t250 = cpu->r[1] + 0x00000090u;
|
|
/* 022B4568 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t250);
|
|
/* 022B456C */ _t251 = cpu->r[1] + 0x00000084u;
|
|
/* 022B456C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 022B4570 */ _t252 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B4570 */ rbrew_write_f32(cpu->mem, _t252, cpu->f[11]);
|
|
/* 022B4574 */ _t253 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B4574 */ rbrew_write_f32(cpu->mem, _t253, cpu->f[10]);
|
|
/* 022B4578 */ _t254 = cpu->r[1] + 0x00000080u;
|
|
/* 022B4578 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t254);
|
|
/* 022B457C */ _t255 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B457C */ rbrew_write_f32(cpu->mem, _t255, cpu->f[0]);
|
|
/* 022B4580 */ _t256 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B4580 */ rbrew_write_f32(cpu->mem, _t256, cpu->f[10]);
|
|
/* 022B4584 */ _t257 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B4584 */ rbrew_write_f32(cpu->mem, _t257, cpu->f[6]);
|
|
/* 022B4588 */ _t258 = cpu->r[1] + 0x00000070u;
|
|
/* 022B4588 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t258);
|
|
/* 022B458C */ _t259 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B458C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t259);
|
|
/* 022B4590 */ _t260 = cpu->r[1] + 0x000000B0u;
|
|
/* 022B4590 */ rbrew_write_f32(cpu->mem, _t260, cpu->f[8]);
|
|
/* 022B4594 */ _t261 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B4594 */ rbrew_write_f32(cpu->mem, _t261, cpu->f[6]);
|
|
/* 022B4598 */ _t262 = cpu->r[1] + 0x000000E4u;
|
|
/* 022B4598 */ rbrew_write_f32(cpu->mem, _t262, cpu->f[7]);
|
|
/* 022B459C */ _t263 = cpu->r[1] + 0x00000094u;
|
|
/* 022B459C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t263);
|
|
/* 022B45A0 */ _t264 = cpu->r[1] + 0x00000008u;
|
|
/* 022B45A0 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t264);
|
|
/* 022B45A4 */ _t265 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B45A4 */ rbrew_write_f32(cpu->mem, _t265, cpu->f[6]);
|
|
/* 022B45A8 */ _t266 = cpu->r[1] + 0x000000C8u;
|
|
/* 022B45A8 */ rbrew_write_f32(cpu->mem, _t266, cpu->f[5]);
|
|
/* 022B45AC */ _t267 = cpu->r[1] + 0x00000074u;
|
|
/* 022B45AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t267);
|
|
/* 022B45B0 */ _t268 = cpu->r[31] + 0x00000324u;
|
|
/* 022B45B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t268);
|
|
/* 022B45B4 */ _t269 = cpu->r[1] + 0x000000BCu;
|
|
/* 022B45B4 */ rbrew_write_f32(cpu->mem, _t269, cpu->f[13]);
|
|
/* 022B45B8 */ _t270 = cpu->r[8] + 0x000001ECu;
|
|
/* 022B45B8 */ rbrew_write_f32(cpu->mem, _t270, cpu->f[5]);
|
|
/* 022B45BC */ _t271 = cpu->r[1] + 0x000000CCu;
|
|
/* 022B45BC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t271);
|
|
/* 022B45C0 */ _t272 = cpu->r[8] + 0x000001F0u;
|
|
/* 022B45C0 */ rbrew_write_f32(cpu->mem, _t272, cpu->f[9]);
|
|
/* 022B45C4 */ _t273 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B45C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t273);
|
|
/* 022B45C8 */ _t274 = cpu->r[8] + 0x000001F4u;
|
|
/* 022B45C8 */ rbrew_write_f32(cpu->mem, _t274, cpu->f[10]);
|
|
/* 022B45CC */ _t275 = cpu->r[1] + 0x000000D4u;
|
|
/* 022B45CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t275);
|
|
/* 022B45D0 */ _t276 = cpu->r[8] + 0x000001F8u;
|
|
/* 022B45D0 */ rbrew_write_f32(cpu->mem, _t276, cpu->f[0]);
|
|
/* 022B45D4 */ _t277 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B45D4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t277);
|
|
/* 022B45D8 */ _t278 = cpu->r[8] + 0x000001FCu;
|
|
/* 022B45D8 */ rbrew_write_f32(cpu->mem, _t278, cpu->f[7]);
|
|
/* 022B45DC */ _t279 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B45DC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t279);
|
|
/* 022B45E0 */ _t280 = cpu->r[8] + 0x00000200u;
|
|
/* 022B45E0 */ rbrew_write_f32(cpu->mem, _t280, cpu->f[8]);
|
|
/* 022B45E4 */ _t281 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B45E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t281);
|
|
/* 022B45E8 */ _t282 = cpu->r[8] + 0x00000204u;
|
|
/* 022B45E8 */ rbrew_write_f32(cpu->mem, _t282, cpu->f[9]);
|
|
/* 022B45EC */ _t283 = cpu->r[1] + 0x000000E4u;
|
|
/* 022B45EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t283);
|
|
/* 022B45F0 */ _t284 = cpu->r[8] + 0x00000208u;
|
|
/* 022B45F0 */ rbrew_write_f32(cpu->mem, _t284, cpu->f[10]);
|
|
/* 022B45F4 */ _t285 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B45F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t285);
|
|
/* 022B45F8 */ _t286 = cpu->r[8] + 0x0000020Cu;
|
|
/* 022B45F8 */ rbrew_write_f32(cpu->mem, _t286, cpu->f[11]);
|
|
/* 022B45FC */ _t287 = cpu->r[1] + 0x000000ECu;
|
|
/* 022B45FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t287);
|
|
/* 022B4600 */ _t288 = cpu->r[8] + 0x00000210u;
|
|
/* 022B4600 */ rbrew_write_f32(cpu->mem, _t288, cpu->f[12]);
|
|
/* 022B4604 */ _t289 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B4604 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t289);
|
|
/* 022B4608 */ _t290 = cpu->r[8] + 0x00000214u;
|
|
/* 022B4608 */ rbrew_write_f32(cpu->mem, _t290, cpu->f[13]);
|
|
/* 022B460C */ _t291 = cpu->r[1] + 0x000000F4u;
|
|
/* 022B460C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t291);
|
|
/* 022B4610 */ _t292 = cpu->r[8] + 0x00000218u;
|
|
/* 022B4610 */ rbrew_write_f32(cpu->mem, _t292, cpu->f[0]);
|
|
/* 022B4614 */ _t293 = cpu->r[1] + 0x00000098u;
|
|
/* 022B4614 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t293);
|
|
/* 022B4618 */ _t294 = cpu->r[8] + 0x0000021Cu;
|
|
/* 022B4618 */ rbrew_write_f32(cpu->mem, _t294, cpu->f[6]);
|
|
/* 022B461C */ _t295 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B461C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t295);
|
|
/* 022B4620 */ _t296 = cpu->r[8] + 0x00000220u;
|
|
/* 022B4620 */ rbrew_write_f32(cpu->mem, _t296, cpu->f[7]);
|
|
/* 022B4624 */ _t297 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B4624 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t297);
|
|
/* 022B4628 */ _t298 = cpu->r[8] + 0x00000224u;
|
|
/* 022B4628 */ rbrew_write_f32(cpu->mem, _t298, cpu->f[8]);
|
|
/* 022B462C */ _t299 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B462C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t299);
|
|
/* 022B4630 */ _t300 = cpu->r[8] + 0x00000228u;
|
|
/* 022B4630 */ rbrew_write_f32(cpu->mem, _t300, cpu->f[9]);
|
|
/* 022B4634 */ _t301 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B4634 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t301);
|
|
/* 022B4638 */ _t302 = cpu->r[8] + 0x0000022Cu;
|
|
/* 022B4638 */ rbrew_write_f32(cpu->mem, _t302, cpu->f[10]);
|
|
/* 022B463C */ _t303 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B463C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t303);
|
|
/* 022B4640 */ _t304 = cpu->r[8] + 0x00000230u;
|
|
/* 022B4640 */ rbrew_write_f32(cpu->mem, _t304, cpu->f[11]);
|
|
/* 022B4644 */ _t305 = cpu->r[1] + 0x000000B0u;
|
|
/* 022B4644 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t305);
|
|
/* 022B4648 */ _t306 = cpu->r[8] + 0x00000234u;
|
|
/* 022B4648 */ rbrew_write_f32(cpu->mem, _t306, cpu->f[12]);
|
|
/* 022B464C */ _t307 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B464C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t307);
|
|
/* 022B4650 */ _t308 = cpu->r[8] + 0x00000238u;
|
|
/* 022B4650 */ rbrew_write_f32(cpu->mem, _t308, cpu->f[13]);
|
|
/* 022B4654 */ _t309 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B4654 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t309);
|
|
/* 022B4658 */ _t310 = cpu->r[8] + 0x0000023Cu;
|
|
/* 022B4658 */ rbrew_write_f32(cpu->mem, _t310, cpu->f[0]);
|
|
/* 022B465C */ _t311 = cpu->r[1] + 0x000000BCu;
|
|
/* 022B465C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t311);
|
|
/* 022B4660 */ _t312 = cpu->r[8] + 0x00000240u;
|
|
/* 022B4660 */ rbrew_write_f32(cpu->mem, _t312, cpu->f[6]);
|
|
/* 022B4664 */ _t313 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B4664 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t313);
|
|
/* 022B4668 */ _t314 = cpu->r[8] + 0x00000244u;
|
|
/* 022B4668 */ rbrew_write_f32(cpu->mem, _t314, cpu->f[7]);
|
|
/* 022B466C */ _t315 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B466C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t315);
|
|
/* 022B4670 */ _t316 = cpu->r[8] + 0x00000248u;
|
|
/* 022B4670 */ rbrew_write_f32(cpu->mem, _t316, cpu->f[8]);
|
|
/* 022B4674 */ _t317 = cpu->r[31] + 0x00000324u;
|
|
/* 022B4674 */ cpu->r[12] = rbrew_read32(cpu->mem, _t317);
|
|
/* 022B4678 */ _t318 = cpu->r[12] + 0x000001E8u;
|
|
/* 022B4678 */ cpu->r[0] = rbrew_read8(cpu->mem, _t318);
|
|
/* 022B467C */ cpu->r[30] = 0x101C0000u;
|
|
/* 022B4680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B4684 */ cpu->r[30] = cpu->r[30] + 0x00006000u;
|
|
/* 022B4688 */ _t319 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4688 */ _t320 = _t319 & 0x00000001u;
|
|
/* 022B4688 */ if (_t320) goto L_022B46CC; else goto L_022B468C;
|
|
L_022B468C: ; // 0x22b468c
|
|
/* 022B468C */ _t321 = cpu->r[30] + 0x00000000u;
|
|
/* 022B468C */ cpu->r[5] = rbrew_read32(cpu->mem, _t321);
|
|
/* 022B4690 */ _t322 = cpu->r[5] + 0x00000268u;
|
|
/* 022B4690 */ cpu->r[29] = rbrew_read32(cpu->mem, _t322);
|
|
/* 022B4694 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B4698 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B469C */ cpu->r[4] = cpu->r[3];
|
|
/* 022B46A0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B46A4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B46A8 */ Gambit_fn_025A9CC4(cpu);
|
|
/* 022B46AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B46B0 */ _t323 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B46B0 */ _t324 = _t323 & 0x00000001u;
|
|
/* 022B46B0 */ if (_t324) goto L_022B46C8; else goto L_022B46B4;
|
|
L_022B46B4: ; // 0x22b46b4
|
|
/* 022B46B4 */ _t325 = cpu->r[31] + 0x00000324u;
|
|
/* 022B46B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t325);
|
|
/* 022B46B8 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B46BC */ Gambit_fn_0203F2A4(cpu);
|
|
/* 022B46C0 */ cpu->r[9] = 0x00000000u;
|
|
/* 022B46C4 */ _t326 = cpu->r[29] + 0x000001E8u;
|
|
/* 022B46C4 */ rbrew_write8(cpu->mem, _t326, (uint8_t)cpu->r[9]);
|
|
L_022B46C8: ; // 0x22b46c8
|
|
/* 022B46C8 */ _t327 = cpu->r[31] + 0x00000324u;
|
|
/* 022B46C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t327);
|
|
L_022B46CC: ; // 0x22b46cc
|
|
/* 022B46CC */ _t328 = cpu->r[12] + 0x000001E8u;
|
|
/* 022B46CC */ cpu->r[10] = rbrew_read8(cpu->mem, _t328);
|
|
/* 022B46D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B46D4 */ _t329 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B46D4 */ _t330 = _t329 & 0x00000001u;
|
|
/* 022B46D4 */ if (_t330) goto L_022B46D8; else goto L_022B4714;
|
|
L_022B46D8: ; // 0x22b46d8
|
|
/* 022B46D8 */ _t331 = cpu->r[30] + 0x00000000u;
|
|
/* 022B46D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t331);
|
|
/* 022B46DC */ _t332 = cpu->r[12] + 0x00000268u;
|
|
/* 022B46DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t332);
|
|
/* 022B46E0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B46E4 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B46E8 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B46EC */ cpu->r[3] = cpu->r[29];
|
|
/* 022B46F0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B46F4 */ Gambit_fn_025A9CC4(cpu);
|
|
/* 022B46F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B46FC */ _t333 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B46FC */ _t334 = _t333 & 0x00000001u;
|
|
/* 022B46FC */ if (_t334) goto L_022B4700; else goto L_022B4714;
|
|
L_022B4700: ; // 0x22b4700
|
|
/* 022B4700 */ _t335 = cpu->r[31] + 0x00000324u;
|
|
/* 022B4700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t335);
|
|
/* 022B4704 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B4708 */ Gambit_fn_0203F288(cpu);
|
|
/* 022B470C */ cpu->r[9] = 0x00000001u;
|
|
/* 022B4710 */ _t336 = cpu->r[31] + 0x000001E8u;
|
|
/* 022B4710 */ rbrew_write8(cpu->mem, _t336, (uint8_t)cpu->r[9]);
|
|
L_022B4714: ; // 0x22b4714
|
|
/* 022B4714 */ _t337 = cpu->r[1] + 0x00000168u;
|
|
/* 022B4714 */ cpu->r[28] = rbrew_read32(cpu->mem, _t337);
|
|
/* 022B4718 */ _t338 = cpu->r[1] + 0x0000016Cu;
|
|
/* 022B4718 */ cpu->r[29] = rbrew_read32(cpu->mem, _t338);
|
|
/* 022B471C */ _t339 = cpu->r[1] + 0x00000180u;
|
|
/* 022B471C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t339);
|
|
/* 022B4720 */ _t340 = cpu->r[1] + 0x00000170u;
|
|
/* 022B4720 */ cpu->r[30] = rbrew_read32(cpu->mem, _t340);
|
|
/* 022B4724 */ _t341 = cpu->r[1] + 0x00000178u;
|
|
/* 022B4724 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t341);
|
|
/* 022B4728 */ _t342 = cpu->r[1] + 0x00000174u;
|
|
/* 022B4728 */ cpu->r[31] = rbrew_read32(cpu->mem, _t342);
|
|
/* 022B472C */ _t343 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B472C */ _t344 = _t343 & 0x00000001u;
|
|
/* 022B472C */ if (_t344) goto L_022B4730; // else: addr-0 trap, fall-through
|
|
L_022B4730: ; // 0x22b4730
|
|
/* 022B4730 */ _t345 = cpu->r[1] + 0x0000018Cu;
|
|
/* 022B4730 */ cpu->r[0] = rbrew_read32(cpu->mem, _t345);
|
|
/* 022B4734 */ cpu->lr = cpu->r[0];
|
|
/* 022B4738 */ cpu->r[1] = cpu->r[1] + 0x00000188u;
|
|
/* 022B473C */ return;
|
|
}
|
|
|
|
// fn_022B3F74 @ 0x22b3f74
|
|
void Gambit_fn_022B3F74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345;
|
|
double _ft190, _ft191, _ft199, _ft200, _ft208, _ft209;
|
|
|
|
L_022B3F74: ; // 0x22b3f74
|
|
/* 022B3F74 */ _t0 = cpu->r[1] + 0xFFFFFE78u;
|
|
/* 022B3F74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B3F74 */ cpu->r[1] = _t0;
|
|
/* 022B3F78 */ _t1 = cpu->r[1] + 0x00000178u;
|
|
/* 022B3F78 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B3F7C */ /* nop */
|
|
/* 022B3F80 */ _t2 = cpu->r[1] + 0x0000016Cu;
|
|
/* 022B3F80 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022B3F84 */ _t3 = cpu->r[1] + 0x00000180u;
|
|
/* 022B3F84 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022B3F88 */ _t4 = cpu->r[1] + 0x00000170u;
|
|
/* 022B3F88 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022B3F8C */ _t5 = cpu->r[1] + 0x00000174u;
|
|
/* 022B3F8C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022B3F90 */ _t6 = cpu->r[1] + 0x0000018Cu;
|
|
/* 022B3F90 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B3F94 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B3F98 */ _t7 = cpu->r[1] + 0x00000168u;
|
|
/* 022B3F98 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 022B3F9C */ Gambit_fn_022B3EDC(cpu);
|
|
/* 022B3FA0 */ _t8 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B3FA0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B3FA4 */ _t9 = cpu->r[31] + 0x00000140u;
|
|
/* 022B3FA4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B3FA8 */ _t10 = cpu->r[1] + 0x00000068u;
|
|
/* 022B3FA8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[9]);
|
|
/* 022B3FAC */ _t11 = cpu->r[31] + 0x00000134u;
|
|
/* 022B3FAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B3FB0 */ _t12 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B3FB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B3FB4 */ _t13 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B3FB4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B3FB8 */ _t14 = cpu->r[31] + 0x00000120u;
|
|
/* 022B3FB8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B3FBC */ _t15 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B3FBC */ rbrew_write_f32(cpu->mem, _t15, cpu->f[9]);
|
|
/* 022B3FC0 */ _t16 = cpu->r[1] + 0x00000078u;
|
|
/* 022B3FC0 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[8]);
|
|
/* 022B3FC4 */ _t17 = cpu->r[1] + 0x00000070u;
|
|
/* 022B3FC4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 022B3FC8 */ _t18 = cpu->r[31] + 0x00000144u;
|
|
/* 022B3FC8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B3FCC */ _t19 = cpu->r[1] + 0x00000090u;
|
|
/* 022B3FCC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022B3FD0 */ _t20 = cpu->r[1] + 0x00000084u;
|
|
/* 022B3FD0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 022B3FD4 */ _t21 = cpu->r[31] + 0x00000128u;
|
|
/* 022B3FD4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B3FD8 */ _t22 = cpu->r[31] + 0x00000124u;
|
|
/* 022B3FD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B3FDC */ _t23 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B3FDC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[10]);
|
|
/* 022B3FE0 */ _t24 = cpu->r[1] + 0x00000088u;
|
|
/* 022B3FE0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 022B3FE4 */ _t25 = cpu->r[31] + 0x00000130u;
|
|
/* 022B3FE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B3FE8 */ _t26 = cpu->r[31] + 0x00000148u;
|
|
/* 022B3FE8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B3FEC */ _t27 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B3FEC */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 022B3FF0 */ _t28 = cpu->r[1] + 0x00000074u;
|
|
/* 022B3FF0 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[7]);
|
|
/* 022B3FF4 */ _t29 = cpu->r[31] + 0x00000138u;
|
|
/* 022B3FF4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B3FF8 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 022B3FFC */ cpu->r[4] = cpu->r[31] + 0x00000254u;
|
|
/* 022B4000 */ _t30 = cpu->r[1] + 0x00000094u;
|
|
/* 022B4000 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[6]);
|
|
/* 022B4004 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4008 */ _t31 = cpu->r[1] + 0x00000080u;
|
|
/* 022B4008 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[10]);
|
|
/* 022B400C */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4010 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 022B4014 */ cpu->r[4] = cpu->r[31] + 0x00000224u;
|
|
/* 022B4018 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B401C */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4020 */ cpu->r[9] = 0x101F0000u;
|
|
/* 022B4024 */ cpu->r[7] = 0x101E0000u;
|
|
/* 022B4028 */ _t32 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B4028 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B402C */ cpu->r[9] = cpu->r[9] + 0x00006368u;
|
|
/* 022B4030 */ cpu->r[7] = cpu->r[7] + 0x00003A6Cu;
|
|
/* 022B4034 */ /* nop */
|
|
/* 022B4038 */ _t33 = cpu->r[7] + 0x00000008u;
|
|
/* 022B4038 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B403C */ /* nop */
|
|
/* 022B4040 */ /* nop */
|
|
/* 022B4044 */ _t34 = cpu->r[9] + 0x00000008u;
|
|
/* 022B4044 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B4048 */ /* nop */
|
|
/* 022B404C */ /* nop */
|
|
/* 022B4050 */ _t35 = cpu->r[1] + 0x0000011Cu;
|
|
/* 022B4050 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B4054 */ cpu->f[10] = cpu->f[11] * cpu->f[0];
|
|
/* 022B4058 */ /* nop */
|
|
/* 022B405C */ _t36 = cpu->r[1] + 0x00000128u;
|
|
/* 022B405C */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B4060 */ cpu->f[6] = cpu->f[7] * cpu->f[0];
|
|
/* 022B4064 */ _t37 = cpu->r[1] + 0x00000124u;
|
|
/* 022B4064 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[10]);
|
|
/* 022B4068 */ _t38 = cpu->r[1] + 0x00000124u;
|
|
/* 022B4068 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B406C */ _t39 = cpu->r[1] + 0x00000120u;
|
|
/* 022B406C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022B4070 */ _t40 = cpu->r[1] + 0x00000130u;
|
|
/* 022B4070 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[6]);
|
|
/* 022B4074 */ _t41 = cpu->r[1] + 0x00000130u;
|
|
/* 022B4074 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B4078 */ cpu->r[29] = 0x101F0000u;
|
|
/* 022B407C */ cpu->r[29] = cpu->r[29] + 0x00006338u;
|
|
/* 022B4080 */ _t42 = cpu->r[1] + 0x00000108u;
|
|
/* 022B4080 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 022B4084 */ cpu->r[3] = cpu->r[31] + 0x000001C4u;
|
|
/* 022B4088 */ _t43 = cpu->r[1] + 0x0000012Cu;
|
|
/* 022B4088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B408C */ cpu->r[4] = cpu->r[1] + 0x00000104u;
|
|
/* 022B4090 */ _t44 = cpu->r[1] + 0x00000104u;
|
|
/* 022B4090 */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 022B4094 */ cpu->r[7] = cpu->r[1] + 0x00000110u;
|
|
/* 022B4098 */ _t45 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022B4098 */ rbrew_write32(cpu->mem, _t45, cpu->r[6]);
|
|
/* 022B409C */ _t46 = cpu->r[1] + 0x00000118u;
|
|
/* 022B409C */ rbrew_write32(cpu->mem, _t46, cpu->r[5]);
|
|
/* 022B40A0 */ cpu->r[6] = cpu->r[7];
|
|
/* 022B40A4 */ _t47 = cpu->r[1] + 0x00000110u;
|
|
/* 022B40A4 */ rbrew_write32(cpu->mem, _t47, cpu->r[9]);
|
|
/* 022B40A8 */ cpu->r[5] = cpu->r[29];
|
|
/* 022B40AC */ _t48 = cpu->r[1] + 0x00000114u;
|
|
/* 022B40AC */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 022B40B0 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B40B4 */ cpu->r[4] = 0x101E0000u;
|
|
/* 022B40B8 */ _t49 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B40B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B40BC */ cpu->r[4] = cpu->r[4] + 0x00003A78u;
|
|
/* 022B40C0 */ cpu->r[28] = 0x101E0000u;
|
|
/* 022B40C4 */ _t50 = cpu->r[4] + 0x00000008u;
|
|
/* 022B40C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B40C8 */ cpu->r[28] = cpu->r[28] + 0x00003A60u;
|
|
/* 022B40CC */ /* nop */
|
|
/* 022B40D0 */ /* nop */
|
|
/* 022B40D4 */ /* nop */
|
|
/* 022B40D8 */ _t51 = cpu->r[28] + 0x00000008u;
|
|
/* 022B40D8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022B40DC */ cpu->f[10] = cpu->f[11] * cpu->f[0];
|
|
/* 022B40E0 */ /* nop */
|
|
/* 022B40E4 */ _t52 = cpu->r[1] + 0x00000134u;
|
|
/* 022B40E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022B40E8 */ /* nop */
|
|
/* 022B40EC */ _t53 = cpu->r[1] + 0x00000138u;
|
|
/* 022B40EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B40F0 */ /* nop */
|
|
/* 022B40F4 */ _t54 = cpu->r[1] + 0x00000140u;
|
|
/* 022B40F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022B40F8 */ cpu->f[0] = cpu->f[6] * cpu->f[0];
|
|
/* 022B40FC */ _t55 = cpu->r[1] + 0x00000110u;
|
|
/* 022B40FC */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 022B4100 */ _t56 = cpu->r[1] + 0x00000144u;
|
|
/* 022B4100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022B4104 */ _t57 = cpu->r[1] + 0x00000148u;
|
|
/* 022B4104 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 022B4108 */ _t58 = cpu->r[1] + 0x00000148u;
|
|
/* 022B4108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022B410C */ _t59 = cpu->r[1] + 0x0000013Cu;
|
|
/* 022B410C */ rbrew_write_f32(cpu->mem, _t59, cpu->f[10]);
|
|
/* 022B4110 */ _t60 = cpu->r[1] + 0x0000013Cu;
|
|
/* 022B4110 */ cpu->r[6] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022B4114 */ _t61 = cpu->r[1] + 0x00000108u;
|
|
/* 022B4114 */ rbrew_write32(cpu->mem, _t61, cpu->r[12]);
|
|
/* 022B4118 */ cpu->r[9] = cpu->r[1] + 0x00000104u;
|
|
/* 022B411C */ _t62 = cpu->r[1] + 0x00000118u;
|
|
/* 022B411C */ rbrew_write32(cpu->mem, _t62, cpu->r[6]);
|
|
/* 022B4120 */ cpu->r[6] = cpu->r[9];
|
|
/* 022B4124 */ _t63 = cpu->r[1] + 0x00000114u;
|
|
/* 022B4124 */ rbrew_write32(cpu->mem, _t63, cpu->r[5]);
|
|
/* 022B4128 */ cpu->r[4] = cpu->r[1] + 0x00000110u;
|
|
/* 022B412C */ _t64 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022B412C */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 022B4130 */ cpu->r[5] = cpu->r[29];
|
|
/* 022B4134 */ cpu->r[3] = cpu->r[31] + 0x000001F4u;
|
|
/* 022B4138 */ _t65 = cpu->r[1] + 0x00000104u;
|
|
/* 022B4138 */ rbrew_write32(cpu->mem, _t65, cpu->r[11]);
|
|
/* 022B413C */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B4140 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B4144 */ _t66 = cpu->r[31] + 0x000002B4u;
|
|
/* 022B4144 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022B4148 */ _t67 = cpu->r[6] + 0x000037E8u;
|
|
/* 022B4148 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022B414C */ _t68 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B414C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[7]);
|
|
/* 022B4150 */ _t69 = cpu->r[1] + 0x000000FCu;
|
|
/* 022B4150 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[31]);
|
|
/* 022B4154 */ cpu->r[4] = cpu->r[1] + 0x000000F8u;
|
|
/* 022B4158 */ cpu->r[3] = cpu->r[31] + 0x00000254u;
|
|
/* 022B415C */ _t70 = cpu->r[1] + 0x00000100u;
|
|
/* 022B415C */ rbrew_write_f32(cpu->mem, _t70, cpu->f[31]);
|
|
/* 022B4160 */ Gambit_fn_021E983C(cpu);
|
|
/* 022B4164 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B4168 */ _t71 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B4168 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022B416C */ cpu->r[30] = cpu->r[30] + 0x00003A54u;
|
|
/* 022B4170 */ /* nop */
|
|
/* 022B4174 */ _t72 = cpu->r[30] + 0x00000008u;
|
|
/* 022B4174 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 022B4178 */ /* nop */
|
|
/* 022B417C */ _t73 = cpu->r[28] + 0x00000008u;
|
|
/* 022B417C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 022B4180 */ cpu->f[10] = cpu->f[12] * cpu->f[0];
|
|
/* 022B4184 */ /* nop */
|
|
/* 022B4188 */ /* nop */
|
|
/* 022B418C */ cpu->f[11] = cpu->f[6] * cpu->f[0];
|
|
/* 022B4190 */ _t74 = cpu->r[1] + 0x00000154u;
|
|
/* 022B4190 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[10]);
|
|
/* 022B4194 */ _t75 = cpu->r[1] + 0x00000154u;
|
|
/* 022B4194 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022B4198 */ _t76 = cpu->r[1] + 0x0000014Cu;
|
|
/* 022B4198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022B419C */ /* nop */
|
|
/* 022B41A0 */ _t77 = cpu->r[1] + 0x00000110u;
|
|
/* 022B41A0 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 022B41A4 */ /* nop */
|
|
/* 022B41A8 */ _t78 = cpu->r[1] + 0x00000158u;
|
|
/* 022B41A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B41AC */ _t79 = cpu->r[1] + 0x00000160u;
|
|
/* 022B41AC */ rbrew_write_f32(cpu->mem, _t79, cpu->f[11]);
|
|
/* 022B41B0 */ _t80 = cpu->r[1] + 0x00000160u;
|
|
/* 022B41B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022B41B4 */ _t81 = cpu->r[1] + 0x00000150u;
|
|
/* 022B41B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022B41B8 */ _t82 = cpu->r[1] + 0x00000104u;
|
|
/* 022B41B8 */ rbrew_write32(cpu->mem, _t82, cpu->r[0]);
|
|
/* 022B41BC */ _t83 = cpu->r[1] + 0x00000114u;
|
|
/* 022B41BC */ rbrew_write32(cpu->mem, _t83, cpu->r[11]);
|
|
/* 022B41C0 */ cpu->r[5] = cpu->r[29];
|
|
/* 022B41C4 */ _t84 = cpu->r[1] + 0x0000015Cu;
|
|
/* 022B41C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022B41C8 */ cpu->r[6] = cpu->r[1] + 0x00000104u;
|
|
/* 022B41CC */ _t85 = cpu->r[1] + 0x00000118u;
|
|
/* 022B41CC */ rbrew_write32(cpu->mem, _t85, cpu->r[4]);
|
|
/* 022B41D0 */ cpu->r[9] = cpu->r[1] + 0x00000110u;
|
|
/* 022B41D4 */ _t86 = cpu->r[1] + 0x00000108u;
|
|
/* 022B41D4 */ rbrew_write32(cpu->mem, _t86, cpu->r[7]);
|
|
/* 022B41D8 */ cpu->r[4] = cpu->r[9];
|
|
/* 022B41DC */ cpu->r[3] = cpu->r[31] + 0x00000224u;
|
|
/* 022B41E0 */ _t87 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022B41E0 */ rbrew_write32(cpu->mem, _t87, cpu->r[8]);
|
|
/* 022B41E4 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B41E8 */ _t88 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B41E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 022B41EC */ _t89 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B41EC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022B41F0 */ _t90 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B41F0 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[13]);
|
|
/* 022B41F4 */ _t91 = cpu->r[1] + 0x00000008u;
|
|
/* 022B41F4 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[6]);
|
|
/* 022B41F8 */ _t92 = cpu->r[1] + 0x00000038u;
|
|
/* 022B41F8 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[6]);
|
|
/* 022B41FC */ _t93 = cpu->r[31] + 0x00000138u;
|
|
/* 022B41FC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 022B4200 */ _t94 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4200 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 022B4204 */ _t95 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4204 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[7]);
|
|
/* 022B4208 */ _t96 = cpu->r[1] + 0x00000050u;
|
|
/* 022B4208 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[8]);
|
|
/* 022B420C */ _t97 = cpu->r[1] + 0x00000010u;
|
|
/* 022B420C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[8]);
|
|
/* 022B4210 */ _t98 = cpu->r[1] + 0x00000048u;
|
|
/* 022B4210 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[13]);
|
|
/* 022B4214 */ _t99 = cpu->r[31] + 0x00000124u;
|
|
/* 022B4214 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 022B4218 */ _t100 = cpu->r[31] + 0x00000140u;
|
|
/* 022B4218 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 022B421C */ _t101 = cpu->r[31] + 0x00000120u;
|
|
/* 022B421C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 022B4220 */ _t102 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4220 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[12]);
|
|
/* 022B4224 */ _t103 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B4224 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[12]);
|
|
/* 022B4228 */ _t104 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B4228 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 022B422C */ _t105 = cpu->r[31] + 0x00000130u;
|
|
/* 022B422C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 022B4230 */ _t106 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4230 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[11]);
|
|
/* 022B4234 */ _t107 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4234 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[11]);
|
|
/* 022B4238 */ _t108 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4238 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 022B423C */ _t109 = cpu->r[1] + 0x00000058u;
|
|
/* 022B423C */ rbrew_write_f32(cpu->mem, _t109, cpu->f[6]);
|
|
/* 022B4240 */ _t110 = cpu->r[1] + 0x00000064u;
|
|
/* 022B4240 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[11]);
|
|
/* 022B4244 */ _t111 = cpu->r[31] + 0x00000144u;
|
|
/* 022B4244 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 022B4248 */ _t112 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4248 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[12]);
|
|
/* 022B424C */ _t113 = cpu->r[1] + 0x00000024u;
|
|
/* 022B424C */ rbrew_write_f32(cpu->mem, _t113, cpu->f[9]);
|
|
/* 022B4250 */ _t114 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4250 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[12]);
|
|
/* 022B4254 */ _t115 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4254 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[10]);
|
|
/* 022B4258 */ _t116 = cpu->r[31] + 0x00000128u;
|
|
/* 022B4258 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 022B425C */ _t117 = cpu->r[1] + 0x00000054u;
|
|
/* 022B425C */ rbrew_write_f32(cpu->mem, _t117, cpu->f[7]);
|
|
/* 022B4260 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4260 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[0]);
|
|
/* 022B4264 */ _t119 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4264 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[6]);
|
|
/* 022B4268 */ _t120 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4268 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[11]);
|
|
/* 022B426C */ cpu->r[4] = cpu->r[31] + 0x00000354u;
|
|
/* 022B4270 */ _t121 = cpu->r[1] + 0x00000060u;
|
|
/* 022B4270 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[9]);
|
|
/* 022B4274 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4278 */ _t122 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4278 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[0]);
|
|
/* 022B427C */ _t123 = cpu->r[1] + 0x00000028u;
|
|
/* 022B427C */ rbrew_write_f32(cpu->mem, _t123, cpu->f[10]);
|
|
/* 022B4280 */ Gambit_fn_02C69510(cpu);
|
|
/* 022B4284 */ _t124 = cpu->r[31] + 0x00000384u;
|
|
/* 022B4284 */ cpu->r[3] = rbrew_read32(cpu->mem, _t124);
|
|
/* 022B4288 */ _t125 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B4288 */ cpu->r[7] = rbrew_read32(cpu->mem, _t125);
|
|
/* 022B428C */ _t126 = cpu->r[7] + 0x0000002Cu;
|
|
/* 022B428C */ cpu->r[8] = rbrew_read32(cpu->mem, _t126);
|
|
/* 022B4290 */ cpu->ctr = cpu->r[8];
|
|
/* 022B4294 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B4298 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B429C */ _t127 = cpu->r[31] + 0x00000384u;
|
|
/* 022B429C */ cpu->r[3] = rbrew_read32(cpu->mem, _t127);
|
|
/* 022B42A0 */ _t128 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B42A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t128);
|
|
/* 022B42A4 */ _t129 = cpu->r[11] + 0x00000024u;
|
|
/* 022B42A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 022B42A8 */ cpu->ctr = cpu->r[0];
|
|
/* 022B42AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B42B0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B42B4 */ _t130 = cpu->r[10] + 0x000037DCu;
|
|
/* 022B42B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 022B42B8 */ _t131 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B42B8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 022B42BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 022B42C0 */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B42C0 */ _t133 = _t132 & 0x00000001u;
|
|
/* 022B42C0 */ if (_t133) goto L_022B4714; else goto L_022B42C4;
|
|
L_022B42C4: ; // 0x22b42c4
|
|
/* 022B42C4 */ _t134 = cpu->r[31] + 0x00000138u;
|
|
/* 022B42C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 022B42C8 */ _t135 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B42C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 022B42CC */ _t136 = cpu->r[1] + 0x00000020u;
|
|
/* 022B42CC */ rbrew_write_f32(cpu->mem, _t136, cpu->f[12]);
|
|
/* 022B42D0 */ _t137 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B42D0 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[11]);
|
|
/* 022B42D4 */ _t138 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B42D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 022B42D8 */ _t139 = cpu->r[31] + 0x00000120u;
|
|
/* 022B42D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 022B42DC */ _t140 = cpu->r[1] + 0x00000030u;
|
|
/* 022B42DC */ rbrew_write_f32(cpu->mem, _t140, cpu->f[11]);
|
|
/* 022B42E0 */ _t141 = cpu->r[1] + 0x00000018u;
|
|
/* 022B42E0 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[9]);
|
|
/* 022B42E4 */ _t142 = cpu->r[31] + 0x00000130u;
|
|
/* 022B42E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 022B42E8 */ _t143 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B42E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 022B42EC */ _t144 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B42EC */ rbrew_write_f32(cpu->mem, _t144, cpu->f[9]);
|
|
/* 022B42F0 */ _t145 = cpu->r[1] + 0x00000008u;
|
|
/* 022B42F0 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[13]);
|
|
/* 022B42F4 */ _t146 = cpu->r[31] + 0x00000140u;
|
|
/* 022B42F4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 022B42F8 */ _t147 = cpu->r[31] + 0x00000144u;
|
|
/* 022B42F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 022B42FC */ _t148 = cpu->r[1] + 0x00000014u;
|
|
/* 022B42FC */ rbrew_write_f32(cpu->mem, _t148, cpu->f[7]);
|
|
/* 022B4300 */ _t149 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4300 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[13]);
|
|
/* 022B4304 */ _t150 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4304 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 022B4308 */ _t151 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4308 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 022B430C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4310 */ _t152 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4310 */ rbrew_write_f32(cpu->mem, _t152, cpu->f[12]);
|
|
/* 022B4314 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4318 */ _t153 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4318 */ rbrew_write_f32(cpu->mem, _t153, cpu->f[6]);
|
|
/* 022B431C */ _t154 = cpu->r[31] + 0x00000128u;
|
|
/* 022B431C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 022B4320 */ _t155 = cpu->r[31] + 0x00000124u;
|
|
/* 022B4320 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 022B4324 */ _t156 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4324 */ rbrew_write_f32(cpu->mem, _t156, cpu->f[0]);
|
|
/* 022B4328 */ cpu->r[4] = cpu->r[31] + 0x00000254u;
|
|
/* 022B432C */ _t157 = cpu->r[1] + 0x00000028u;
|
|
/* 022B432C */ rbrew_write_f32(cpu->mem, _t157, cpu->f[6]);
|
|
/* 022B4330 */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4334 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4338 */ cpu->r[4] = cpu->r[31] + 0x00000224u;
|
|
/* 022B433C */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4340 */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4344 */ cpu->r[4] = cpu->r[31] + 0x000002F4u;
|
|
/* 022B4348 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B434C */ Gambit_fn_02C69510(cpu);
|
|
/* 022B4350 */ _t158 = cpu->r[31] + 0x00000324u;
|
|
/* 022B4350 */ cpu->r[3] = rbrew_read32(cpu->mem, _t158);
|
|
/* 022B4354 */ _t159 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B4354 */ cpu->r[10] = rbrew_read32(cpu->mem, _t159);
|
|
/* 022B4358 */ _t160 = cpu->r[10] + 0x00000044u;
|
|
/* 022B4358 */ cpu->r[0] = rbrew_read32(cpu->mem, _t160);
|
|
/* 022B435C */ _t161 = cpu->r[30] + 0x00000000u;
|
|
/* 022B435C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 022B4360 */ cpu->ctr = cpu->r[0];
|
|
/* 022B4364 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B4368 */ _t162 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4368 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 022B436C */ _t163 = cpu->r[1] + 0x00000018u;
|
|
/* 022B436C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 022B4370 */ _t164 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4370 */ rbrew_write_f32(cpu->mem, _t164, cpu->f[5]);
|
|
/* 022B4374 */ _t165 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4374 */ rbrew_write_f32(cpu->mem, _t165, cpu->f[12]);
|
|
/* 022B4378 */ _t166 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4378 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 022B437C */ cpu->r[4] = 0x10060000u;
|
|
/* 022B4380 */ _t167 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4380 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 022B4384 */ _t168 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4384 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 022B4388 */ _t169 = cpu->r[1] + 0x00000048u;
|
|
/* 022B4388 */ rbrew_write_f32(cpu->mem, _t169, cpu->f[9]);
|
|
/* 022B438C */ _t170 = cpu->r[1] + 0x00000050u;
|
|
/* 022B438C */ rbrew_write_f32(cpu->mem, _t170, cpu->f[7]);
|
|
/* 022B4390 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 022B4394 */ _t171 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4394 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 022B4398 */ _t172 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4398 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 022B439C */ _t173 = cpu->r[1] + 0x00000054u;
|
|
/* 022B439C */ rbrew_write_f32(cpu->mem, _t173, cpu->f[9]);
|
|
/* 022B43A0 */ cpu->f[7] = fma(cpu->f[6], cpu->f[6], cpu->f[13]);
|
|
/* 022B43A4 */ _t174 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B43A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 022B43A8 */ _t175 = cpu->r[4] + 0x000037ECu;
|
|
/* 022B43A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 022B43AC */ _t176 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B43AC */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 022B43B0 */ cpu->f[1] = fma(cpu->f[5], cpu->f[5], cpu->f[7]);
|
|
/* 022B43B4 */ _t177 = cpu->r[1] + 0x00000034u;
|
|
/* 022B43B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 022B43B8 */ _t178 = cpu->r[1] + 0x00000038u;
|
|
/* 022B43B8 */ rbrew_write_f32(cpu->mem, _t178, cpu->f[6]);
|
|
/* 022B43BC */ _t179 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B43BC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 022B43C0 */ _t180 = cpu->r[1] + 0x00000064u;
|
|
/* 022B43C0 */ rbrew_write_f32(cpu->mem, _t180, cpu->f[7]);
|
|
/* 022B43C4 */ _t181 = cpu->r[1] + 0x00000044u;
|
|
/* 022B43C4 */ rbrew_write_f32(cpu->mem, _t181, cpu->f[6]);
|
|
/* 022B43C8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B43CC */ _t182 = cpu->r[1] + 0x00000030u;
|
|
/* 022B43CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 022B43D0 */ _t183 = cpu->r[1] + 0x00000014u;
|
|
/* 022B43D0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 022B43D4 */ _t184 = cpu->r[1] + 0x00000058u;
|
|
/* 022B43D4 */ rbrew_write_f32(cpu->mem, _t184, cpu->f[11]);
|
|
/* 022B43D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 022B43DC */ _t185 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B43DC */ rbrew_write_f32(cpu->mem, _t185, cpu->f[8]);
|
|
/* 022B43E0 */ _t186 = cpu->r[9] + 0x000037E4u;
|
|
/* 022B43E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 022B43E4 */ _t187 = cpu->r[1] + 0x00000060u;
|
|
/* 022B43E4 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[10]);
|
|
/* 022B43E8 */ _t188 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B43E8 */ _t189 = _t188 & 0x00000001u;
|
|
/* 022B43E8 */ if (_t189) goto L_022B43EC; else goto L_022B441C;
|
|
L_022B43EC: ; // 0x22b43ec
|
|
/* 022B43EC */ _ft190 = sqrt(cpu->f[1]);
|
|
/* 022B43EC */ _ft191 = (double)(int32_t)0x00000001u;
|
|
/* 022B43EC */ cpu->f[8] = _ft191 / _ft190;
|
|
/* 022B43F0 */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 022B43F4 */ cpu->f[10] = cpu->f[8] * cpu->f[0];
|
|
/* 022B43F8 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[1], -(cpu->f[13]));
|
|
/* 022B43FC */ cpu->f[8] = cpu->f[9] * cpu->f[10];
|
|
/* 022B4400 */ /* nop */
|
|
/* 022B4404 */ _t192 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4404 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 022B4408 */ /* nop */
|
|
/* 022B440C */ cpu->f[12] = cpu->f[12] * cpu->f[8];
|
|
/* 022B4410 */ /* nop */
|
|
/* 022B4414 */ cpu->f[1] = cpu->f[1] * cpu->f[8];
|
|
/* 022B4418 */ _t193 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4418 */ rbrew_write_f32(cpu->mem, _t193, cpu->f[12]);
|
|
L_022B441C: ; // 0x22b441c
|
|
/* 022B441C */ _t194 = cpu->r[1] + 0x00000048u;
|
|
/* 022B441C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 022B4420 */ cpu->f[7] = cpu->f[6] * cpu->f[6];
|
|
/* 022B4424 */ _t195 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4424 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 022B4428 */ cpu->f[9] = fma(cpu->f[11], cpu->f[11], cpu->f[7]);
|
|
/* 022B442C */ _t196 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B442C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t196);
|
|
/* 022B4430 */ cpu->f[11] = fma(cpu->f[7], cpu->f[7], cpu->f[9]);
|
|
/* 022B4434 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 022B4438 */ _t197 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B4438 */ _t198 = _t197 & 0x00000001u;
|
|
/* 022B4438 */ if (_t198) goto L_022B443C; else goto L_022B4468;
|
|
L_022B443C: ; // 0x22b443c
|
|
/* 022B443C */ _ft199 = sqrt(cpu->f[11]);
|
|
/* 022B443C */ _ft200 = (double)(int32_t)0x00000001u;
|
|
/* 022B443C */ cpu->f[12] = _ft200 / _ft199;
|
|
/* 022B4440 */ cpu->f[6] = cpu->f[12] * cpu->f[12];
|
|
/* 022B4444 */ cpu->f[7] = cpu->f[12] * cpu->f[0];
|
|
/* 022B4448 */ cpu->f[6] = -fma(cpu->f[6], cpu->f[11], -(cpu->f[13]));
|
|
/* 022B444C */ cpu->f[12] = cpu->f[6] * cpu->f[7];
|
|
/* 022B4450 */ _t201 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4450 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t201);
|
|
/* 022B4454 */ /* nop */
|
|
/* 022B4458 */ cpu->f[8] = cpu->f[8] * cpu->f[12];
|
|
/* 022B445C */ /* nop */
|
|
/* 022B4460 */ _t202 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4460 */ rbrew_write_f32(cpu->mem, _t202, cpu->f[8]);
|
|
/* 022B4464 */ /* nop */
|
|
L_022B4468: ; // 0x22b4468
|
|
/* 022B4468 */ _t203 = cpu->r[1] + 0x00000054u;
|
|
/* 022B4468 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t203);
|
|
/* 022B446C */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 022B4470 */ _t204 = cpu->r[1] + 0x00000050u;
|
|
/* 022B4470 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t204);
|
|
/* 022B4474 */ cpu->f[10] = fma(cpu->f[12], cpu->f[12], cpu->f[9]);
|
|
/* 022B4478 */ _t205 = cpu->r[1] + 0x00000058u;
|
|
/* 022B4478 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 022B447C */ cpu->f[8] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 022B4480 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 022B4484 */ _t206 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B4484 */ _t207 = _t206 & 0x00000001u;
|
|
/* 022B4484 */ if (_t207) goto L_022B4488; else goto L_022B44B4;
|
|
L_022B4488: ; // 0x22b4488
|
|
/* 022B4488 */ _ft208 = sqrt(cpu->f[8]);
|
|
/* 022B4488 */ _ft209 = (double)(int32_t)0x00000001u;
|
|
/* 022B4488 */ cpu->f[9] = _ft209 / _ft208;
|
|
/* 022B448C */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 022B4490 */ cpu->f[12] = cpu->f[9] * cpu->f[0];
|
|
/* 022B4494 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[13]));
|
|
/* 022B4498 */ cpu->f[9] = cpu->f[10] * cpu->f[12];
|
|
/* 022B449C */ _t210 = cpu->r[1] + 0x00000058u;
|
|
/* 022B449C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 022B44A0 */ /* nop */
|
|
/* 022B44A4 */ cpu->f[13] = cpu->f[13] * cpu->f[9];
|
|
/* 022B44A8 */ /* nop */
|
|
/* 022B44AC */ _t211 = cpu->r[1] + 0x00000058u;
|
|
/* 022B44AC */ rbrew_write_f32(cpu->mem, _t211, cpu->f[13]);
|
|
/* 022B44B0 */ /* nop */
|
|
L_022B44B4: ; // 0x22b44b4
|
|
/* 022B44B4 */ _t212 = cpu->r[31] + 0x00000324u;
|
|
/* 022B44B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t212);
|
|
/* 022B44B8 */ _t213 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B44B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t213);
|
|
/* 022B44BC */ _t214 = cpu->r[8] + 0x00000044u;
|
|
/* 022B44BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t214);
|
|
/* 022B44C0 */ cpu->ctr = cpu->r[10];
|
|
/* 022B44C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B44C8 */ _t215 = cpu->r[31] + 0x00000324u;
|
|
/* 022B44C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t215);
|
|
/* 022B44CC */ _t216 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B44CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t216);
|
|
/* 022B44D0 */ _t217 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022B44D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t217);
|
|
/* 022B44D4 */ cpu->ctr = cpu->r[6];
|
|
/* 022B44D8 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B44DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B44E0 */ _t218 = cpu->r[31] + 0x00000324u;
|
|
/* 022B44E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t218);
|
|
/* 022B44E4 */ _t219 = cpu->r[3] + 0x000001CCu;
|
|
/* 022B44E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t219);
|
|
/* 022B44E8 */ _t220 = cpu->r[8] + 0x00000024u;
|
|
/* 022B44E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t220);
|
|
/* 022B44EC */ cpu->ctr = cpu->r[0];
|
|
/* 022B44F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B44F4 */ _t221 = cpu->r[1] + 0x00000018u;
|
|
/* 022B44F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 022B44F8 */ _t222 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B44F8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t222);
|
|
/* 022B44FC */ _t223 = cpu->r[1] + 0x000000CCu;
|
|
/* 022B44FC */ rbrew_write_f32(cpu->mem, _t223, cpu->f[8]);
|
|
/* 022B4500 */ _t224 = cpu->r[1] + 0x00000088u;
|
|
/* 022B4500 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t224);
|
|
/* 022B4504 */ _t225 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4504 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 022B4508 */ _t226 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B4508 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t226);
|
|
/* 022B450C */ _t227 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B450C */ rbrew_write_f32(cpu->mem, _t227, cpu->f[10]);
|
|
/* 022B4510 */ _t228 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B4510 */ rbrew_write_f32(cpu->mem, _t228, cpu->f[11]);
|
|
/* 022B4514 */ _t229 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4514 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 022B4518 */ _t230 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B4518 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[8]);
|
|
/* 022B451C */ _t231 = cpu->r[1] + 0x00000030u;
|
|
/* 022B451C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t231);
|
|
/* 022B4520 */ _t232 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B4520 */ rbrew_write_f32(cpu->mem, _t232, cpu->f[10]);
|
|
/* 022B4524 */ _t233 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B4524 */ rbrew_write_f32(cpu->mem, _t233, cpu->f[8]);
|
|
/* 022B4528 */ _t234 = cpu->r[1] + 0x00000068u;
|
|
/* 022B4528 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t234);
|
|
/* 022B452C */ _t235 = cpu->r[1] + 0x00000010u;
|
|
/* 022B452C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t235);
|
|
/* 022B4530 */ _t236 = cpu->r[1] + 0x00000098u;
|
|
/* 022B4530 */ rbrew_write_f32(cpu->mem, _t236, cpu->f[12]);
|
|
/* 022B4534 */ _t237 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B4534 */ rbrew_write_f32(cpu->mem, _t237, cpu->f[13]);
|
|
/* 022B4538 */ _t238 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4538 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t238);
|
|
/* 022B453C */ _t239 = cpu->r[1] + 0x00000024u;
|
|
/* 022B453C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t239);
|
|
/* 022B4540 */ _t240 = cpu->r[1] + 0x000000ECu;
|
|
/* 022B4540 */ rbrew_write_f32(cpu->mem, _t240, cpu->f[9]);
|
|
/* 022B4544 */ _t241 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B4544 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t241);
|
|
/* 022B4548 */ _t242 = cpu->r[1] + 0x00000078u;
|
|
/* 022B4548 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t242);
|
|
/* 022B454C */ _t243 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B454C */ rbrew_write_f32(cpu->mem, _t243, cpu->f[0]);
|
|
/* 022B4550 */ _t244 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4550 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t244);
|
|
/* 022B4554 */ _t245 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4554 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t245);
|
|
/* 022B4558 */ _t246 = cpu->r[1] + 0x000000D4u;
|
|
/* 022B4558 */ rbrew_write_f32(cpu->mem, _t246, cpu->f[0]);
|
|
/* 022B455C */ _t247 = cpu->r[1] + 0x000000F4u;
|
|
/* 022B455C */ rbrew_write_f32(cpu->mem, _t247, cpu->f[11]);
|
|
/* 022B4560 */ _t248 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B4560 */ rbrew_write_f32(cpu->mem, _t248, cpu->f[7]);
|
|
/* 022B4564 */ _t249 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4564 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t249);
|
|
/* 022B4568 */ _t250 = cpu->r[1] + 0x00000090u;
|
|
/* 022B4568 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t250);
|
|
/* 022B456C */ _t251 = cpu->r[1] + 0x00000084u;
|
|
/* 022B456C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 022B4570 */ _t252 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B4570 */ rbrew_write_f32(cpu->mem, _t252, cpu->f[11]);
|
|
/* 022B4574 */ _t253 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B4574 */ rbrew_write_f32(cpu->mem, _t253, cpu->f[10]);
|
|
/* 022B4578 */ _t254 = cpu->r[1] + 0x00000080u;
|
|
/* 022B4578 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t254);
|
|
/* 022B457C */ _t255 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B457C */ rbrew_write_f32(cpu->mem, _t255, cpu->f[0]);
|
|
/* 022B4580 */ _t256 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B4580 */ rbrew_write_f32(cpu->mem, _t256, cpu->f[10]);
|
|
/* 022B4584 */ _t257 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B4584 */ rbrew_write_f32(cpu->mem, _t257, cpu->f[6]);
|
|
/* 022B4588 */ _t258 = cpu->r[1] + 0x00000070u;
|
|
/* 022B4588 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t258);
|
|
/* 022B458C */ _t259 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B458C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t259);
|
|
/* 022B4590 */ _t260 = cpu->r[1] + 0x000000B0u;
|
|
/* 022B4590 */ rbrew_write_f32(cpu->mem, _t260, cpu->f[8]);
|
|
/* 022B4594 */ _t261 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B4594 */ rbrew_write_f32(cpu->mem, _t261, cpu->f[6]);
|
|
/* 022B4598 */ _t262 = cpu->r[1] + 0x000000E4u;
|
|
/* 022B4598 */ rbrew_write_f32(cpu->mem, _t262, cpu->f[7]);
|
|
/* 022B459C */ _t263 = cpu->r[1] + 0x00000094u;
|
|
/* 022B459C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t263);
|
|
/* 022B45A0 */ _t264 = cpu->r[1] + 0x00000008u;
|
|
/* 022B45A0 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t264);
|
|
/* 022B45A4 */ _t265 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B45A4 */ rbrew_write_f32(cpu->mem, _t265, cpu->f[6]);
|
|
/* 022B45A8 */ _t266 = cpu->r[1] + 0x000000C8u;
|
|
/* 022B45A8 */ rbrew_write_f32(cpu->mem, _t266, cpu->f[5]);
|
|
/* 022B45AC */ _t267 = cpu->r[1] + 0x00000074u;
|
|
/* 022B45AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t267);
|
|
/* 022B45B0 */ _t268 = cpu->r[31] + 0x00000324u;
|
|
/* 022B45B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t268);
|
|
/* 022B45B4 */ _t269 = cpu->r[1] + 0x000000BCu;
|
|
/* 022B45B4 */ rbrew_write_f32(cpu->mem, _t269, cpu->f[13]);
|
|
/* 022B45B8 */ _t270 = cpu->r[8] + 0x000001ECu;
|
|
/* 022B45B8 */ rbrew_write_f32(cpu->mem, _t270, cpu->f[5]);
|
|
/* 022B45BC */ _t271 = cpu->r[1] + 0x000000CCu;
|
|
/* 022B45BC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t271);
|
|
/* 022B45C0 */ _t272 = cpu->r[8] + 0x000001F0u;
|
|
/* 022B45C0 */ rbrew_write_f32(cpu->mem, _t272, cpu->f[9]);
|
|
/* 022B45C4 */ _t273 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B45C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t273);
|
|
/* 022B45C8 */ _t274 = cpu->r[8] + 0x000001F4u;
|
|
/* 022B45C8 */ rbrew_write_f32(cpu->mem, _t274, cpu->f[10]);
|
|
/* 022B45CC */ _t275 = cpu->r[1] + 0x000000D4u;
|
|
/* 022B45CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t275);
|
|
/* 022B45D0 */ _t276 = cpu->r[8] + 0x000001F8u;
|
|
/* 022B45D0 */ rbrew_write_f32(cpu->mem, _t276, cpu->f[0]);
|
|
/* 022B45D4 */ _t277 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B45D4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t277);
|
|
/* 022B45D8 */ _t278 = cpu->r[8] + 0x000001FCu;
|
|
/* 022B45D8 */ rbrew_write_f32(cpu->mem, _t278, cpu->f[7]);
|
|
/* 022B45DC */ _t279 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B45DC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t279);
|
|
/* 022B45E0 */ _t280 = cpu->r[8] + 0x00000200u;
|
|
/* 022B45E0 */ rbrew_write_f32(cpu->mem, _t280, cpu->f[8]);
|
|
/* 022B45E4 */ _t281 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B45E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t281);
|
|
/* 022B45E8 */ _t282 = cpu->r[8] + 0x00000204u;
|
|
/* 022B45E8 */ rbrew_write_f32(cpu->mem, _t282, cpu->f[9]);
|
|
/* 022B45EC */ _t283 = cpu->r[1] + 0x000000E4u;
|
|
/* 022B45EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t283);
|
|
/* 022B45F0 */ _t284 = cpu->r[8] + 0x00000208u;
|
|
/* 022B45F0 */ rbrew_write_f32(cpu->mem, _t284, cpu->f[10]);
|
|
/* 022B45F4 */ _t285 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B45F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t285);
|
|
/* 022B45F8 */ _t286 = cpu->r[8] + 0x0000020Cu;
|
|
/* 022B45F8 */ rbrew_write_f32(cpu->mem, _t286, cpu->f[11]);
|
|
/* 022B45FC */ _t287 = cpu->r[1] + 0x000000ECu;
|
|
/* 022B45FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t287);
|
|
/* 022B4600 */ _t288 = cpu->r[8] + 0x00000210u;
|
|
/* 022B4600 */ rbrew_write_f32(cpu->mem, _t288, cpu->f[12]);
|
|
/* 022B4604 */ _t289 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B4604 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t289);
|
|
/* 022B4608 */ _t290 = cpu->r[8] + 0x00000214u;
|
|
/* 022B4608 */ rbrew_write_f32(cpu->mem, _t290, cpu->f[13]);
|
|
/* 022B460C */ _t291 = cpu->r[1] + 0x000000F4u;
|
|
/* 022B460C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t291);
|
|
/* 022B4610 */ _t292 = cpu->r[8] + 0x00000218u;
|
|
/* 022B4610 */ rbrew_write_f32(cpu->mem, _t292, cpu->f[0]);
|
|
/* 022B4614 */ _t293 = cpu->r[1] + 0x00000098u;
|
|
/* 022B4614 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t293);
|
|
/* 022B4618 */ _t294 = cpu->r[8] + 0x0000021Cu;
|
|
/* 022B4618 */ rbrew_write_f32(cpu->mem, _t294, cpu->f[6]);
|
|
/* 022B461C */ _t295 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B461C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t295);
|
|
/* 022B4620 */ _t296 = cpu->r[8] + 0x00000220u;
|
|
/* 022B4620 */ rbrew_write_f32(cpu->mem, _t296, cpu->f[7]);
|
|
/* 022B4624 */ _t297 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B4624 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t297);
|
|
/* 022B4628 */ _t298 = cpu->r[8] + 0x00000224u;
|
|
/* 022B4628 */ rbrew_write_f32(cpu->mem, _t298, cpu->f[8]);
|
|
/* 022B462C */ _t299 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B462C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t299);
|
|
/* 022B4630 */ _t300 = cpu->r[8] + 0x00000228u;
|
|
/* 022B4630 */ rbrew_write_f32(cpu->mem, _t300, cpu->f[9]);
|
|
/* 022B4634 */ _t301 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B4634 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t301);
|
|
/* 022B4638 */ _t302 = cpu->r[8] + 0x0000022Cu;
|
|
/* 022B4638 */ rbrew_write_f32(cpu->mem, _t302, cpu->f[10]);
|
|
/* 022B463C */ _t303 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B463C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t303);
|
|
/* 022B4640 */ _t304 = cpu->r[8] + 0x00000230u;
|
|
/* 022B4640 */ rbrew_write_f32(cpu->mem, _t304, cpu->f[11]);
|
|
/* 022B4644 */ _t305 = cpu->r[1] + 0x000000B0u;
|
|
/* 022B4644 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t305);
|
|
/* 022B4648 */ _t306 = cpu->r[8] + 0x00000234u;
|
|
/* 022B4648 */ rbrew_write_f32(cpu->mem, _t306, cpu->f[12]);
|
|
/* 022B464C */ _t307 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B464C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t307);
|
|
/* 022B4650 */ _t308 = cpu->r[8] + 0x00000238u;
|
|
/* 022B4650 */ rbrew_write_f32(cpu->mem, _t308, cpu->f[13]);
|
|
/* 022B4654 */ _t309 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B4654 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t309);
|
|
/* 022B4658 */ _t310 = cpu->r[8] + 0x0000023Cu;
|
|
/* 022B4658 */ rbrew_write_f32(cpu->mem, _t310, cpu->f[0]);
|
|
/* 022B465C */ _t311 = cpu->r[1] + 0x000000BCu;
|
|
/* 022B465C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t311);
|
|
/* 022B4660 */ _t312 = cpu->r[8] + 0x00000240u;
|
|
/* 022B4660 */ rbrew_write_f32(cpu->mem, _t312, cpu->f[6]);
|
|
/* 022B4664 */ _t313 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B4664 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t313);
|
|
/* 022B4668 */ _t314 = cpu->r[8] + 0x00000244u;
|
|
/* 022B4668 */ rbrew_write_f32(cpu->mem, _t314, cpu->f[7]);
|
|
/* 022B466C */ _t315 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B466C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t315);
|
|
/* 022B4670 */ _t316 = cpu->r[8] + 0x00000248u;
|
|
/* 022B4670 */ rbrew_write_f32(cpu->mem, _t316, cpu->f[8]);
|
|
/* 022B4674 */ _t317 = cpu->r[31] + 0x00000324u;
|
|
/* 022B4674 */ cpu->r[12] = rbrew_read32(cpu->mem, _t317);
|
|
/* 022B4678 */ _t318 = cpu->r[12] + 0x000001E8u;
|
|
/* 022B4678 */ cpu->r[0] = rbrew_read8(cpu->mem, _t318);
|
|
/* 022B467C */ cpu->r[30] = 0x101C0000u;
|
|
/* 022B4680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B4684 */ cpu->r[30] = cpu->r[30] + 0x00006000u;
|
|
/* 022B4688 */ _t319 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4688 */ _t320 = _t319 & 0x00000001u;
|
|
/* 022B4688 */ if (_t320) goto L_022B46CC; else goto L_022B468C;
|
|
L_022B468C: ; // 0x22b468c
|
|
/* 022B468C */ _t321 = cpu->r[30] + 0x00000000u;
|
|
/* 022B468C */ cpu->r[5] = rbrew_read32(cpu->mem, _t321);
|
|
/* 022B4690 */ _t322 = cpu->r[5] + 0x00000268u;
|
|
/* 022B4690 */ cpu->r[29] = rbrew_read32(cpu->mem, _t322);
|
|
/* 022B4694 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B4698 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B469C */ cpu->r[4] = cpu->r[3];
|
|
/* 022B46A0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B46A4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B46A8 */ Gambit_fn_025A9CC4(cpu);
|
|
/* 022B46AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B46B0 */ _t323 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B46B0 */ _t324 = _t323 & 0x00000001u;
|
|
/* 022B46B0 */ if (_t324) goto L_022B46C8; else goto L_022B46B4;
|
|
L_022B46B4: ; // 0x22b46b4
|
|
/* 022B46B4 */ _t325 = cpu->r[31] + 0x00000324u;
|
|
/* 022B46B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t325);
|
|
/* 022B46B8 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B46BC */ Gambit_fn_0203F2A4(cpu);
|
|
/* 022B46C0 */ cpu->r[9] = 0x00000000u;
|
|
/* 022B46C4 */ _t326 = cpu->r[29] + 0x000001E8u;
|
|
/* 022B46C4 */ rbrew_write8(cpu->mem, _t326, (uint8_t)cpu->r[9]);
|
|
L_022B46C8: ; // 0x22b46c8
|
|
/* 022B46C8 */ _t327 = cpu->r[31] + 0x00000324u;
|
|
/* 022B46C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t327);
|
|
L_022B46CC: ; // 0x22b46cc
|
|
/* 022B46CC */ _t328 = cpu->r[12] + 0x000001E8u;
|
|
/* 022B46CC */ cpu->r[10] = rbrew_read8(cpu->mem, _t328);
|
|
/* 022B46D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B46D4 */ _t329 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B46D4 */ _t330 = _t329 & 0x00000001u;
|
|
/* 022B46D4 */ if (_t330) goto L_022B46D8; else goto L_022B4714;
|
|
L_022B46D8: ; // 0x22b46d8
|
|
/* 022B46D8 */ _t331 = cpu->r[30] + 0x00000000u;
|
|
/* 022B46D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t331);
|
|
/* 022B46DC */ _t332 = cpu->r[12] + 0x00000268u;
|
|
/* 022B46DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t332);
|
|
/* 022B46E0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B46E4 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B46E8 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B46EC */ cpu->r[3] = cpu->r[29];
|
|
/* 022B46F0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B46F4 */ Gambit_fn_025A9CC4(cpu);
|
|
/* 022B46F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B46FC */ _t333 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B46FC */ _t334 = _t333 & 0x00000001u;
|
|
/* 022B46FC */ if (_t334) goto L_022B4700; else goto L_022B4714;
|
|
L_022B4700: ; // 0x22b4700
|
|
/* 022B4700 */ _t335 = cpu->r[31] + 0x00000324u;
|
|
/* 022B4700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t335);
|
|
/* 022B4704 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B4708 */ Gambit_fn_0203F288(cpu);
|
|
/* 022B470C */ cpu->r[9] = 0x00000001u;
|
|
/* 022B4710 */ _t336 = cpu->r[31] + 0x000001E8u;
|
|
/* 022B4710 */ rbrew_write8(cpu->mem, _t336, (uint8_t)cpu->r[9]);
|
|
L_022B4714: ; // 0x22b4714
|
|
/* 022B4714 */ _t337 = cpu->r[1] + 0x00000168u;
|
|
/* 022B4714 */ cpu->r[28] = rbrew_read32(cpu->mem, _t337);
|
|
/* 022B4718 */ _t338 = cpu->r[1] + 0x0000016Cu;
|
|
/* 022B4718 */ cpu->r[29] = rbrew_read32(cpu->mem, _t338);
|
|
/* 022B471C */ _t339 = cpu->r[1] + 0x00000180u;
|
|
/* 022B471C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t339);
|
|
/* 022B4720 */ _t340 = cpu->r[1] + 0x00000170u;
|
|
/* 022B4720 */ cpu->r[30] = rbrew_read32(cpu->mem, _t340);
|
|
/* 022B4724 */ _t341 = cpu->r[1] + 0x00000178u;
|
|
/* 022B4724 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t341);
|
|
/* 022B4728 */ _t342 = cpu->r[1] + 0x00000174u;
|
|
/* 022B4728 */ cpu->r[31] = rbrew_read32(cpu->mem, _t342);
|
|
/* 022B472C */ _t343 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B472C */ _t344 = _t343 & 0x00000001u;
|
|
/* 022B472C */ if (_t344) goto L_022B4730; // else: addr-0 trap, fall-through
|
|
L_022B4730: ; // 0x22b4730
|
|
/* 022B4730 */ _t345 = cpu->r[1] + 0x0000018Cu;
|
|
/* 022B4730 */ cpu->r[0] = rbrew_read32(cpu->mem, _t345);
|
|
/* 022B4734 */ cpu->lr = cpu->r[0];
|
|
/* 022B4738 */ cpu->r[1] = cpu->r[1] + 0x00000188u;
|
|
/* 022B473C */ return;
|
|
}
|
|
|
|
// fn_022B4740 @ 0x22b4740
|
|
void Gambit_fn_022B4740(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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;
|
|
|
|
L_022B4740: ; // 0x22b4740
|
|
/* 022B4740 */ cpu->r[0] = cpu->lr;
|
|
/* 022B4744 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022B4744 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4744 */ cpu->r[1] = _t0;
|
|
/* 022B4748 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4748 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B474C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B4750 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4750 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B4754 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4754 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B4758 */ _t4 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022B4758 */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B475C */ _t5 = cpu->r[30] + 0x000046BCu;
|
|
/* 022B475C */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B4760 */ _t6 = cpu->r[7] + 0x0000002Cu;
|
|
/* 022B4760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B4764 */ cpu->ctr = cpu->r[0];
|
|
/* 022B4768 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B476C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B4770 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 022B4770 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B4774 */ _t8 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4774 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022B4778 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 022B4778 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B477C */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 022B477C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[7]);
|
|
/* 022B4780 */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 022B4780 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B4784 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4784 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[8]);
|
|
/* 022B4788 */ _t13 = cpu->r[30] + 0x00000074u;
|
|
/* 022B4788 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B478C */ _t14 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B478C */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B4790 */ _t15 = cpu->r[30] + 0x00000068u;
|
|
/* 022B4790 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B4794 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4794 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[4]);
|
|
/* 022B4798 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4798 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[6]);
|
|
/* 022B479C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B479C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[5]);
|
|
/* 022B47A0 */ _t19 = cpu->r[30] + 0x0000006Cu;
|
|
/* 022B47A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B47A4 */ _t20 = cpu->r[30] + 0x00000060u;
|
|
/* 022B47A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B47A8 */ _t21 = cpu->r[30] + 0x00000078u;
|
|
/* 022B47A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B47AC */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022B47AC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 022B47B0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022B47B0 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B47B4 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 022B47B4 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 022B47B8 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B47B8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 022B47BC */ _t26 = cpu->r[30] + 0x00000070u;
|
|
/* 022B47BC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B47C0 */ _t27 = cpu->r[30] + 0x0000007Cu;
|
|
/* 022B47C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B47C4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B47C8 */ _t28 = cpu->r[30] + 0x00000064u;
|
|
/* 022B47C8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B47CC */ _t29 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B47CC */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 022B47D0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B47D4 */ _t30 = cpu->r[12] + 0x000037E8u;
|
|
/* 022B47D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B47D8 */ _t31 = cpu->r[1] + 0x00000028u;
|
|
/* 022B47D8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 022B47DC */ _t32 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B47DC */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 022B47E0 */ _t33 = cpu->r[31] + 0x00000124u;
|
|
/* 022B47E0 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[6]);
|
|
/* 022B47E4 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 022B47E4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 022B47E8 */ _t35 = cpu->r[10] + 0x00003AE0u;
|
|
/* 022B47E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B47EC */ cpu->r[7] = 0x10060000u;
|
|
/* 022B47F0 */ _t36 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B47F0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[12]);
|
|
/* 022B47F4 */ _t37 = cpu->r[7] + 0x000037ECu;
|
|
/* 022B47F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B47F8 */ _t38 = cpu->r[31] + 0x00000138u;
|
|
/* 022B47F8 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 022B47FC */ _t39 = cpu->r[31] + 0x000000E0u;
|
|
/* 022B47FC */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 022B4800 */ _t40 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4800 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[10]);
|
|
/* 022B4804 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4804 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B4808 */ _t42 = cpu->r[31] + 0x000002B4u;
|
|
/* 022B4808 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
/* 022B480C */ _t43 = cpu->r[31] + 0x00000140u;
|
|
/* 022B480C */ rbrew_write_f32(cpu->mem, _t43, cpu->f[11]);
|
|
/* 022B4810 */ _t44 = cpu->r[31] + 0x00000120u;
|
|
/* 022B4810 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[5]);
|
|
/* 022B4814 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B4818 */ _t45 = cpu->r[31] + 0x000000E4u;
|
|
/* 022B4818 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 022B481C */ cpu->r[9] = 0x00000001u;
|
|
/* 022B4820 */ _t46 = cpu->r[31] + 0x000002BCu;
|
|
/* 022B4820 */ rbrew_write16(cpu->mem, _t46, (uint16_t)cpu->r[0]);
|
|
/* 022B4824 */ _t47 = cpu->r[31] + 0x000002B8u;
|
|
/* 022B4824 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 022B4828 */ _t48 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B4828 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[4]);
|
|
/* 022B482C */ _t49 = cpu->r[31] + 0x00000130u;
|
|
/* 022B482C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 022B4830 */ _t50 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4830 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[8]);
|
|
/* 022B4834 */ _t51 = cpu->r[31] + 0x00000128u;
|
|
/* 022B4834 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[3]);
|
|
/* 022B4838 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B483C */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 022B483C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[10]);
|
|
/* 022B4840 */ _t53 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022B4840 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B4844 */ _t54 = cpu->r[31] + 0x000002C0u;
|
|
/* 022B4844 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[9]);
|
|
/* 022B4848 */ _t55 = cpu->r[31] + 0x000002BEu;
|
|
/* 022B4848 */ rbrew_write16(cpu->mem, _t55, (uint16_t)cpu->r[0]);
|
|
/* 022B484C */ _t56 = cpu->r[31] + 0x00000144u;
|
|
/* 022B484C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[7]);
|
|
/* 022B4850 */ _t57 = cpu->r[8] + 0x00000000u;
|
|
/* 022B4850 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022B4854 */ cpu->r[5] = cpu->r[5] + 0x00003AE4u;
|
|
/* 022B4858 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B485C */ Gambit_fn_027DBAD4(cpu);
|
|
/* 022B4860 */ _t58 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4860 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022B4864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B4868 */ _t59 = cpu->r[31] + 0x00000188u;
|
|
/* 022B4868 */ cpu->r[3] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022B486C */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B486C */ _t61 = _t60 & 0x00000001u;
|
|
/* 022B486C */ if (_t61) goto L_022B4870; else goto L_022B4874;
|
|
L_022B4870: ; // 0x22b4870
|
|
/* 022B4870 */ _t62 = cpu->r[31] + 0x000002C0u;
|
|
/* 022B4870 */ rbrew_write16(cpu->mem, _t62, (uint16_t)cpu->r[0]);
|
|
L_022B4874: ; // 0x22b4874
|
|
/* 022B4874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B4878 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4878 */ _t64 = _t63 & 0x00000001u;
|
|
/* 022B4878 */ if (_t64) goto L_022B4880; else goto L_022B487C;
|
|
L_022B487C: ; // 0x22b487c
|
|
/* 022B487C */ Gambit_fn_023B054C(cpu);
|
|
L_022B4880: ; // 0x22b4880
|
|
/* 022B4880 */ cpu->r[12] = 0x101F0000u;
|
|
/* 022B4884 */ _t65 = cpu->r[31] + 0x00000070u;
|
|
/* 022B4884 */ cpu->r[7] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022B4888 */ _t66 = cpu->r[12] + 0x00006338u;
|
|
/* 022B4888 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022B4888 */ cpu->r[12] = _t66;
|
|
/* 022B488C */ _t67 = cpu->r[7] + 0x00000034u;
|
|
/* 022B488C */ rbrew_write_f32(cpu->mem, _t67, cpu->f[9]);
|
|
/* 022B4890 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 022B4890 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022B4894 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B4898 */ _t69 = cpu->r[7] + 0x00000038u;
|
|
/* 022B4898 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[10]);
|
|
/* 022B489C */ _t70 = cpu->r[12] + 0x00000008u;
|
|
/* 022B489C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022B48A0 */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B48A4 */ _t71 = cpu->r[7] + 0x0000003Cu;
|
|
/* 022B48A4 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[11]);
|
|
/* 022B48A8 */ _t72 = cpu->r[30] + 0x00000014u;
|
|
/* 022B48A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022B48AC */ _t73 = cpu->r[12] + 0x00000014u;
|
|
/* 022B48AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022B48B0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B48B4 */ cpu->r[3] = cpu->r[30] + 0x00000010u;
|
|
/* 022B48B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B48BC */ _t74 = cpu->r[31] + 0x00000094u;
|
|
/* 022B48BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022B48C0 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B48C4 */ _t75 = cpu->r[30] + 0x00000010u;
|
|
/* 022B48C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022B48C8 */ Gambit_fn_02398850(cpu);
|
|
/* 022B48CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022B48D0 */ Gambit_fn_022B3F70(cpu);
|
|
/* 022B48D4 */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B48D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022B48D8 */ _t77 = cpu->r[1] + 0x00000044u;
|
|
/* 022B48D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022B48DC */ cpu->lr = cpu->r[0];
|
|
/* 022B48E0 */ _t78 = cpu->r[1] + 0x00000040u;
|
|
/* 022B48E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B48E4 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 022B48E8 */ return;
|
|
}
|
|
|
|
// fn_022B4744 @ 0x22b4744
|
|
void Gambit_fn_022B4744(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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;
|
|
|
|
L_022B4744: ; // 0x22b4744
|
|
/* 022B4744 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022B4744 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4744 */ cpu->r[1] = _t0;
|
|
/* 022B4748 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4748 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B474C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B4750 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4750 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B4754 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4754 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B4758 */ _t4 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022B4758 */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B475C */ _t5 = cpu->r[30] + 0x000046BCu;
|
|
/* 022B475C */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B4760 */ _t6 = cpu->r[7] + 0x0000002Cu;
|
|
/* 022B4760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B4764 */ cpu->ctr = cpu->r[0];
|
|
/* 022B4768 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B476C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B4770 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 022B4770 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B4774 */ _t8 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4774 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022B4778 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 022B4778 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B477C */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 022B477C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[7]);
|
|
/* 022B4780 */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 022B4780 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B4784 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4784 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[8]);
|
|
/* 022B4788 */ _t13 = cpu->r[30] + 0x00000074u;
|
|
/* 022B4788 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B478C */ _t14 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B478C */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B4790 */ _t15 = cpu->r[30] + 0x00000068u;
|
|
/* 022B4790 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B4794 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4794 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[4]);
|
|
/* 022B4798 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4798 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[6]);
|
|
/* 022B479C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B479C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[5]);
|
|
/* 022B47A0 */ _t19 = cpu->r[30] + 0x0000006Cu;
|
|
/* 022B47A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B47A4 */ _t20 = cpu->r[30] + 0x00000060u;
|
|
/* 022B47A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B47A8 */ _t21 = cpu->r[30] + 0x00000078u;
|
|
/* 022B47A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B47AC */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022B47AC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 022B47B0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022B47B0 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B47B4 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 022B47B4 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 022B47B8 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B47B8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 022B47BC */ _t26 = cpu->r[30] + 0x00000070u;
|
|
/* 022B47BC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B47C0 */ _t27 = cpu->r[30] + 0x0000007Cu;
|
|
/* 022B47C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B47C4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B47C8 */ _t28 = cpu->r[30] + 0x00000064u;
|
|
/* 022B47C8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B47CC */ _t29 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B47CC */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 022B47D0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B47D4 */ _t30 = cpu->r[12] + 0x000037E8u;
|
|
/* 022B47D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B47D8 */ _t31 = cpu->r[1] + 0x00000028u;
|
|
/* 022B47D8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 022B47DC */ _t32 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B47DC */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 022B47E0 */ _t33 = cpu->r[31] + 0x00000124u;
|
|
/* 022B47E0 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[6]);
|
|
/* 022B47E4 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 022B47E4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 022B47E8 */ _t35 = cpu->r[10] + 0x00003AE0u;
|
|
/* 022B47E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B47EC */ cpu->r[7] = 0x10060000u;
|
|
/* 022B47F0 */ _t36 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B47F0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[12]);
|
|
/* 022B47F4 */ _t37 = cpu->r[7] + 0x000037ECu;
|
|
/* 022B47F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B47F8 */ _t38 = cpu->r[31] + 0x00000138u;
|
|
/* 022B47F8 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 022B47FC */ _t39 = cpu->r[31] + 0x000000E0u;
|
|
/* 022B47FC */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 022B4800 */ _t40 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4800 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[10]);
|
|
/* 022B4804 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4804 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B4808 */ _t42 = cpu->r[31] + 0x000002B4u;
|
|
/* 022B4808 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[13]);
|
|
/* 022B480C */ _t43 = cpu->r[31] + 0x00000140u;
|
|
/* 022B480C */ rbrew_write_f32(cpu->mem, _t43, cpu->f[11]);
|
|
/* 022B4810 */ _t44 = cpu->r[31] + 0x00000120u;
|
|
/* 022B4810 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[5]);
|
|
/* 022B4814 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B4818 */ _t45 = cpu->r[31] + 0x000000E4u;
|
|
/* 022B4818 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 022B481C */ cpu->r[9] = 0x00000001u;
|
|
/* 022B4820 */ _t46 = cpu->r[31] + 0x000002BCu;
|
|
/* 022B4820 */ rbrew_write16(cpu->mem, _t46, (uint16_t)cpu->r[0]);
|
|
/* 022B4824 */ _t47 = cpu->r[31] + 0x000002B8u;
|
|
/* 022B4824 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 022B4828 */ _t48 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B4828 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[4]);
|
|
/* 022B482C */ _t49 = cpu->r[31] + 0x00000130u;
|
|
/* 022B482C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 022B4830 */ _t50 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4830 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[8]);
|
|
/* 022B4834 */ _t51 = cpu->r[31] + 0x00000128u;
|
|
/* 022B4834 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[3]);
|
|
/* 022B4838 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B483C */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 022B483C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[10]);
|
|
/* 022B4840 */ _t53 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022B4840 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B4844 */ _t54 = cpu->r[31] + 0x000002C0u;
|
|
/* 022B4844 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[9]);
|
|
/* 022B4848 */ _t55 = cpu->r[31] + 0x000002BEu;
|
|
/* 022B4848 */ rbrew_write16(cpu->mem, _t55, (uint16_t)cpu->r[0]);
|
|
/* 022B484C */ _t56 = cpu->r[31] + 0x00000144u;
|
|
/* 022B484C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[7]);
|
|
/* 022B4850 */ _t57 = cpu->r[8] + 0x00000000u;
|
|
/* 022B4850 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022B4854 */ cpu->r[5] = cpu->r[5] + 0x00003AE4u;
|
|
/* 022B4858 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B485C */ Gambit_fn_027DBAD4(cpu);
|
|
/* 022B4860 */ _t58 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4860 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022B4864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B4868 */ _t59 = cpu->r[31] + 0x00000188u;
|
|
/* 022B4868 */ cpu->r[3] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022B486C */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B486C */ _t61 = _t60 & 0x00000001u;
|
|
/* 022B486C */ if (_t61) goto L_022B4870; else goto L_022B4874;
|
|
L_022B4870: ; // 0x22b4870
|
|
/* 022B4870 */ _t62 = cpu->r[31] + 0x000002C0u;
|
|
/* 022B4870 */ rbrew_write16(cpu->mem, _t62, (uint16_t)cpu->r[0]);
|
|
L_022B4874: ; // 0x22b4874
|
|
/* 022B4874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B4878 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4878 */ _t64 = _t63 & 0x00000001u;
|
|
/* 022B4878 */ if (_t64) goto L_022B4880; else goto L_022B487C;
|
|
L_022B487C: ; // 0x22b487c
|
|
/* 022B487C */ Gambit_fn_023B054C(cpu);
|
|
L_022B4880: ; // 0x22b4880
|
|
/* 022B4880 */ cpu->r[12] = 0x101F0000u;
|
|
/* 022B4884 */ _t65 = cpu->r[31] + 0x00000070u;
|
|
/* 022B4884 */ cpu->r[7] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022B4888 */ _t66 = cpu->r[12] + 0x00006338u;
|
|
/* 022B4888 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022B4888 */ cpu->r[12] = _t66;
|
|
/* 022B488C */ _t67 = cpu->r[7] + 0x00000034u;
|
|
/* 022B488C */ rbrew_write_f32(cpu->mem, _t67, cpu->f[9]);
|
|
/* 022B4890 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 022B4890 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022B4894 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B4898 */ _t69 = cpu->r[7] + 0x00000038u;
|
|
/* 022B4898 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[10]);
|
|
/* 022B489C */ _t70 = cpu->r[12] + 0x00000008u;
|
|
/* 022B489C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022B48A0 */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B48A4 */ _t71 = cpu->r[7] + 0x0000003Cu;
|
|
/* 022B48A4 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[11]);
|
|
/* 022B48A8 */ _t72 = cpu->r[30] + 0x00000014u;
|
|
/* 022B48A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022B48AC */ _t73 = cpu->r[12] + 0x00000014u;
|
|
/* 022B48AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022B48B0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B48B4 */ cpu->r[3] = cpu->r[30] + 0x00000010u;
|
|
/* 022B48B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B48BC */ _t74 = cpu->r[31] + 0x00000094u;
|
|
/* 022B48BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022B48C0 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B48C4 */ _t75 = cpu->r[30] + 0x00000010u;
|
|
/* 022B48C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022B48C8 */ Gambit_fn_02398850(cpu);
|
|
/* 022B48CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022B48D0 */ Gambit_fn_022B3F70(cpu);
|
|
/* 022B48D4 */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B48D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022B48D8 */ _t77 = cpu->r[1] + 0x00000044u;
|
|
/* 022B48D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022B48DC */ cpu->lr = cpu->r[0];
|
|
/* 022B48E0 */ _t78 = cpu->r[1] + 0x00000040u;
|
|
/* 022B48E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B48E4 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 022B48E8 */ return;
|
|
}
|
|
|
|
// fn_022B48EC @ 0x22b48ec
|
|
void Gambit_fn_022B48EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022B48EC: ; // 0x22b48ec
|
|
/* 022B48EC */ _t0 = cpu->r[3] + 0x00000388u;
|
|
/* 022B48EC */ cpu->r[12] = rbrew_read16(cpu->mem, _t0);
|
|
/* 022B48F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B48F4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B48F4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B48F4 */ if (_t2) goto L_022B4908; else goto L_022B48F8;
|
|
L_022B48F8: ; // 0x22b48f8
|
|
/* 022B48F8 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022B48FC */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 022B48FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B4900 */ _t3 = cpu->r[3] + 0x00000388u;
|
|
/* 022B4900 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[12]);
|
|
/* 022B4904 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4904 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B4904 */ _t6 = _t5 ^ 0x00000001u;
|
|
/* 022B4904 */ if (_t6) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B4904 */ goto L_022B4908;
|
|
L_022B4908: ; // 0x22b4908
|
|
/* 022B4908 */ _t7 = cpu->r[3] + 0x000000E0u;
|
|
/* 022B4908 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B490C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B4910 */ _t8 = cpu->r[12] + 0x00003AF0u;
|
|
/* 022B4910 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B4914 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B4918 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 022B491C */ _t9 = cpu->r[12] + 0x000037ECu;
|
|
/* 022B491C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B4920 */ cpu->f[12] = cpu->f[0] - cpu->f[13];
|
|
/* 022B4924 */ /* nop */
|
|
/* 022B4928 */ _t10 = cpu->r[3] + 0x000000E0u;
|
|
/* 022B4928 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[12]);
|
|
/* 022B492C */ return;
|
|
}
|
|
|
|
// fn_022B4930 @ 0x22b4930
|
|
void Gambit_fn_022B4930(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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;
|
|
|
|
L_022B4930: ; // 0x22b4930
|
|
/* 022B4930 */ cpu->r[0] = cpu->lr;
|
|
/* 022B4934 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022B4934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4934 */ cpu->r[1] = _t0;
|
|
/* 022B4938 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4938 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B493C */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 022B493C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022B4940 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B4944 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4944 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022B4948 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4948 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B494C */ Gambit_fn_022B48EC(cpu);
|
|
/* 022B4950 */ _t5 = cpu->r[31] + 0x00000198u;
|
|
/* 022B4950 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 022B4954 */ /* nop */
|
|
/* 022B4958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B495C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B495C */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B495C */ if (_t7) goto L_022B4AB4; else goto L_022B4960;
|
|
L_022B4960: ; // 0x22b4960
|
|
/* 022B4960 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B4964 */ _t8 = cpu->r[31] + 0x000000E0u;
|
|
/* 022B4964 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B4968 */ _t9 = cpu->r[10] + 0x000037E8u;
|
|
/* 022B4968 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B496C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B4970 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B4970 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022B4970 */ if (_t11) goto L_022B499C; else goto L_022B4974;
|
|
L_022B4974: ; // 0x22b4974
|
|
/* 022B4974 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B4978 */ cpu->r[4] = 0x00000002u;
|
|
/* 022B497C */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B4980 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4980 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B4984 */ _t13 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B4988 */ _t14 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4988 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B498C */ cpu->lr = cpu->r[0];
|
|
/* 022B4990 */ _t15 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4990 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B4994 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B4998 */ return;
|
|
L_022B499C: ; // 0x22b499c
|
|
/* 022B499C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Bu);
|
|
/* 022B49A0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B49A0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B49A0 */ if (_t17) goto L_022B49A4; else goto L_022B4AB4;
|
|
L_022B49A4: ; // 0x22b49a4
|
|
/* 022B49A4 */ _t18 = cpu->r[31] + 0x00000194u;
|
|
/* 022B49A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B49A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B49AC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B49AC */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B49AC */ if (_t20) goto L_022B49B0; else goto L_022B4AB4;
|
|
L_022B49B0: ; // 0x22b49b0
|
|
/* 022B49B0 */ cpu->r[30] = 0x101C0000u;
|
|
/* 022B49B4 */ _t21 = cpu->r[30] + 0x00006000u;
|
|
/* 022B49B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B49B4 */ cpu->r[30] = _t21;
|
|
/* 022B49B8 */ _t22 = cpu->r[12] + 0x00000268u;
|
|
/* 022B49B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B49BC */ cpu->r[3] = cpu->r[29];
|
|
/* 022B49C0 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B49C4 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B49C8 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B49CC */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B49D0 */ Gambit_fn_025A9CC4(cpu);
|
|
/* 022B49D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B49D8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B49D8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022B49D8 */ if (_t24) goto L_022B49DC; else goto L_022B4AB4;
|
|
L_022B49DC: ; // 0x22b49dc
|
|
/* 022B49DC */ _t25 = cpu->r[30] + 0x00000000u;
|
|
/* 022B49DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B49E0 */ _t26 = cpu->r[7] + 0x00000268u;
|
|
/* 022B49E0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B49E4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B49E8 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B49EC */ cpu->r[4] = cpu->r[3];
|
|
/* 022B49F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B49F4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B49F8 */ _t27 = cpu->r[3] + 0x00000244u;
|
|
/* 022B49F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B49FC */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B49FC */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
/* 022B4A00 */ _t29 = cpu->r[3] + 0x00000248u;
|
|
/* 022B4A00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B4A04 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4A08 */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4A08 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 022B4A0C */ _t31 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B4A0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B4A10 */ cpu->r[3] = cpu->r[31] + 0x000002C8u;
|
|
/* 022B4A14 */ cpu->r[5] = cpu->r[4];
|
|
/* 022B4A18 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4A18 */ rbrew_write32(cpu->mem, _t32, cpu->r[12]);
|
|
/* 022B4A1C */ Gambit_fn_027DF7CC(cpu);
|
|
/* 022B4A20 */ cpu->r[3] = cpu->r[31] + 0x000002C8u;
|
|
/* 022B4A24 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B4A28 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 022B4A2C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4A30 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4A30 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]);
|
|
/* 022B4A34 */ Gambit_fn_02A63BE8(cpu);
|
|
/* 022B4A38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B4A3C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4A3C */ _t35 = _t34 & 0x00000001u;
|
|
/* 022B4A3C */ if (_t35) goto L_022B4AB4; else goto L_022B4A40;
|
|
L_022B4A40: ; // 0x22b4a40
|
|
/* 022B4A40 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4A40 */ cpu->r[7] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B4A44 */ cpu->r[7] = cpu->r[7] + 0x00000002u;
|
|
/* 022B4A48 */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4A48 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 022B4A4C */ _t38 = cpu->r[7] + 0x00000000u;
|
|
/* 022B4A4C */ cpu->r[8] = rbrew_read16(cpu->mem, _t38);
|
|
/* 022B4A50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x0000FFFFu);
|
|
/* 022B4A54 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4A54 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022B4A54 */ if (_t40) goto L_022B4AB4; else goto L_022B4A58;
|
|
L_022B4A58: ; // 0x22b4a58
|
|
/* 022B4A58 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000014u);
|
|
/* 022B4A5C */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4A5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B4A60 */ _t42 = cpu->r[30] + 0x00000000u;
|
|
/* 022B4A60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B4A64 */ cpu->r[0] = cpu->r[11] + cpu->r[8];
|
|
/* 022B4A68 */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4A68 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 022B4A6C */ _t44 = cpu->r[12] + 0x00000268u;
|
|
/* 022B4A6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B4A70 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B4A74 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B4A78 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B4A7C */ cpu->r[3] = cpu->r[29];
|
|
/* 022B4A80 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B4A84 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4A84 */ rbrew_write16(cpu->mem, _t45, (uint16_t)cpu->r[31]);
|
|
/* 022B4A88 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B4A8C */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022B4A90 */ _t47 = cpu->r[6] + 0x000037DCu;
|
|
/* 022B4A90 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022B4A94 */ cpu->r[6] = 0x00000003u;
|
|
/* 022B4A98 */ cpu->r[4] = 0x00000001u;
|
|
/* 022B4A9C */ _t48 = rbrew_rlwinm(cpu->r[6], 0x00000009u, 0x00000010u, 0x00000016u);
|
|
/* 022B4A9C */ _t49 = cpu->r[0] & 0xFFFF01FFu;
|
|
/* 022B4A9C */ cpu->r[0] = _t49 | _t48;
|
|
/* 022B4AA0 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B4AA4 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4AA4 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 022B4AA8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4AAC */ _t51 = cpu->r[1] + 0x0000000Bu;
|
|
/* 022B4AAC */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[6]);
|
|
/* 022B4AB0 */ Gambit_fn_025C6A80(cpu);
|
|
L_022B4AB4: ; // 0x22b4ab4
|
|
/* 022B4AB4 */ _t52 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4AB4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022B4AB8 */ _t53 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4AB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B4ABC */ _t54 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4ABC */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022B4AC0 */ cpu->lr = cpu->r[0];
|
|
/* 022B4AC4 */ _t55 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022B4AC8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B4ACC */ return;
|
|
}
|
|
|
|
// fn_022B4934 @ 0x22b4934
|
|
void Gambit_fn_022B4934(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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;
|
|
|
|
L_022B4934: ; // 0x22b4934
|
|
/* 022B4934 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022B4934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4934 */ cpu->r[1] = _t0;
|
|
/* 022B4938 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4938 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B493C */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 022B493C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022B4940 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B4944 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4944 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022B4948 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4948 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B494C */ Gambit_fn_022B48EC(cpu);
|
|
/* 022B4950 */ _t5 = cpu->r[31] + 0x00000198u;
|
|
/* 022B4950 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 022B4954 */ /* nop */
|
|
/* 022B4958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B495C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B495C */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B495C */ if (_t7) goto L_022B4AB4; else goto L_022B4960;
|
|
L_022B4960: ; // 0x22b4960
|
|
/* 022B4960 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B4964 */ _t8 = cpu->r[31] + 0x000000E0u;
|
|
/* 022B4964 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B4968 */ _t9 = cpu->r[10] + 0x000037E8u;
|
|
/* 022B4968 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B496C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B4970 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B4970 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022B4970 */ if (_t11) goto L_022B499C; else goto L_022B4974;
|
|
L_022B4974: ; // 0x22b4974
|
|
/* 022B4974 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B4978 */ cpu->r[4] = 0x00000002u;
|
|
/* 022B497C */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B4980 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4980 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B4984 */ _t13 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B4988 */ _t14 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4988 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B498C */ cpu->lr = cpu->r[0];
|
|
/* 022B4990 */ _t15 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4990 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B4994 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B4998 */ return;
|
|
L_022B499C: ; // 0x22b499c
|
|
/* 022B499C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Bu);
|
|
/* 022B49A0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B49A0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B49A0 */ if (_t17) goto L_022B49A4; else goto L_022B4AB4;
|
|
L_022B49A4: ; // 0x22b49a4
|
|
/* 022B49A4 */ _t18 = cpu->r[31] + 0x00000194u;
|
|
/* 022B49A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B49A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B49AC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B49AC */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B49AC */ if (_t20) goto L_022B49B0; else goto L_022B4AB4;
|
|
L_022B49B0: ; // 0x22b49b0
|
|
/* 022B49B0 */ cpu->r[30] = 0x101C0000u;
|
|
/* 022B49B4 */ _t21 = cpu->r[30] + 0x00006000u;
|
|
/* 022B49B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B49B4 */ cpu->r[30] = _t21;
|
|
/* 022B49B8 */ _t22 = cpu->r[12] + 0x00000268u;
|
|
/* 022B49B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B49BC */ cpu->r[3] = cpu->r[29];
|
|
/* 022B49C0 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B49C4 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B49C8 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B49CC */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B49D0 */ Gambit_fn_025A9CC4(cpu);
|
|
/* 022B49D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B49D8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B49D8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022B49D8 */ if (_t24) goto L_022B49DC; else goto L_022B4AB4;
|
|
L_022B49DC: ; // 0x22b49dc
|
|
/* 022B49DC */ _t25 = cpu->r[30] + 0x00000000u;
|
|
/* 022B49DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B49E0 */ _t26 = cpu->r[7] + 0x00000268u;
|
|
/* 022B49E0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B49E4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B49E8 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B49EC */ cpu->r[4] = cpu->r[3];
|
|
/* 022B49F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B49F4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B49F8 */ _t27 = cpu->r[3] + 0x00000244u;
|
|
/* 022B49F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B49FC */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B49FC */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
/* 022B4A00 */ _t29 = cpu->r[3] + 0x00000248u;
|
|
/* 022B4A00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B4A04 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4A08 */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4A08 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 022B4A0C */ _t31 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B4A0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B4A10 */ cpu->r[3] = cpu->r[31] + 0x000002C8u;
|
|
/* 022B4A14 */ cpu->r[5] = cpu->r[4];
|
|
/* 022B4A18 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4A18 */ rbrew_write32(cpu->mem, _t32, cpu->r[12]);
|
|
/* 022B4A1C */ Gambit_fn_027DF7CC(cpu);
|
|
/* 022B4A20 */ cpu->r[3] = cpu->r[31] + 0x000002C8u;
|
|
/* 022B4A24 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B4A28 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 022B4A2C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4A30 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4A30 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]);
|
|
/* 022B4A34 */ Gambit_fn_02A63BE8(cpu);
|
|
/* 022B4A38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B4A3C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4A3C */ _t35 = _t34 & 0x00000001u;
|
|
/* 022B4A3C */ if (_t35) goto L_022B4AB4; else goto L_022B4A40;
|
|
L_022B4A40: ; // 0x22b4a40
|
|
/* 022B4A40 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4A40 */ cpu->r[7] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B4A44 */ cpu->r[7] = cpu->r[7] + 0x00000002u;
|
|
/* 022B4A48 */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4A48 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 022B4A4C */ _t38 = cpu->r[7] + 0x00000000u;
|
|
/* 022B4A4C */ cpu->r[8] = rbrew_read16(cpu->mem, _t38);
|
|
/* 022B4A50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x0000FFFFu);
|
|
/* 022B4A54 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4A54 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022B4A54 */ if (_t40) goto L_022B4AB4; else goto L_022B4A58;
|
|
L_022B4A58: ; // 0x22b4a58
|
|
/* 022B4A58 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000014u);
|
|
/* 022B4A5C */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4A5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B4A60 */ _t42 = cpu->r[30] + 0x00000000u;
|
|
/* 022B4A60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B4A64 */ cpu->r[0] = cpu->r[11] + cpu->r[8];
|
|
/* 022B4A68 */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4A68 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 022B4A6C */ _t44 = cpu->r[12] + 0x00000268u;
|
|
/* 022B4A6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B4A70 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B4A74 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B4A78 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B4A7C */ cpu->r[3] = cpu->r[29];
|
|
/* 022B4A80 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B4A84 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4A84 */ rbrew_write16(cpu->mem, _t45, (uint16_t)cpu->r[31]);
|
|
/* 022B4A88 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B4A8C */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022B4A90 */ _t47 = cpu->r[6] + 0x000037DCu;
|
|
/* 022B4A90 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022B4A94 */ cpu->r[6] = 0x00000003u;
|
|
/* 022B4A98 */ cpu->r[4] = 0x00000001u;
|
|
/* 022B4A9C */ _t48 = rbrew_rlwinm(cpu->r[6], 0x00000009u, 0x00000010u, 0x00000016u);
|
|
/* 022B4A9C */ _t49 = cpu->r[0] & 0xFFFF01FFu;
|
|
/* 022B4A9C */ cpu->r[0] = _t49 | _t48;
|
|
/* 022B4AA0 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B4AA4 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4AA4 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 022B4AA8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4AAC */ _t51 = cpu->r[1] + 0x0000000Bu;
|
|
/* 022B4AAC */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[6]);
|
|
/* 022B4AB0 */ Gambit_fn_025C6A80(cpu);
|
|
L_022B4AB4: ; // 0x22b4ab4
|
|
/* 022B4AB4 */ _t52 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4AB4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022B4AB8 */ _t53 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4AB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B4ABC */ _t54 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4ABC */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022B4AC0 */ cpu->lr = cpu->r[0];
|
|
/* 022B4AC4 */ _t55 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022B4AC8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B4ACC */ return;
|
|
}
|
|
|
|
// fn_022B4AD0 @ 0x22b4ad0
|
|
void Gambit_fn_022B4AD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022B4AD0: ; // 0x22b4ad0
|
|
/* 022B4AD0 */ cpu->r[0] = cpu->lr;
|
|
/* 022B4AD4 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B4AD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4AD4 */ cpu->r[1] = _t0;
|
|
/* 022B4AD8 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4AD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B4ADC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B4AE0 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 022B4AE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B4AE4 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 022B4AE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B4AE8 */ Gambit_fn_022B3F70(cpu);
|
|
/* 022B4AEC */ _t4 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4AEC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B4AF0 */ _t5 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B4AF0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B4AF4 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4AF4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022B4AF8 */ _t7 = cpu->r[31] + 0x00000128u;
|
|
/* 022B4AF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B4AFC */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4AFC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[12]);
|
|
/* 022B4B00 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4B00 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 022B4B04 */ _t10 = cpu->r[31] + 0x00000140u;
|
|
/* 022B4B04 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B4B08 */ _t11 = cpu->r[31] + 0x00000120u;
|
|
/* 022B4B08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B4B0C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4B0C */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 022B4B10 */ _t13 = cpu->r[31] + 0x00000138u;
|
|
/* 022B4B10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B4B14 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4B14 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 022B4B18 */ _t15 = cpu->r[31] + 0x00000144u;
|
|
/* 022B4B18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B4B1C */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4B1C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 022B4B20 */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4B20 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 022B4B24 */ _t18 = cpu->r[31] + 0x00000130u;
|
|
/* 022B4B24 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B4B28 */ _t19 = cpu->r[31] + 0x00000124u;
|
|
/* 022B4B28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B4B2C */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4B2C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 022B4B30 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4B30 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 022B4B34 */ _t22 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B4B34 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B4B38 */ _t23 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B4B38 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B4B3C */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4B3C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 022B4B40 */ _t25 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4B40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B4B44 */ _t26 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4B44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B4B48 */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4B48 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[12]);
|
|
/* 022B4B4C */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4B4C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 022B4B50 */ _t29 = cpu->r[30] + 0x0000007Cu;
|
|
/* 022B4B50 */ cpu->r[0] = rbrew_read8(cpu->mem, _t29);
|
|
/* 022B4B54 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 022B4B58 */ cpu->r[4] = cpu->r[30] + 0x00000034u;
|
|
/* 022B4B5C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4B60 */ _t30 = cpu->r[30] + 0x0000007Cu;
|
|
/* 022B4B60 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]);
|
|
/* 022B4B64 */ Gambit_fn_02C69510(cpu);
|
|
/* 022B4B68 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B4B6C */ Gambit_fn_02980378(cpu);
|
|
/* 022B4B70 */ _t31 = cpu->r[31] + 0x00000120u;
|
|
/* 022B4B70 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B4B74 */ _t32 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B4B74 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B4B78 */ _t33 = cpu->r[31] + 0x00000294u;
|
|
/* 022B4B78 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 022B4B7C */ _t34 = cpu->r[31] + 0x00000130u;
|
|
/* 022B4B7C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B4B80 */ _t35 = cpu->r[31] + 0x00000138u;
|
|
/* 022B4B80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B4B84 */ _t36 = cpu->r[31] + 0x000002A8u;
|
|
/* 022B4B84 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[12]);
|
|
/* 022B4B88 */ _t37 = cpu->r[31] + 0x00000124u;
|
|
/* 022B4B88 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B4B8C */ _t38 = cpu->r[31] + 0x00000298u;
|
|
/* 022B4B8C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 022B4B90 */ _t39 = cpu->r[31] + 0x00000128u;
|
|
/* 022B4B90 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022B4B94 */ _t40 = cpu->r[31] + 0x000002A4u;
|
|
/* 022B4B94 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 022B4B98 */ _t41 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4B98 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B4B9C */ _t42 = cpu->r[31] + 0x00000144u;
|
|
/* 022B4B9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B4BA0 */ _t43 = cpu->r[31] + 0x0000029Cu;
|
|
/* 022B4BA0 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
/* 022B4BA4 */ _t44 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B4BA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B4BA8 */ _t45 = cpu->r[31] + 0x000002A0u;
|
|
/* 022B4BA8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 022B4BAC */ _t46 = cpu->r[31] + 0x000002ACu;
|
|
/* 022B4BAC */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 022B4BB0 */ _t47 = cpu->r[31] + 0x00000140u;
|
|
/* 022B4BB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022B4BB4 */ _t48 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4BB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022B4BB8 */ _t49 = cpu->r[31] + 0x00000290u;
|
|
/* 022B4BB8 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 022B4BBC */ cpu->r[3] = cpu->r[31] + 0x00000284u;
|
|
/* 022B4BC0 */ _t50 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B4BC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B4BC4 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4BC8 */ _t51 = cpu->r[31] + 0x000002B0u;
|
|
/* 022B4BC8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 022B4BCC */ _t52 = cpu->r[31] + 0x00000288u;
|
|
/* 022B4BCC */ rbrew_write_f32(cpu->mem, _t52, cpu->f[11]);
|
|
/* 022B4BD0 */ _t53 = cpu->r[31] + 0x0000028Cu;
|
|
/* 022B4BD0 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[12]);
|
|
/* 022B4BD4 */ cpu->r[4] = cpu->r[31] + 0x00000254u;
|
|
/* 022B4BD8 */ _t54 = cpu->r[31] + 0x00000284u;
|
|
/* 022B4BD8 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[13]);
|
|
/* 022B4BDC */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4BE0 */ cpu->r[3] = cpu->r[31] + 0x00000284u;
|
|
/* 022B4BE4 */ cpu->r[4] = cpu->r[31] + 0x000001F4u;
|
|
/* 022B4BE8 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4BEC */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4BF0 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B4BF4 */ _t55 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4BF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022B4BF8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B4BFC */ cpu->r[0] = cpu->r[0] + 0x00003AF4u;
|
|
/* 022B4C00 */ cpu->r[12] = cpu->r[12] + 0x00003814u;
|
|
/* 022B4C04 */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4C04 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
/* 022B4C08 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4C0C */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4C0C */ rbrew_write32(cpu->mem, _t57, cpu->r[12]);
|
|
/* 022B4C10 */ Gambit_fn_029807A8(cpu);
|
|
/* 022B4C14 */ _t58 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4C14 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 022B4C18 */ _t59 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4C18 */ rbrew_write32(cpu->mem, _t59, cpu->r[3]);
|
|
/* 022B4C1C */ cpu->r[5] = cpu->r[31] + 0x00000284u;
|
|
/* 022B4C20 */ _t60 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4C20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022B4C24 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B4C28 */ Gambit_fn_029808C4(cpu);
|
|
/* 022B4C2C */ _t61 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4C2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022B4C30 */ Gambit_fn_02980318(cpu);
|
|
/* 022B4C34 */ _t62 = cpu->r[1] + 0x00000054u;
|
|
/* 022B4C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B4C38 */ _t63 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4C38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B4C3C */ cpu->lr = cpu->r[0];
|
|
/* 022B4C40 */ _t64 = cpu->r[1] + 0x00000048u;
|
|
/* 022B4C40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022B4C44 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B4C48 */ return;
|
|
}
|
|
|
|
// fn_022B4AD4 @ 0x22b4ad4
|
|
void Gambit_fn_022B4AD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022B4AD4: ; // 0x22b4ad4
|
|
/* 022B4AD4 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B4AD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4AD4 */ cpu->r[1] = _t0;
|
|
/* 022B4AD8 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4AD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B4ADC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B4AE0 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 022B4AE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B4AE4 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 022B4AE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B4AE8 */ Gambit_fn_022B3F70(cpu);
|
|
/* 022B4AEC */ _t4 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4AEC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B4AF0 */ _t5 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B4AF0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B4AF4 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4AF4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022B4AF8 */ _t7 = cpu->r[31] + 0x00000128u;
|
|
/* 022B4AF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B4AFC */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4AFC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[12]);
|
|
/* 022B4B00 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4B00 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 022B4B04 */ _t10 = cpu->r[31] + 0x00000140u;
|
|
/* 022B4B04 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B4B08 */ _t11 = cpu->r[31] + 0x00000120u;
|
|
/* 022B4B08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B4B0C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4B0C */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 022B4B10 */ _t13 = cpu->r[31] + 0x00000138u;
|
|
/* 022B4B10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B4B14 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4B14 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 022B4B18 */ _t15 = cpu->r[31] + 0x00000144u;
|
|
/* 022B4B18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B4B1C */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4B1C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 022B4B20 */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4B20 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 022B4B24 */ _t18 = cpu->r[31] + 0x00000130u;
|
|
/* 022B4B24 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B4B28 */ _t19 = cpu->r[31] + 0x00000124u;
|
|
/* 022B4B28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B4B2C */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4B2C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 022B4B30 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4B30 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 022B4B34 */ _t22 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B4B34 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B4B38 */ _t23 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B4B38 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B4B3C */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4B3C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 022B4B40 */ _t25 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4B40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B4B44 */ _t26 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4B44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B4B48 */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4B48 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[12]);
|
|
/* 022B4B4C */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4B4C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 022B4B50 */ _t29 = cpu->r[30] + 0x0000007Cu;
|
|
/* 022B4B50 */ cpu->r[0] = rbrew_read8(cpu->mem, _t29);
|
|
/* 022B4B54 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 022B4B58 */ cpu->r[4] = cpu->r[30] + 0x00000034u;
|
|
/* 022B4B5C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4B60 */ _t30 = cpu->r[30] + 0x0000007Cu;
|
|
/* 022B4B60 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]);
|
|
/* 022B4B64 */ Gambit_fn_02C69510(cpu);
|
|
/* 022B4B68 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B4B6C */ Gambit_fn_02980378(cpu);
|
|
/* 022B4B70 */ _t31 = cpu->r[31] + 0x00000120u;
|
|
/* 022B4B70 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B4B74 */ _t32 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B4B74 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B4B78 */ _t33 = cpu->r[31] + 0x00000294u;
|
|
/* 022B4B78 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 022B4B7C */ _t34 = cpu->r[31] + 0x00000130u;
|
|
/* 022B4B7C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B4B80 */ _t35 = cpu->r[31] + 0x00000138u;
|
|
/* 022B4B80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B4B84 */ _t36 = cpu->r[31] + 0x000002A8u;
|
|
/* 022B4B84 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[12]);
|
|
/* 022B4B88 */ _t37 = cpu->r[31] + 0x00000124u;
|
|
/* 022B4B88 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B4B8C */ _t38 = cpu->r[31] + 0x00000298u;
|
|
/* 022B4B8C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 022B4B90 */ _t39 = cpu->r[31] + 0x00000128u;
|
|
/* 022B4B90 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022B4B94 */ _t40 = cpu->r[31] + 0x000002A4u;
|
|
/* 022B4B94 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 022B4B98 */ _t41 = cpu->r[31] + 0x00000134u;
|
|
/* 022B4B98 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B4B9C */ _t42 = cpu->r[31] + 0x00000144u;
|
|
/* 022B4B9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B4BA0 */ _t43 = cpu->r[31] + 0x0000029Cu;
|
|
/* 022B4BA0 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
/* 022B4BA4 */ _t44 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B4BA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B4BA8 */ _t45 = cpu->r[31] + 0x000002A0u;
|
|
/* 022B4BA8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 022B4BAC */ _t46 = cpu->r[31] + 0x000002ACu;
|
|
/* 022B4BAC */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 022B4BB0 */ _t47 = cpu->r[31] + 0x00000140u;
|
|
/* 022B4BB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022B4BB4 */ _t48 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4BB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022B4BB8 */ _t49 = cpu->r[31] + 0x00000290u;
|
|
/* 022B4BB8 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 022B4BBC */ cpu->r[3] = cpu->r[31] + 0x00000284u;
|
|
/* 022B4BC0 */ _t50 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B4BC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B4BC4 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4BC8 */ _t51 = cpu->r[31] + 0x000002B0u;
|
|
/* 022B4BC8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 022B4BCC */ _t52 = cpu->r[31] + 0x00000288u;
|
|
/* 022B4BCC */ rbrew_write_f32(cpu->mem, _t52, cpu->f[11]);
|
|
/* 022B4BD0 */ _t53 = cpu->r[31] + 0x0000028Cu;
|
|
/* 022B4BD0 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[12]);
|
|
/* 022B4BD4 */ cpu->r[4] = cpu->r[31] + 0x00000254u;
|
|
/* 022B4BD8 */ _t54 = cpu->r[31] + 0x00000284u;
|
|
/* 022B4BD8 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[13]);
|
|
/* 022B4BDC */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4BE0 */ cpu->r[3] = cpu->r[31] + 0x00000284u;
|
|
/* 022B4BE4 */ cpu->r[4] = cpu->r[31] + 0x000001F4u;
|
|
/* 022B4BE8 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4BEC */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4BF0 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B4BF4 */ _t55 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4BF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022B4BF8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B4BFC */ cpu->r[0] = cpu->r[0] + 0x00003AF4u;
|
|
/* 022B4C00 */ cpu->r[12] = cpu->r[12] + 0x00003814u;
|
|
/* 022B4C04 */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4C04 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
/* 022B4C08 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4C0C */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4C0C */ rbrew_write32(cpu->mem, _t57, cpu->r[12]);
|
|
/* 022B4C10 */ Gambit_fn_029807A8(cpu);
|
|
/* 022B4C14 */ _t58 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4C14 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 022B4C18 */ _t59 = cpu->r[1] + 0x00000044u;
|
|
/* 022B4C18 */ rbrew_write32(cpu->mem, _t59, cpu->r[3]);
|
|
/* 022B4C1C */ cpu->r[5] = cpu->r[31] + 0x00000284u;
|
|
/* 022B4C20 */ _t60 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4C20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022B4C24 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B4C28 */ Gambit_fn_029808C4(cpu);
|
|
/* 022B4C2C */ _t61 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4C2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022B4C30 */ Gambit_fn_02980318(cpu);
|
|
/* 022B4C34 */ _t62 = cpu->r[1] + 0x00000054u;
|
|
/* 022B4C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B4C38 */ _t63 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B4C38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B4C3C */ cpu->lr = cpu->r[0];
|
|
/* 022B4C40 */ _t64 = cpu->r[1] + 0x00000048u;
|
|
/* 022B4C40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022B4C44 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B4C48 */ return;
|
|
}
|
|
|
|
// fn_022B4C4C @ 0x22b4c4c
|
|
void Gambit_fn_022B4C4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67;
|
|
|
|
L_022B4C4C: ; // 0x22b4c4c
|
|
/* 022B4C4C */ _t0 = cpu->r[1] + 0xFFFFFEB0u;
|
|
/* 022B4C4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4C4C */ cpu->r[1] = _t0;
|
|
/* 022B4C50 */ /* nop */
|
|
/* 022B4C54 */ cpu->r[0] = cpu->lr;
|
|
/* 022B4C58 */ _t1 = cpu->r[1] + 0x00000154u;
|
|
/* 022B4C58 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B4C5C */ cpu->r[29] = cpu->r[3];
|
|
/* 022B4C60 */ cpu->r[30] = cpu->r[4];
|
|
/* 022B4C64 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 022B4C64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B4C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000006u);
|
|
/* 022B4C6C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4C6C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B4C6C */ if (_t4) goto L_022B4C70; else goto L_022B4EC0;
|
|
L_022B4C70: ; // 0x22b4c70
|
|
/* 022B4C70 */ cpu->r[3] = cpu->r[1] + 0x000000BCu;
|
|
/* 022B4C74 */ Gambit_fn_0281E19C(cpu);
|
|
/* 022B4C78 */ cpu->r[12] = 0x00000001u;
|
|
/* 022B4C7C */ cpu->r[0] = 0x00000000u;
|
|
/* 022B4C80 */ _t5 = cpu->r[1] + 0x000000BCu;
|
|
/* 022B4C80 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 022B4C84 */ cpu->r[3] = cpu->r[1] + 0x000000BCu;
|
|
/* 022B4C88 */ _t6 = cpu->r[1] + 0x000000BDu;
|
|
/* 022B4C88 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[0]);
|
|
/* 022B4C8C */ Gambit_fn_0281E2C8(cpu);
|
|
/* 022B4C90 */ _t7 = cpu->r[29] + 0x00000134u;
|
|
/* 022B4C90 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B4C94 */ _t8 = cpu->r[29] + 0x00000128u;
|
|
/* 022B4C94 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B4C98 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4C98 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 022B4C9C */ _t10 = cpu->r[29] + 0x0000012Cu;
|
|
/* 022B4C9C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B4CA0 */ _t11 = cpu->r[29] + 0x0000011Cu;
|
|
/* 022B4CA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B4CA4 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4CA4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[13]);
|
|
/* 022B4CA8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4CA8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 022B4CAC */ _t14 = cpu->r[29] + 0x00000120u;
|
|
/* 022B4CAC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B4CB0 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4CB0 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022B4CB4 */ _t16 = cpu->r[29] + 0x00000144u;
|
|
/* 022B4CB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B4CB8 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4CB8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 022B4CBC */ _t18 = cpu->r[29] + 0x00000140u;
|
|
/* 022B4CBC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B4CC0 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4CC0 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022B4CC4 */ _t20 = cpu->r[29] + 0x00000130u;
|
|
/* 022B4CC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B4CC8 */ _t21 = cpu->r[29] + 0x00000138u;
|
|
/* 022B4CC8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B4CCC */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4CCC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 022B4CD0 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4CD0 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 022B4CD4 */ cpu->r[28] = 0x101F0000u;
|
|
/* 022B4CD8 */ _t24 = cpu->r[29] + 0x00000124u;
|
|
/* 022B4CD8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B4CDC */ cpu->r[4] = cpu->r[28] + 0x00006368u;
|
|
/* 022B4CE0 */ _t25 = cpu->r[29] + 0x00000148u;
|
|
/* 022B4CE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B4CE4 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 022B4CE8 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4CE8 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 022B4CEC */ cpu->r[31] = 0x101E0000u;
|
|
/* 022B4CF0 */ cpu->r[27] = 0x101F0000u;
|
|
/* 022B4CF4 */ _t27 = cpu->r[29] + 0x0000013Cu;
|
|
/* 022B4CF4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B4CF8 */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4CF8 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 022B4CFC */ cpu->r[31] = cpu->r[31] + 0x00003A84u;
|
|
/* 022B4D00 */ _t29 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4D00 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 022B4D04 */ cpu->r[6] = cpu->r[31];
|
|
/* 022B4D08 */ cpu->r[5] = cpu->r[27] + 0x00006338u;
|
|
/* 022B4D0C */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4D0C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 022B4D10 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B4D14 */ cpu->r[26] = 0x101E0000u;
|
|
/* 022B4D18 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 022B4D1C */ cpu->r[26] = cpu->r[26] + 0x00003A90u;
|
|
/* 022B4D20 */ cpu->r[4] = cpu->r[28] + 0x00006368u;
|
|
/* 022B4D24 */ cpu->r[5] = cpu->r[27] + 0x00006338u;
|
|
/* 022B4D28 */ cpu->r[6] = cpu->r[26];
|
|
/* 022B4D2C */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B4D30 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B4D34 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4D38 */ cpu->r[5] = cpu->r[4];
|
|
/* 022B4D3C */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4D40 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4D44 */ cpu->r[4] = cpu->r[29] + 0x00000254u;
|
|
/* 022B4D48 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4D4C */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4D50 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4D54 */ cpu->r[4] = cpu->r[29] + 0x000001F4u;
|
|
/* 022B4D58 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4D5C */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4D60 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 022B4D64 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4D68 */ cpu->r[5] = cpu->r[4];
|
|
/* 022B4D6C */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4D70 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B4D74 */ cpu->r[3] = cpu->r[1] + 0x00000098u;
|
|
/* 022B4D78 */ Gambit_fn_0200D450(cpu);
|
|
/* 022B4D7C */ cpu->r[3] = cpu->r[1] + 0x000000A4u;
|
|
/* 022B4D80 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 022B4D84 */ Gambit_fn_0200D450(cpu);
|
|
/* 022B4D88 */ _t31 = cpu->r[29] + 0x0000011Cu;
|
|
/* 022B4D88 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B4D8C */ _t32 = cpu->r[29] + 0x00000134u;
|
|
/* 022B4D8C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B4D90 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4D90 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 022B4D94 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4D94 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 022B4D98 */ _t35 = cpu->r[29] + 0x00000120u;
|
|
/* 022B4D98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B4D9C */ _t36 = cpu->r[29] + 0x00000128u;
|
|
/* 022B4D9C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B4DA0 */ _t37 = cpu->r[29] + 0x00000138u;
|
|
/* 022B4DA0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B4DA4 */ _t38 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4DA4 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 022B4DA8 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B4DA8 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 022B4DAC */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 022B4DAC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022B4DB0 */ _t41 = cpu->r[29] + 0x00000140u;
|
|
/* 022B4DB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B4DB4 */ _t42 = cpu->r[29] + 0x0000012Cu;
|
|
/* 022B4DB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B4DB8 */ _t43 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4DB8 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
/* 022B4DBC */ cpu->f[12] = -cpu->f[12];
|
|
/* 022B4DC0 */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4DC0 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 022B4DC4 */ _t45 = cpu->r[29] + 0x00000124u;
|
|
/* 022B4DC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022B4DC8 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4DC8 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[11]);
|
|
/* 022B4DCC */ _t47 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4DCC */ rbrew_write_f32(cpu->mem, _t47, cpu->f[0]);
|
|
/* 022B4DD0 */ _t48 = cpu->r[29] + 0x00000130u;
|
|
/* 022B4DD0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022B4DD4 */ _t49 = cpu->r[29] + 0x00000144u;
|
|
/* 022B4DD4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B4DD8 */ _t50 = cpu->r[1] + 0x00000038u;
|
|
/* 022B4DD8 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
/* 022B4DDC */ _t51 = cpu->r[31] + 0x00000004u;
|
|
/* 022B4DDC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022B4DE0 */ _t52 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4DE0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[13]);
|
|
/* 022B4DE4 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4DE4 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[11]);
|
|
/* 022B4DE8 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4DE8 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 022B4DEC */ _t55 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4DEC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022B4DF0 */ _t56 = cpu->r[29] + 0x00000148u;
|
|
/* 022B4DF0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022B4DF4 */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4DF4 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 022B4DF8 */ cpu->r[4] = cpu->r[28] + 0x00006368u;
|
|
/* 022B4DFC */ _t58 = cpu->r[29] + 0x0000013Cu;
|
|
/* 022B4DFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B4E00 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 022B4E04 */ _t59 = cpu->r[1] + 0x00000040u;
|
|
/* 022B4E04 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[13]);
|
|
/* 022B4E08 */ cpu->r[5] = cpu->r[27] + 0x00006338u;
|
|
/* 022B4E0C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4E10 */ _t60 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4E10 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 022B4E14 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B4E18 */ _t61 = cpu->r[26] + 0x00000000u;
|
|
/* 022B4E18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022B4E1C */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 022B4E20 */ _t62 = cpu->r[26] + 0x00000008u;
|
|
/* 022B4E20 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022B4E24 */ cpu->f[0] = -cpu->f[0];
|
|
/* 022B4E28 */ _t63 = cpu->r[26] + 0x00000004u;
|
|
/* 022B4E28 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022B4E2C */ cpu->r[4] = cpu->r[28] + 0x00006368u;
|
|
/* 022B4E30 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4E30 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[13]);
|
|
/* 022B4E34 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022B4E38 */ _t65 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4E38 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 022B4E3C */ cpu->r[5] = cpu->r[27] + 0x00006338u;
|
|
/* 022B4E40 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4E40 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[12]);
|
|
/* 022B4E44 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 022B4E48 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 022B4E4C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022B4E50 */ cpu->r[5] = cpu->r[4];
|
|
/* 022B4E54 */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4E58 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022B4E5C */ cpu->r[4] = cpu->r[29] + 0x00000254u;
|
|
/* 022B4E60 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4E64 */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4E68 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022B4E6C */ cpu->r[4] = cpu->r[29] + 0x000001F4u;
|
|
/* 022B4E70 */ cpu->r[5] = cpu->r[3];
|
|
/* 022B4E74 */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4E78 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 022B4E7C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022B4E80 */ cpu->r[5] = cpu->r[4];
|
|
/* 022B4E84 */ Gambit_fn_02C69544(cpu);
|
|
/* 022B4E88 */ cpu->r[3] = cpu->r[1] + 0x000000A4u;
|
|
/* 022B4E8C */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 022B4E90 */ Gambit_fn_0200D450(cpu);
|
|
/* 022B4E94 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 022B4E98 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 022B4E9C */ Gambit_fn_0200D450(cpu);
|
|
/* 022B4EA0 */ cpu->r[3] = cpu->r[29] + 0x000002C8u;
|
|
/* 022B4EA4 */ cpu->r[4] = cpu->r[30];
|
|
/* 022B4EA8 */ Gambit_fn_027DF868(cpu);
|
|
/* 022B4EAC */ cpu->r[3] = cpu->r[29] + 0x00000328u;
|
|
/* 022B4EB0 */ cpu->r[4] = cpu->r[30];
|
|
/* 022B4EB4 */ Gambit_fn_027DF868(cpu);
|
|
/* 022B4EB8 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B4EBC */ Gambit_fn_02273140(cpu);
|
|
L_022B4EC0: ; // 0x22b4ec0
|
|
/* 022B4EC0 */ /* nop */
|
|
/* 022B4EC4 */ _t67 = cpu->r[1] + 0x00000154u;
|
|
/* 022B4EC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022B4EC8 */ cpu->lr = cpu->r[0];
|
|
/* 022B4ECC */ cpu->r[1] = cpu->r[1] + 0x00000150u;
|
|
/* 022B4ED0 */ return;
|
|
}
|
|
|
|
// fn_022B4ED4 @ 0x22b4ed4
|
|
void Gambit_fn_022B4ED4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_022B4ED4: ; // 0x22b4ed4
|
|
/* 022B4ED4 */ cpu->r[0] = cpu->lr;
|
|
/* 022B4ED8 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022B4ED8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4ED8 */ cpu->r[1] = _t0;
|
|
/* 022B4EDC */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4EDC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B4EE0 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4EE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B4EE4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B4EE8 */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4EE8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B4EEC */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B4EEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B4EF0 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B4EF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B4EF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B4EF8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B4EFC */ Gambit_fn_0261F774(cpu);
|
|
/* 022B4F00 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B4F04 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B4F08 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B4F0C */ _t6 = cpu->r[3] + 0x00000244u;
|
|
/* 022B4F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B4F10 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4F10 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022B4F14 */ _t8 = cpu->r[3] + 0x00000248u;
|
|
/* 022B4F14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B4F18 */ /* nop */
|
|
/* 022B4F1C */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4F1C */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022B4F20 */ _t10 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B4F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B4F24 */ /* nop */
|
|
/* 022B4F28 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4F28 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022B4F2C */ /* nop */
|
|
/* 022B4F30 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4F30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B4F34 */ /* nop */
|
|
/* 022B4F38 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4F38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B4F3C */ _t14 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4F3C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B4F40 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4F40 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 022B4F44 */ cpu->f[13] = cpu->f[13] - cpu->f[0];
|
|
/* 022B4F48 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4F48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B4F4C */ /* nop */
|
|
/* 022B4F50 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4F50 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 022B4F54 */ /* nop */
|
|
/* 022B4F58 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4F58 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 022B4F5C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B4F60 */ /* nop */
|
|
/* 022B4F64 */ /* nop */
|
|
/* 022B4F68 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4F68 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022B4F6C */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4F6C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B4F70 */ cpu->f[12] = cpu->f[0];
|
|
/* 022B4F74 */ _t22 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B4F74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B4F78 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B4F7C */ _t23 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B4F80 */ cpu->f[13] = fma(cpu->f[0], cpu->f[13], cpu->f[12]);
|
|
/* 022B4F84 */ _t24 = cpu->r[12] + 0x000037E8u;
|
|
/* 022B4F84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B4F88 */ cpu->lr = cpu->r[0];
|
|
/* 022B4F8C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B4F90 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4F90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B4F94 */ _t26 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4F94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B4F98 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022B4F9C */ /* nop */
|
|
/* 022B4FA0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[6], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B4FA4 */ return;
|
|
}
|
|
|
|
// fn_022B4ED8 @ 0x22b4ed8
|
|
void Gambit_fn_022B4ED8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_022B4ED8: ; // 0x22b4ed8
|
|
/* 022B4ED8 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022B4ED8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4ED8 */ cpu->r[1] = _t0;
|
|
/* 022B4EDC */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4EDC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B4EE0 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4EE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B4EE4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B4EE8 */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4EE8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B4EEC */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B4EEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B4EF0 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B4EF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B4EF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B4EF8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B4EFC */ Gambit_fn_0261F774(cpu);
|
|
/* 022B4F00 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B4F04 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B4F08 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B4F0C */ _t6 = cpu->r[3] + 0x00000244u;
|
|
/* 022B4F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B4F10 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4F10 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022B4F14 */ _t8 = cpu->r[3] + 0x00000248u;
|
|
/* 022B4F14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B4F18 */ /* nop */
|
|
/* 022B4F1C */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4F1C */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022B4F20 */ _t10 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B4F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B4F24 */ /* nop */
|
|
/* 022B4F28 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4F28 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022B4F2C */ /* nop */
|
|
/* 022B4F30 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4F30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B4F34 */ /* nop */
|
|
/* 022B4F38 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4F38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B4F3C */ _t14 = cpu->r[31] + 0x00000148u;
|
|
/* 022B4F3C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B4F40 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4F40 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 022B4F44 */ cpu->f[13] = cpu->f[13] - cpu->f[0];
|
|
/* 022B4F48 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4F48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B4F4C */ /* nop */
|
|
/* 022B4F50 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 022B4F50 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 022B4F54 */ /* nop */
|
|
/* 022B4F58 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4F58 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 022B4F5C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B4F60 */ /* nop */
|
|
/* 022B4F64 */ /* nop */
|
|
/* 022B4F68 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4F68 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022B4F6C */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 022B4F6C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B4F70 */ cpu->f[12] = cpu->f[0];
|
|
/* 022B4F74 */ _t22 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B4F74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B4F78 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B4F7C */ _t23 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B4F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B4F80 */ cpu->f[13] = fma(cpu->f[0], cpu->f[13], cpu->f[12]);
|
|
/* 022B4F84 */ _t24 = cpu->r[12] + 0x000037E8u;
|
|
/* 022B4F84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B4F88 */ cpu->lr = cpu->r[0];
|
|
/* 022B4F8C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B4F90 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 022B4F90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B4F94 */ _t26 = cpu->r[1] + 0x00000034u;
|
|
/* 022B4F94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B4F98 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022B4F9C */ /* nop */
|
|
/* 022B4FA0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[6], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B4FA4 */ return;
|
|
}
|
|
|
|
// fn_022B4FA8 @ 0x22b4fa8
|
|
void Gambit_fn_022B4FA8(CPUState* cpu) {
|
|
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_022B4FA8: ; // 0x22b4fa8
|
|
/* 022B4FA8 */ cpu->r[0] = cpu->lr;
|
|
/* 022B4FAC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B4FAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4FAC */ cpu->r[1] = _t0;
|
|
/* 022B4FB0 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4FB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B4FB4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4FB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B4FB8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B4FBC */ cpu->r[31] = cpu->r[4];
|
|
/* 022B4FC0 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4FC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B4FC4 */ Gambit_fn_022B4ED4(cpu);
|
|
/* 022B4FC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B4FCC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4FCC */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B4FCC */ if (_t5) goto L_022B4FD8; else goto L_022B4FD0;
|
|
L_022B4FD0: ; // 0x22b4fd0
|
|
/* 022B4FD0 */ cpu->r[7] = 0x0000003Cu;
|
|
/* 022B4FD4 */ _t6 = cpu->r[30] + 0x00000388u;
|
|
/* 022B4FD4 */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[7]);
|
|
L_022B4FD8: ; // 0x22b4fd8
|
|
/* 022B4FD8 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4FD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B4FDC */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 022B4FDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B4FE0 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4FE0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 022B4FE4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4FE4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 022B4FE8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022B4FE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B4FEC */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B4FEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B4FF0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4FF0 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 022B4FF4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B4FF8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4FF8 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022B4FFC */ Gambit_fn_022B4ED4(cpu);
|
|
/* 022B5000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B5004 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5004 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B5004 */ if (_t16) goto L_022B5008; else goto L_022B5014;
|
|
L_022B5008: ; // 0x22b5008
|
|
/* 022B5008 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B500C */ _t17 = cpu->r[8] + 0x000037E8u;
|
|
/* 022B500C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B5010 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5010 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
L_022B5014: ; // 0x22b5014
|
|
/* 022B5014 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B5018 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B501C */ Gambit_fn_0227251C(cpu);
|
|
/* 022B5020 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B5024 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5024 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B5028 */ cpu->lr = cpu->r[0];
|
|
/* 022B502C */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B502C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B5030 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B5034 */ return;
|
|
}
|
|
|
|
// fn_022B4FAC @ 0x22b4fac
|
|
void Gambit_fn_022B4FAC(CPUState* cpu) {
|
|
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_022B4FAC: ; // 0x22b4fac
|
|
/* 022B4FAC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B4FAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B4FAC */ cpu->r[1] = _t0;
|
|
/* 022B4FB0 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B4FB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B4FB4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 022B4FB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B4FB8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B4FBC */ cpu->r[31] = cpu->r[4];
|
|
/* 022B4FC0 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 022B4FC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B4FC4 */ Gambit_fn_022B4ED4(cpu);
|
|
/* 022B4FC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B4FCC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B4FCC */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B4FCC */ if (_t5) goto L_022B4FD8; else goto L_022B4FD0;
|
|
L_022B4FD0: ; // 0x22b4fd0
|
|
/* 022B4FD0 */ cpu->r[7] = 0x0000003Cu;
|
|
/* 022B4FD4 */ _t6 = cpu->r[30] + 0x00000388u;
|
|
/* 022B4FD4 */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[7]);
|
|
L_022B4FD8: ; // 0x22b4fd8
|
|
/* 022B4FD8 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 022B4FD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B4FDC */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 022B4FDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B4FE0 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022B4FE0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 022B4FE4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B4FE4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 022B4FE8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022B4FE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B4FEC */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B4FEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B4FF0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B4FF0 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 022B4FF4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B4FF8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022B4FF8 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022B4FFC */ Gambit_fn_022B4ED4(cpu);
|
|
/* 022B5000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B5004 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5004 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B5004 */ if (_t16) goto L_022B5008; else goto L_022B5014;
|
|
L_022B5008: ; // 0x22b5008
|
|
/* 022B5008 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B500C */ _t17 = cpu->r[8] + 0x000037E8u;
|
|
/* 022B500C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B5010 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5010 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
L_022B5014: ; // 0x22b5014
|
|
/* 022B5014 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B5018 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B501C */ Gambit_fn_0227251C(cpu);
|
|
/* 022B5020 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B5024 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5024 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B5028 */ cpu->lr = cpu->r[0];
|
|
/* 022B502C */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B502C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B5030 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B5034 */ return;
|
|
}
|
|
|
|
// fn_022B5038 @ 0x22b5038
|
|
void Gambit_fn_022B5038(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63;
|
|
|
|
L_022B5038: ; // 0x22b5038
|
|
/* 022B5038 */ cpu->r[0] = cpu->lr;
|
|
/* 022B503C */ cpu->r[12] = 0x00000003u;
|
|
/* 022B5040 */ cpu->ctr = cpu->r[12];
|
|
/* 022B5044 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B5048 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022B5048 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022B504C */ cpu->r[0] = 0x00000001u;
|
|
/* 022B5050 */ _t1 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 022B5050 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022B5050 */ cpu->r[1] = _t1;
|
|
/* 022B5054 */ _t2 = cpu->r[8] + 0x00003B08u;
|
|
/* 022B5054 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022B5058 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B505C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022B505C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 022B5060 */ _t4 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5060 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[8]);
|
|
/* 022B5064 */ cpu->r[10] = cpu->r[3] + 0x00000118u;
|
|
/* 022B5068 */ _t5 = cpu->r[1] + 0x00000040u;
|
|
/* 022B5068 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022B506C */ cpu->r[11] = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B5070 */ _t6 = cpu->r[1] + 0x00000050u;
|
|
/* 022B5070 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
L_022B5074: ; // 0x22b5074
|
|
/* 022B5074 */ _t7 = cpu->r[10] + 0x00000004u;
|
|
/* 022B5074 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B5078 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 022B5078 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022B507C */ _t9 = cpu->r[10] + 0x00000008u;
|
|
/* 022B507C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B5080 */ _t10 = cpu->r[11] + 0x00000008u;
|
|
/* 022B5080 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022B5084 */ _t11 = cpu->r[10] + 0x0000000Cu;
|
|
/* 022B5084 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B5088 */ _t12 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022B5088 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 022B508C */ _t13 = cpu->r[10] + 0x00000010u;
|
|
/* 022B508C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B508C */ cpu->r[10] = _t13;
|
|
/* 022B5090 */ _t14 = cpu->r[11] + 0x00000010u;
|
|
/* 022B5090 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 022B5090 */ cpu->r[11] = _t14;
|
|
/* 022B5094 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B5094 */ _t15 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B5094 */ _t16 = _t15 >> (0x00000002u & 31u);
|
|
/* 022B5094 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B5094 */ if (_t17) goto L_022B5074; else goto L_022B5098;
|
|
L_022B5098: ; // 0x22b5098
|
|
/* 022B5098 */ _t18 = cpu->r[3] + 0x00000140u;
|
|
/* 022B5098 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B509C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B50A0 */ _t19 = cpu->r[3] + 0x00000120u;
|
|
/* 022B50A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B50A4 */ _t20 = cpu->r[10] + 0x00003B0Cu;
|
|
/* 022B50A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B50A8 */ /* nop */
|
|
/* 022B50AC */ _t21 = cpu->r[3] + 0x0000011Cu;
|
|
/* 022B50AC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B50B0 */ _t22 = cpu->r[1] + 0x00000090u;
|
|
/* 022B50B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B50B4 */ _t23 = cpu->r[3] + 0x00000134u;
|
|
/* 022B50B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B50B8 */ /* nop */
|
|
/* 022B50BC */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 022B50BC */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 022B50C0 */ cpu->f[9] = cpu->f[10] * cpu->f[13];
|
|
/* 022B50C4 */ /* nop */
|
|
/* 022B50C8 */ _t25 = cpu->r[1] + 0x00000058u;
|
|
/* 022B50C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B50CC */ _t26 = cpu->r[3] + 0x00000138u;
|
|
/* 022B50CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B50D0 */ _t27 = cpu->r[1] + 0x00000060u;
|
|
/* 022B50D0 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[9]);
|
|
/* 022B50D4 */ _t28 = cpu->r[1] + 0x00000060u;
|
|
/* 022B50D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B50D8 */ _t29 = cpu->r[3] + 0x00000144u;
|
|
/* 022B50D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B50DC */ _t30 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B50DC */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 022B50E0 */ _t31 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B50E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B50E4 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B50E4 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 022B50E8 */ _t33 = cpu->r[3] + 0x00000128u;
|
|
/* 022B50E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B50EC */ _t34 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B50EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B50F0 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 022B50F0 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[10]);
|
|
/* 022B50F4 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 022B50F4 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[8]);
|
|
/* 022B50F8 */ _t37 = cpu->r[3] + 0x00000124u;
|
|
/* 022B50F8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B50FC */ cpu->f[12] = cpu->f[12] + cpu->f[13];
|
|
/* 022B5100 */ _t38 = cpu->r[3] + 0x00000148u;
|
|
/* 022B5100 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022B5104 */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 022B5104 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[8]);
|
|
/* 022B5108 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5108 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[11]);
|
|
/* 022B510C */ _t41 = cpu->r[3] + 0x0000013Cu;
|
|
/* 022B510C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B5110 */ _t42 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B5110 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[12]);
|
|
/* 022B5114 */ _t43 = cpu->r[1] + 0x00000038u;
|
|
/* 022B5114 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[11]);
|
|
/* 022B5118 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5118 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[6]);
|
|
/* 022B511C */ _t45 = cpu->r[3] + 0x0000012Cu;
|
|
/* 022B511C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022B5120 */ _t46 = cpu->r[3] + 0x00000130u;
|
|
/* 022B5120 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022B5124 */ _t47 = cpu->r[1] + 0x00000064u;
|
|
/* 022B5124 */ rbrew_write32(cpu->mem, _t47, cpu->r[11]);
|
|
/* 022B5128 */ _t48 = cpu->r[1] + 0x00000034u;
|
|
/* 022B5128 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[10]);
|
|
/* 022B512C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B5130 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5130 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[7]);
|
|
/* 022B5134 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B5138 */ _t50 = cpu->r[11] + 0x00003B14u;
|
|
/* 022B5138 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B513C */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B513C */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 022B5140 */ _t52 = cpu->r[1] + 0x00000048u;
|
|
/* 022B5140 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[11]);
|
|
/* 022B5144 */ _t53 = cpu->r[8] + 0x00003B10u;
|
|
/* 022B5144 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022B5148 */ _t54 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B5148 */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022B514C */ _t55 = cpu->r[1] + 0x00000044u;
|
|
/* 022B514C */ rbrew_write_f32(cpu->mem, _t55, cpu->f[12]);
|
|
/* 022B5150 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B5154 */ _t56 = cpu->r[1] + 0x00000068u;
|
|
/* 022B5154 */ rbrew_write32(cpu->mem, _t56, cpu->r[12]);
|
|
/* 022B5158 */ _t57 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B5158 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[9]);
|
|
/* 022B515C */ _t58 = cpu->r[3] + 0x00000184u;
|
|
/* 022B515C */ cpu->r[9] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022B5160 */ _t59 = cpu->r[7] + 0x00003A7Cu;
|
|
/* 022B5160 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022B5164 */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5164 */ rbrew_write32(cpu->mem, _t60, cpu->r[9]);
|
|
/* 022B5168 */ _t61 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B5168 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[10]);
|
|
/* 022B516C */ Gambit_fn_02273140(cpu);
|
|
/* 022B5170 */ _t62 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5170 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[3]);
|
|
/* 022B5174 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B5178 */ Gambit_fn_022B85AC(cpu);
|
|
/* 022B517C */ _t63 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B517C */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B5180 */ cpu->r[7] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 022B5184 */ cpu->lr = cpu->r[0];
|
|
/* 022B5188 */ cpu->r[3] = cpu->r[3] - cpu->r[7];
|
|
/* 022B518C */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 022B5190 */ return;
|
|
}
|
|
|
|
// fn_022B5050 @ 0x22b5050
|
|
void Gambit_fn_022B5050(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62;
|
|
|
|
L_022B5050: ; // 0x22b5050
|
|
/* 022B5050 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 022B5050 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B5050 */ cpu->r[1] = _t0;
|
|
/* 022B5054 */ _t1 = cpu->r[8] + 0x00003B08u;
|
|
/* 022B5054 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022B5058 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B505C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022B505C */ rbrew_write8(cpu->mem, _t2, (uint8_t)cpu->r[0]);
|
|
/* 022B5060 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5060 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[8]);
|
|
/* 022B5064 */ cpu->r[10] = cpu->r[3] + 0x00000118u;
|
|
/* 022B5068 */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 022B5068 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 022B506C */ cpu->r[11] = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B5070 */ _t5 = cpu->r[1] + 0x00000050u;
|
|
/* 022B5070 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
L_022B5074: ; // 0x22b5074
|
|
/* 022B5074 */ _t6 = cpu->r[10] + 0x00000004u;
|
|
/* 022B5074 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B5078 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 022B5078 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 022B507C */ _t8 = cpu->r[10] + 0x00000008u;
|
|
/* 022B507C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B5080 */ _t9 = cpu->r[11] + 0x00000008u;
|
|
/* 022B5080 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022B5084 */ _t10 = cpu->r[10] + 0x0000000Cu;
|
|
/* 022B5084 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B5088 */ _t11 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022B5088 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 022B508C */ _t12 = cpu->r[10] + 0x00000010u;
|
|
/* 022B508C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B508C */ cpu->r[10] = _t12;
|
|
/* 022B5090 */ _t13 = cpu->r[11] + 0x00000010u;
|
|
/* 022B5090 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 022B5090 */ cpu->r[11] = _t13;
|
|
/* 022B5094 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B5094 */ _t14 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B5094 */ _t15 = _t14 >> (0x00000002u & 31u);
|
|
/* 022B5094 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B5094 */ if (_t16) goto L_022B5074; else goto L_022B5098;
|
|
L_022B5098: ; // 0x22b5098
|
|
/* 022B5098 */ _t17 = cpu->r[3] + 0x00000140u;
|
|
/* 022B5098 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B509C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B50A0 */ _t18 = cpu->r[3] + 0x00000120u;
|
|
/* 022B50A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B50A4 */ _t19 = cpu->r[10] + 0x00003B0Cu;
|
|
/* 022B50A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B50A8 */ /* nop */
|
|
/* 022B50AC */ _t20 = cpu->r[3] + 0x0000011Cu;
|
|
/* 022B50AC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B50B0 */ _t21 = cpu->r[1] + 0x00000090u;
|
|
/* 022B50B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B50B4 */ _t22 = cpu->r[3] + 0x00000134u;
|
|
/* 022B50B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B50B8 */ /* nop */
|
|
/* 022B50BC */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022B50BC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 022B50C0 */ cpu->f[9] = cpu->f[10] * cpu->f[13];
|
|
/* 022B50C4 */ /* nop */
|
|
/* 022B50C8 */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 022B50C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B50CC */ _t25 = cpu->r[3] + 0x00000138u;
|
|
/* 022B50CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B50D0 */ _t26 = cpu->r[1] + 0x00000060u;
|
|
/* 022B50D0 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[9]);
|
|
/* 022B50D4 */ _t27 = cpu->r[1] + 0x00000060u;
|
|
/* 022B50D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B50D8 */ _t28 = cpu->r[3] + 0x00000144u;
|
|
/* 022B50D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B50DC */ _t29 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B50DC */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 022B50E0 */ _t30 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B50E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B50E4 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B50E4 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 022B50E8 */ _t32 = cpu->r[3] + 0x00000128u;
|
|
/* 022B50E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B50EC */ _t33 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B50EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B50F0 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 022B50F0 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[10]);
|
|
/* 022B50F4 */ _t35 = cpu->r[1] + 0x00000028u;
|
|
/* 022B50F4 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[8]);
|
|
/* 022B50F8 */ _t36 = cpu->r[3] + 0x00000124u;
|
|
/* 022B50F8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B50FC */ cpu->f[12] = cpu->f[12] + cpu->f[13];
|
|
/* 022B5100 */ _t37 = cpu->r[3] + 0x00000148u;
|
|
/* 022B5100 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B5104 */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 022B5104 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[8]);
|
|
/* 022B5108 */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5108 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
/* 022B510C */ _t40 = cpu->r[3] + 0x0000013Cu;
|
|
/* 022B510C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022B5110 */ _t41 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B5110 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[12]);
|
|
/* 022B5114 */ _t42 = cpu->r[1] + 0x00000038u;
|
|
/* 022B5114 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[11]);
|
|
/* 022B5118 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5118 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[6]);
|
|
/* 022B511C */ _t44 = cpu->r[3] + 0x0000012Cu;
|
|
/* 022B511C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B5120 */ _t45 = cpu->r[3] + 0x00000130u;
|
|
/* 022B5120 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022B5124 */ _t46 = cpu->r[1] + 0x00000064u;
|
|
/* 022B5124 */ rbrew_write32(cpu->mem, _t46, cpu->r[11]);
|
|
/* 022B5128 */ _t47 = cpu->r[1] + 0x00000034u;
|
|
/* 022B5128 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[10]);
|
|
/* 022B512C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B5130 */ _t48 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5130 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[7]);
|
|
/* 022B5134 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B5138 */ _t49 = cpu->r[11] + 0x00003B14u;
|
|
/* 022B5138 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B513C */ _t50 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B513C */ rbrew_write_f32(cpu->mem, _t50, cpu->f[0]);
|
|
/* 022B5140 */ _t51 = cpu->r[1] + 0x00000048u;
|
|
/* 022B5140 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 022B5144 */ _t52 = cpu->r[8] + 0x00003B10u;
|
|
/* 022B5144 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022B5148 */ _t53 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B5148 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B514C */ _t54 = cpu->r[1] + 0x00000044u;
|
|
/* 022B514C */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 022B5150 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B5154 */ _t55 = cpu->r[1] + 0x00000068u;
|
|
/* 022B5154 */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
/* 022B5158 */ _t56 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B5158 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[9]);
|
|
/* 022B515C */ _t57 = cpu->r[3] + 0x00000184u;
|
|
/* 022B515C */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022B5160 */ _t58 = cpu->r[7] + 0x00003A7Cu;
|
|
/* 022B5160 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B5164 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5164 */ rbrew_write32(cpu->mem, _t59, cpu->r[9]);
|
|
/* 022B5168 */ _t60 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B5168 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[10]);
|
|
/* 022B516C */ Gambit_fn_02273140(cpu);
|
|
/* 022B5170 */ _t61 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5170 */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[3]);
|
|
/* 022B5174 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B5178 */ Gambit_fn_022B85AC(cpu);
|
|
/* 022B517C */ _t62 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B517C */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B5180 */ cpu->r[7] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 022B5184 */ cpu->lr = cpu->r[0];
|
|
/* 022B5188 */ cpu->r[3] = cpu->r[3] - cpu->r[7];
|
|
/* 022B518C */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 022B5190 */ return;
|
|
}
|
|
|
|
// fn_022B5194 @ 0x22b5194
|
|
void Gambit_fn_022B5194(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94;
|
|
double _ft25, _ft26;
|
|
|
|
L_022B5194: ; // 0x22b5194
|
|
/* 022B5194 */ cpu->r[0] = cpu->lr;
|
|
/* 022B5198 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 022B5198 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B5198 */ cpu->r[1] = _t0;
|
|
/* 022B519C */ _t1 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B519C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B51A0 */ /* nop */
|
|
/* 022B51A4 */ _t2 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B51A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B51A8 */ _t3 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B51A8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022B51AC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B51B0 */ _t4 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B51B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B51B4 */ _t5 = cpu->r[4] + 0x00000008u;
|
|
/* 022B51B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B51B8 */ _t6 = cpu->r[31] + 0x00000148u;
|
|
/* 022B51B8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B51BC */ /* nop */
|
|
/* 022B51C0 */ cpu->f[9] = cpu->f[10] - cpu->f[11];
|
|
/* 022B51C4 */ /* nop */
|
|
/* 022B51C8 */ /* nop */
|
|
/* 022B51CC */ /* nop */
|
|
/* 022B51D0 */ _t7 = cpu->r[1] + 0x00000084u;
|
|
/* 022B51D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B51D4 */ _t8 = cpu->r[1] + 0x00000090u;
|
|
/* 022B51D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 022B51D8 */ _t9 = cpu->r[1] + 0x00000090u;
|
|
/* 022B51D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B51DC */ _t10 = cpu->r[1] + 0x00000080u;
|
|
/* 022B51DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B51E0 */ cpu->f[11] = cpu->f[0] * cpu->f[0];
|
|
/* 022B51E4 */ _t11 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B51E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 022B51E8 */ _t12 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B51E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B51EC */ _t13 = cpu->r[1] + 0x00000088u;
|
|
/* 022B51EC */ rbrew_write_f32(cpu->mem, _t13, cpu->f[9]);
|
|
/* 022B51F0 */ _t14 = cpu->r[1] + 0x00000088u;
|
|
/* 022B51F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B51F4 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 022B51F8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B51FC */ _t15 = cpu->r[1] + 0x00000094u;
|
|
/* 022B51FC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022B5200 */ _t16 = cpu->r[1] + 0x00000094u;
|
|
/* 022B5200 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B5204 */ _t17 = cpu->r[12] + 0x000037E8u;
|
|
/* 022B5204 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B5208 */ cpu->f[8] = fma(cpu->f[12], cpu->f[12], cpu->f[9]);
|
|
/* 022B520C */ _t18 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B520C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 022B5210 */ _t19 = cpu->r[1] + 0x00000068u;
|
|
/* 022B5210 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[10]);
|
|
/* 022B5214 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 022B5218 */ _t20 = cpu->r[1] + 0x00000070u;
|
|
/* 022B5218 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 022B521C */ cpu->f[31] = cpu->f[1];
|
|
/* 022B5220 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B5220 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022B5220 */ if (_t22) goto L_022B5224; else goto L_022B5260;
|
|
L_022B5224: ; // 0x22b5224
|
|
/* 022B5224 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B5228 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B522C */ _t23 = cpu->r[11] + 0x000037ECu;
|
|
/* 022B522C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B5230 */ _t24 = cpu->r[9] + 0x000037E4u;
|
|
/* 022B5230 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B5234 */ _ft25 = sqrt(cpu->f[8]);
|
|
/* 022B5234 */ _ft26 = (double)(int32_t)0x00000001u;
|
|
/* 022B5234 */ cpu->f[10] = _ft26 / _ft25;
|
|
/* 022B5238 */ cpu->f[9] = cpu->f[10] * cpu->f[10];
|
|
/* 022B523C */ cpu->f[11] = cpu->f[10] * cpu->f[12];
|
|
/* 022B5240 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[8], -(cpu->f[0]));
|
|
/* 022B5244 */ cpu->f[10] = cpu->f[9] * cpu->f[11];
|
|
/* 022B5248 */ _t27 = cpu->r[1] + 0x00000070u;
|
|
/* 022B5248 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B524C */ /* nop */
|
|
/* 022B5250 */ cpu->f[13] = cpu->f[13] * cpu->f[10];
|
|
/* 022B5254 */ /* nop */
|
|
/* 022B5258 */ _t28 = cpu->r[1] + 0x00000070u;
|
|
/* 022B5258 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 022B525C */ /* nop */
|
|
L_022B5260: ; // 0x22b5260
|
|
/* 022B5260 */ _t29 = cpu->r[5] + 0x00000008u;
|
|
/* 022B5260 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B5264 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B5268 */ _t30 = cpu->r[5] + 0x00000004u;
|
|
/* 022B5268 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B526C */ _t31 = cpu->r[5] + 0x00000000u;
|
|
/* 022B526C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B5270 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 022B5274 */ _t32 = cpu->r[1] + 0x00000064u;
|
|
/* 022B5274 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[10]);
|
|
/* 022B5278 */ cpu->r[4] = cpu->r[4] + 0x00003B18u;
|
|
/* 022B527C */ _t33 = cpu->r[1] + 0x00000060u;
|
|
/* 022B527C */ rbrew_write_f32(cpu->mem, _t33, cpu->f[9]);
|
|
/* 022B5280 */ cpu->r[5] = 0x00000171u;
|
|
/* 022B5284 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B5284 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 022B5288 */ Gambit_fn_0204D380(cpu);
|
|
/* 022B528C */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B528C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B5290 */ _t36 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5290 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B5294 */ _t37 = cpu->r[1] + 0x00000050u;
|
|
/* 022B5294 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B5298 */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 022B5298 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 022B529C */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B529C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
/* 022B52A0 */ _t40 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B52A0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022B52A4 */ _t41 = cpu->r[1] + 0x00000058u;
|
|
/* 022B52A4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B52A8 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 022B52A8 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[10]);
|
|
/* 022B52AC */ _t43 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B52AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022B52B0 */ _t44 = cpu->r[1] + 0x00000064u;
|
|
/* 022B52B0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B52B4 */ _t45 = cpu->r[1] + 0x00000040u;
|
|
/* 022B52B4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 022B52B8 */ _t46 = cpu->r[1] + 0x00000068u;
|
|
/* 022B52B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022B52BC */ _t47 = cpu->r[1] + 0x00000048u;
|
|
/* 022B52BC */ rbrew_write_f32(cpu->mem, _t47, cpu->f[7]);
|
|
/* 022B52C0 */ _t48 = cpu->r[1] + 0x00000034u;
|
|
/* 022B52C0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022B52C4 */ _t49 = cpu->r[1] + 0x00000070u;
|
|
/* 022B52C4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B52C8 */ _t50 = cpu->r[31] + 0x00000120u;
|
|
/* 022B52C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B52CC */ _t51 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B52CC */ rbrew_write_f32(cpu->mem, _t51, cpu->f[8]);
|
|
/* 022B52D0 */ _t52 = cpu->r[1] + 0x00000030u;
|
|
/* 022B52D0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[12]);
|
|
/* 022B52D4 */ _t53 = cpu->r[1] + 0x00000060u;
|
|
/* 022B52D4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022B52D8 */ _t54 = cpu->r[31] + 0x00000134u;
|
|
/* 022B52D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022B52DC */ _t55 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B52DC */ rbrew_write_f32(cpu->mem, _t55, cpu->f[12]);
|
|
/* 022B52E0 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 022B52E0 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[13]);
|
|
/* 022B52E4 */ _t57 = cpu->r[1] + 0x00000044u;
|
|
/* 022B52E4 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[9]);
|
|
/* 022B52E8 */ _t58 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B52E8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B52EC */ _t59 = cpu->r[31] + 0x00000130u;
|
|
/* 022B52EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022B52F0 */ _t60 = cpu->r[31] + 0x00000138u;
|
|
/* 022B52F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022B52F4 */ _t61 = cpu->r[1] + 0x00000024u;
|
|
/* 022B52F4 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[13]);
|
|
/* 022B52F8 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B52F8 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[10]);
|
|
/* 022B52FC */ _t63 = cpu->r[31] + 0x00000128u;
|
|
/* 022B52FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022B5300 */ _t64 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5300 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 022B5304 */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5304 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 022B5308 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5308 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[9]);
|
|
/* 022B530C */ cpu->f[1] = cpu->f[31];
|
|
/* 022B5310 */ _t67 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B5310 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022B5314 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B5318 */ _t68 = cpu->r[31] + 0x00000124u;
|
|
/* 022B5318 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022B531C */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5320 */ _t69 = cpu->r[1] + 0x00000028u;
|
|
/* 022B5320 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[9]);
|
|
/* 022B5324 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B5328 */ _t70 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5328 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[11]);
|
|
/* 022B532C */ Gambit_fn_02282B2C(cpu);
|
|
/* 022B5330 */ _t71 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5330 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022B5334 */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B5334 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 022B5338 */ _t73 = cpu->r[31] + 0x00000124u;
|
|
/* 022B5338 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[9]);
|
|
/* 022B533C */ _t74 = cpu->r[1] + 0x00000010u;
|
|
/* 022B533C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022B5340 */ _t75 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5340 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 022B5344 */ _t76 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5344 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022B5348 */ _t77 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B5348 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[13]);
|
|
/* 022B534C */ _t78 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B534C */ rbrew_write_f32(cpu->mem, _t78, cpu->f[10]);
|
|
/* 022B5350 */ _t79 = cpu->r[1] + 0x00000028u;
|
|
/* 022B5350 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022B5354 */ _t80 = cpu->r[31] + 0x00000134u;
|
|
/* 022B5354 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[9]);
|
|
/* 022B5358 */ _t81 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B5358 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[13]);
|
|
/* 022B535C */ _t82 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B535C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 022B5360 */ _t83 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5360 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 022B5364 */ _t84 = cpu->r[31] + 0x00000128u;
|
|
/* 022B5364 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[9]);
|
|
/* 022B5368 */ _t85 = cpu->r[31] + 0x00000130u;
|
|
/* 022B5368 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[12]);
|
|
/* 022B536C */ _t86 = cpu->r[1] + 0x00000014u;
|
|
/* 022B536C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 022B5370 */ _t87 = cpu->r[31] + 0x00000138u;
|
|
/* 022B5370 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[11]);
|
|
/* 022B5374 */ _t88 = cpu->r[31] + 0x00000120u;
|
|
/* 022B5374 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[0]);
|
|
/* 022B5378 */ _t89 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B5378 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022B537C */ _t90 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B537C */ cpu->r[31] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022B5380 */ _t91 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B5380 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 022B5384 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B5384 */ _t93 = _t92 & 0x00000001u;
|
|
/* 022B5384 */ if (_t93) goto L_022B5388; // else: addr-0 trap, fall-through
|
|
L_022B5388: ; // 0x22b5388
|
|
/* 022B5388 */ _t94 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B5388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 022B538C */ cpu->lr = cpu->r[0];
|
|
/* 022B5390 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 022B5394 */ return;
|
|
}
|
|
|
|
// fn_022B5198 @ 0x22b5198
|
|
void Gambit_fn_022B5198(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94;
|
|
double _ft25, _ft26;
|
|
|
|
L_022B5198: ; // 0x22b5198
|
|
/* 022B5198 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 022B5198 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B5198 */ cpu->r[1] = _t0;
|
|
/* 022B519C */ _t1 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B519C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B51A0 */ /* nop */
|
|
/* 022B51A4 */ _t2 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B51A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B51A8 */ _t3 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B51A8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022B51AC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B51B0 */ _t4 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B51B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B51B4 */ _t5 = cpu->r[4] + 0x00000008u;
|
|
/* 022B51B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B51B8 */ _t6 = cpu->r[31] + 0x00000148u;
|
|
/* 022B51B8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B51BC */ /* nop */
|
|
/* 022B51C0 */ cpu->f[9] = cpu->f[10] - cpu->f[11];
|
|
/* 022B51C4 */ /* nop */
|
|
/* 022B51C8 */ /* nop */
|
|
/* 022B51CC */ /* nop */
|
|
/* 022B51D0 */ _t7 = cpu->r[1] + 0x00000084u;
|
|
/* 022B51D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B51D4 */ _t8 = cpu->r[1] + 0x00000090u;
|
|
/* 022B51D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 022B51D8 */ _t9 = cpu->r[1] + 0x00000090u;
|
|
/* 022B51D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B51DC */ _t10 = cpu->r[1] + 0x00000080u;
|
|
/* 022B51DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B51E0 */ cpu->f[11] = cpu->f[0] * cpu->f[0];
|
|
/* 022B51E4 */ _t11 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B51E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 022B51E8 */ _t12 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B51E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B51EC */ _t13 = cpu->r[1] + 0x00000088u;
|
|
/* 022B51EC */ rbrew_write_f32(cpu->mem, _t13, cpu->f[9]);
|
|
/* 022B51F0 */ _t14 = cpu->r[1] + 0x00000088u;
|
|
/* 022B51F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B51F4 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 022B51F8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B51FC */ _t15 = cpu->r[1] + 0x00000094u;
|
|
/* 022B51FC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022B5200 */ _t16 = cpu->r[1] + 0x00000094u;
|
|
/* 022B5200 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B5204 */ _t17 = cpu->r[12] + 0x000037E8u;
|
|
/* 022B5204 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B5208 */ cpu->f[8] = fma(cpu->f[12], cpu->f[12], cpu->f[9]);
|
|
/* 022B520C */ _t18 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B520C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 022B5210 */ _t19 = cpu->r[1] + 0x00000068u;
|
|
/* 022B5210 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[10]);
|
|
/* 022B5214 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 022B5218 */ _t20 = cpu->r[1] + 0x00000070u;
|
|
/* 022B5218 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 022B521C */ cpu->f[31] = cpu->f[1];
|
|
/* 022B5220 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B5220 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022B5220 */ if (_t22) goto L_022B5224; else goto L_022B5260;
|
|
L_022B5224: ; // 0x22b5224
|
|
/* 022B5224 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B5228 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B522C */ _t23 = cpu->r[11] + 0x000037ECu;
|
|
/* 022B522C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B5230 */ _t24 = cpu->r[9] + 0x000037E4u;
|
|
/* 022B5230 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B5234 */ _ft25 = sqrt(cpu->f[8]);
|
|
/* 022B5234 */ _ft26 = (double)(int32_t)0x00000001u;
|
|
/* 022B5234 */ cpu->f[10] = _ft26 / _ft25;
|
|
/* 022B5238 */ cpu->f[9] = cpu->f[10] * cpu->f[10];
|
|
/* 022B523C */ cpu->f[11] = cpu->f[10] * cpu->f[12];
|
|
/* 022B5240 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[8], -(cpu->f[0]));
|
|
/* 022B5244 */ cpu->f[10] = cpu->f[9] * cpu->f[11];
|
|
/* 022B5248 */ _t27 = cpu->r[1] + 0x00000070u;
|
|
/* 022B5248 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B524C */ /* nop */
|
|
/* 022B5250 */ cpu->f[13] = cpu->f[13] * cpu->f[10];
|
|
/* 022B5254 */ /* nop */
|
|
/* 022B5258 */ _t28 = cpu->r[1] + 0x00000070u;
|
|
/* 022B5258 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 022B525C */ /* nop */
|
|
L_022B5260: ; // 0x22b5260
|
|
/* 022B5260 */ _t29 = cpu->r[5] + 0x00000008u;
|
|
/* 022B5260 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B5264 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B5268 */ _t30 = cpu->r[5] + 0x00000004u;
|
|
/* 022B5268 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B526C */ _t31 = cpu->r[5] + 0x00000000u;
|
|
/* 022B526C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B5270 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 022B5274 */ _t32 = cpu->r[1] + 0x00000064u;
|
|
/* 022B5274 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[10]);
|
|
/* 022B5278 */ cpu->r[4] = cpu->r[4] + 0x00003B18u;
|
|
/* 022B527C */ _t33 = cpu->r[1] + 0x00000060u;
|
|
/* 022B527C */ rbrew_write_f32(cpu->mem, _t33, cpu->f[9]);
|
|
/* 022B5280 */ cpu->r[5] = 0x00000171u;
|
|
/* 022B5284 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B5284 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 022B5288 */ Gambit_fn_0204D380(cpu);
|
|
/* 022B528C */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B528C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B5290 */ _t36 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5290 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B5294 */ _t37 = cpu->r[1] + 0x00000050u;
|
|
/* 022B5294 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B5298 */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 022B5298 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 022B529C */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B529C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
/* 022B52A0 */ _t40 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B52A0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022B52A4 */ _t41 = cpu->r[1] + 0x00000058u;
|
|
/* 022B52A4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B52A8 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 022B52A8 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[10]);
|
|
/* 022B52AC */ _t43 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B52AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022B52B0 */ _t44 = cpu->r[1] + 0x00000064u;
|
|
/* 022B52B0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B52B4 */ _t45 = cpu->r[1] + 0x00000040u;
|
|
/* 022B52B4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 022B52B8 */ _t46 = cpu->r[1] + 0x00000068u;
|
|
/* 022B52B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022B52BC */ _t47 = cpu->r[1] + 0x00000048u;
|
|
/* 022B52BC */ rbrew_write_f32(cpu->mem, _t47, cpu->f[7]);
|
|
/* 022B52C0 */ _t48 = cpu->r[1] + 0x00000034u;
|
|
/* 022B52C0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022B52C4 */ _t49 = cpu->r[1] + 0x00000070u;
|
|
/* 022B52C4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B52C8 */ _t50 = cpu->r[31] + 0x00000120u;
|
|
/* 022B52C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B52CC */ _t51 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B52CC */ rbrew_write_f32(cpu->mem, _t51, cpu->f[8]);
|
|
/* 022B52D0 */ _t52 = cpu->r[1] + 0x00000030u;
|
|
/* 022B52D0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[12]);
|
|
/* 022B52D4 */ _t53 = cpu->r[1] + 0x00000060u;
|
|
/* 022B52D4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022B52D8 */ _t54 = cpu->r[31] + 0x00000134u;
|
|
/* 022B52D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022B52DC */ _t55 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B52DC */ rbrew_write_f32(cpu->mem, _t55, cpu->f[12]);
|
|
/* 022B52E0 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 022B52E0 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[13]);
|
|
/* 022B52E4 */ _t57 = cpu->r[1] + 0x00000044u;
|
|
/* 022B52E4 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[9]);
|
|
/* 022B52E8 */ _t58 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B52E8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B52EC */ _t59 = cpu->r[31] + 0x00000130u;
|
|
/* 022B52EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022B52F0 */ _t60 = cpu->r[31] + 0x00000138u;
|
|
/* 022B52F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022B52F4 */ _t61 = cpu->r[1] + 0x00000024u;
|
|
/* 022B52F4 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[13]);
|
|
/* 022B52F8 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B52F8 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[10]);
|
|
/* 022B52FC */ _t63 = cpu->r[31] + 0x00000128u;
|
|
/* 022B52FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022B5300 */ _t64 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5300 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 022B5304 */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5304 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 022B5308 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5308 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[9]);
|
|
/* 022B530C */ cpu->f[1] = cpu->f[31];
|
|
/* 022B5310 */ _t67 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B5310 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022B5314 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B5318 */ _t68 = cpu->r[31] + 0x00000124u;
|
|
/* 022B5318 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022B531C */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5320 */ _t69 = cpu->r[1] + 0x00000028u;
|
|
/* 022B5320 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[9]);
|
|
/* 022B5324 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B5328 */ _t70 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5328 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[11]);
|
|
/* 022B532C */ Gambit_fn_02282B2C(cpu);
|
|
/* 022B5330 */ _t71 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5330 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022B5334 */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B5334 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 022B5338 */ _t73 = cpu->r[31] + 0x00000124u;
|
|
/* 022B5338 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[9]);
|
|
/* 022B533C */ _t74 = cpu->r[1] + 0x00000010u;
|
|
/* 022B533C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022B5340 */ _t75 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5340 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 022B5344 */ _t76 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5344 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022B5348 */ _t77 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022B5348 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[13]);
|
|
/* 022B534C */ _t78 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022B534C */ rbrew_write_f32(cpu->mem, _t78, cpu->f[10]);
|
|
/* 022B5350 */ _t79 = cpu->r[1] + 0x00000028u;
|
|
/* 022B5350 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022B5354 */ _t80 = cpu->r[31] + 0x00000134u;
|
|
/* 022B5354 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[9]);
|
|
/* 022B5358 */ _t81 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B5358 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[13]);
|
|
/* 022B535C */ _t82 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B535C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 022B5360 */ _t83 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5360 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 022B5364 */ _t84 = cpu->r[31] + 0x00000128u;
|
|
/* 022B5364 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[9]);
|
|
/* 022B5368 */ _t85 = cpu->r[31] + 0x00000130u;
|
|
/* 022B5368 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[12]);
|
|
/* 022B536C */ _t86 = cpu->r[1] + 0x00000014u;
|
|
/* 022B536C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 022B5370 */ _t87 = cpu->r[31] + 0x00000138u;
|
|
/* 022B5370 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[11]);
|
|
/* 022B5374 */ _t88 = cpu->r[31] + 0x00000120u;
|
|
/* 022B5374 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[0]);
|
|
/* 022B5378 */ _t89 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B5378 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022B537C */ _t90 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B537C */ cpu->r[31] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022B5380 */ _t91 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B5380 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 022B5384 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B5384 */ _t93 = _t92 & 0x00000001u;
|
|
/* 022B5384 */ if (_t93) goto L_022B5388; // else: addr-0 trap, fall-through
|
|
L_022B5388: ; // 0x22b5388
|
|
/* 022B5388 */ _t94 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B5388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 022B538C */ cpu->lr = cpu->r[0];
|
|
/* 022B5390 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 022B5394 */ return;
|
|
}
|
|
|
|
// fn_022B539C @ 0x22b539c
|
|
void Gambit_fn_022B539C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022B539C: ; // 0x22b539c
|
|
/* 022B539C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B539C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B539C */ cpu->r[1] = _t0;
|
|
/* 022B53A0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B53A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B53A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B53A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B53A8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B53AC */ _t3 = cpu->r[12] + 0x000037E8u;
|
|
/* 022B53AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B53B0 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B53B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B53B8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B53B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B53BC */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B53C0 */ _t5 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B53C0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022B53C4 */ _t6 = cpu->r[30] + 0x00000014u;
|
|
/* 022B53C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B53C8 */ _t7 = cpu->r[12] + 0x00000014u;
|
|
/* 022B53C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B53CC */ cpu->ctr = cpu->r[0];
|
|
/* 022B53D0 */ cpu->r[3] = cpu->r[30] + 0x00000010u;
|
|
/* 022B53D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B53D8 */ _t8 = cpu->r[31] + 0x00000094u;
|
|
/* 022B53D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B53DC */ cpu->r[5] = 0x00000001u;
|
|
/* 022B53E0 */ _t9 = cpu->r[30] + 0x00000010u;
|
|
/* 022B53E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B53E4 */ Gambit_fn_02398850(cpu);
|
|
/* 022B53E8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022B53E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B53EC */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B53EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B53F0 */ cpu->lr = cpu->r[0];
|
|
/* 022B53F4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022B53F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B53F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B53FC */ return;
|
|
}
|
|
|
|
// fn_022B5404 @ 0x22b5404
|
|
void Gambit_fn_022B5404(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33;
|
|
|
|
L_022B5404: ; // 0x22b5404
|
|
/* 022B5404 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B5404 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B5404 */ cpu->r[1] = _t0;
|
|
/* 022B5408 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5408 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022B540C */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 022B540C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B5410 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B5410 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B5414 */ cpu->r[30] = 0x101C0000u;
|
|
/* 022B5418 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5418 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B541C */ _t5 = cpu->r[30] + 0x00006000u;
|
|
/* 022B541C */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B541C */ cpu->r[30] = _t5;
|
|
/* 022B5420 */ _t6 = cpu->r[9] + 0x00000268u;
|
|
/* 022B5420 */ cpu->r[29] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B5424 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B5428 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B542C */ Gambit_fn_0261F774(cpu);
|
|
/* 022B5430 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5434 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B5438 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B543C */ _t7 = cpu->r[3] + 0x00000244u;
|
|
/* 022B543C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B5440 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5440 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022B5444 */ _t9 = cpu->r[3] + 0x00000248u;
|
|
/* 022B5444 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B5448 */ _t10 = cpu->r[31] + 0x000002C2u;
|
|
/* 022B5448 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 022B544C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B544C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 022B5450 */ _t12 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B5450 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B5454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B5458 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5458 */ rbrew_write32(cpu->mem, _t13, cpu->r[6]);
|
|
/* 022B545C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B545C */ _t15 = _t14 & 0x00000001u;
|
|
/* 022B545C */ if (_t15) goto L_022B5460; else goto L_022B54C4;
|
|
L_022B5460: ; // 0x22b5460
|
|
/* 022B5460 */ _t16 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022B5460 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B5464 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B5464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B5468 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5468 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B5468 */ if (_t18) goto L_022B546C; else goto L_022B549C;
|
|
L_022B546C: ; // 0x22b546c
|
|
/* 022B546C */ _t19 = cpu->r[31] + 0x00000148u;
|
|
/* 022B546C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B5470 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5470 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B5474 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5474 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B5478 */ cpu->f[13] = cpu->f[0] - cpu->f[13];
|
|
/* 022B547C */ _t22 = cpu->r[31] + 0x00000140u;
|
|
/* 022B547C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B5480 */ cpu->f[12] = cpu->f[0] - cpu->f[12];
|
|
/* 022B5484 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 022B5488 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B548C */ cpu->f[13] = fma(cpu->f[12], cpu->f[12], cpu->f[0]);
|
|
/* 022B5490 */ _t23 = cpu->r[11] + 0x00003B30u;
|
|
/* 022B5490 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B5494 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B5498 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B5498 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B5498 */ if (_t25) goto L_022B54D0; else goto L_022B549C;
|
|
L_022B549C: ; // 0x22b549c
|
|
/* 022B549C */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 022B549C */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B54A0 */ _t27 = cpu->r[9] + 0x00000268u;
|
|
/* 022B54A0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B54A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B54A8 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B54AC */ cpu->r[4] = cpu->r[3];
|
|
/* 022B54B0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B54B4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B54B8 */ Gambit_fn_025C5DA4(cpu);
|
|
/* 022B54BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B54C0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B54C0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022B54C0 */ if (_t29) goto L_022B54C4; else goto L_022B54D0;
|
|
L_022B54C4: ; // 0x22b54c4
|
|
/* 022B54C4 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B54C8 */ cpu->r[4] = 0x00000001u;
|
|
/* 022B54CC */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B54D0: ; // 0x22b54d0
|
|
/* 022B54D0 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 022B54D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B54D4 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 022B54D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B54D8 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 022B54D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B54DC */ cpu->lr = cpu->r[0];
|
|
/* 022B54E0 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B54E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B54E4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B54E8 */ return;
|
|
}
|
|
|
|
// fn_022B54F0 @ 0x22b54f0
|
|
void Gambit_fn_022B54F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_022B54F0: ; // 0x22b54f0
|
|
/* 022B54F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B54F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B54F0 */ cpu->r[1] = _t0;
|
|
/* 022B54F4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B54F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B54F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B54FC */ _t2 = cpu->r[12] + 0x000037ECu;
|
|
/* 022B54FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022B5500 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B5504 */ _t3 = cpu->r[11] + 0x000037E8u;
|
|
/* 022B5504 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B5508 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5508 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022B550C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B5510 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5510 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022B5514 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B5518 */ _t6 = cpu->r[31] + 0x000000E0u;
|
|
/* 022B5518 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022B551C */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B5520 */ _t7 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B5520 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 022B5524 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022B5524 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B5528 */ _t9 = cpu->r[12] + 0x00000014u;
|
|
/* 022B5528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B552C */ cpu->ctr = cpu->r[0];
|
|
/* 022B5530 */ cpu->r[3] = cpu->r[30] + 0x00000018u;
|
|
/* 022B5534 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B5538 */ _t10 = cpu->r[31] + 0x00000094u;
|
|
/* 022B5538 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B553C */ cpu->r[5] = 0x00000001u;
|
|
/* 022B5540 */ _t11 = cpu->r[30] + 0x00000018u;
|
|
/* 022B5540 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B5544 */ Gambit_fn_02398850(cpu);
|
|
/* 022B5548 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5548 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B554C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B554C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B5550 */ cpu->lr = cpu->r[0];
|
|
/* 022B5554 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5554 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B5558 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B555C */ return;
|
|
}
|
|
|
|
// fn_022B5564 @ 0x22b5564
|
|
void Gambit_fn_022B5564(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022B5564: ; // 0x22b5564
|
|
/* 022B5564 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022B5564 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B5564 */ cpu->r[1] = _t0;
|
|
/* 022B5568 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 022B5568 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B556C */ /* nop */
|
|
/* 022B5570 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 022B5570 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B5574 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B5578 */ _t3 = cpu->r[11] + 0x00003B38u;
|
|
/* 022B5578 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t3);
|
|
/* 022B557C */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B557C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B5580 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5580 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 022B5584 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B5588 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5588 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 022B558C */ _t7 = cpu->r[30] + 0x00000194u;
|
|
/* 022B558C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B5590 */ cpu->r[31] = 0x43300000u;
|
|
/* 022B5594 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5594 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 022B5598 */ cpu->r[0] = cpu->r[12] ^ 0x80000000u;
|
|
/* 022B559C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B559C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022B55A0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022B55A0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 022B55A4 */ cpu->f[0] = cpu->f[13] - cpu->f[12];
|
|
/* 022B55A8 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B55AC */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 022B55B0 */ _t11 = cpu->r[10] + 0x00003B14u;
|
|
/* 022B55B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B55B4 */ cpu->f[11] = cpu->f[0] / cpu->f[11];
|
|
/* 022B55B8 */ _t12 = cpu->r[30] + 0x00000094u;
|
|
/* 022B55B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B55BC */ _t13 = cpu->r[30] + 0x000002C4u;
|
|
/* 022B55BC */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 022B55C0 */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 022B55C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B55C4 */ _t15 = cpu->r[3] + 0x00000008u;
|
|
/* 022B55C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B55C8 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022B55C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B55CC */ Gambit_fn_027C7500(cpu);
|
|
/* 022B55D0 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B55D4 */ _t17 = cpu->r[9] + 0x00003B38u;
|
|
/* 022B55D4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 022B55D8 */ _t18 = cpu->r[3] + 0x00000010u;
|
|
/* 022B55D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B55DC */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022B55DC */ rbrew_write32(cpu->mem, _t19, cpu->r[31]);
|
|
/* 022B55E0 */ cpu->r[0] = cpu->r[9] ^ 0x80000000u;
|
|
/* 022B55E4 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B55E4 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022B55E8 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 022B55E8 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t21);
|
|
/* 022B55EC */ cpu->f[11] = cpu->f[13] - cpu->f[0];
|
|
/* 022B55F0 */ cpu->f[13] = (double)(float)cpu->f[11];
|
|
/* 022B55F4 */ cpu->f[12] = cpu->f[31] / cpu->f[13];
|
|
/* 022B55F8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B55FC */ _t22 = cpu->r[30] + 0x000002C4u;
|
|
/* 022B55FC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[12]);
|
|
/* 022B5600 */ _t23 = cpu->r[12] + 0x00006000u;
|
|
/* 022B5600 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B5604 */ _t24 = cpu->r[12] + 0x00000268u;
|
|
/* 022B5604 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B5608 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B560C */ Gambit_fn_0261F774(cpu);
|
|
/* 022B5610 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5614 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B5618 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B561C */ _t25 = cpu->r[3] + 0x00000244u;
|
|
/* 022B561C */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B5620 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5620 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 022B5624 */ _t27 = cpu->r[3] + 0x00000248u;
|
|
/* 022B5624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B5628 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B562C */ _t28 = cpu->r[30] + 0x00000144u;
|
|
/* 022B562C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B5630 */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B5634 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5634 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 022B5638 */ _t30 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B5638 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B563C */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B5640 */ _t31 = cpu->r[9] + 0x00003B40u;
|
|
/* 022B5640 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B5644 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5644 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 022B5648 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B564C */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 022B5650 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5650 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 022B5654 */ Gambit_fn_022B5194(cpu);
|
|
/* 022B5658 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B565C */ _t34 = cpu->r[30] + 0x000002C4u;
|
|
/* 022B565C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B5660 */ _t35 = cpu->r[10] + 0x000037DCu;
|
|
/* 022B5660 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B5664 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022B5668 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B5668 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022B5668 */ if (_t37) goto L_022B568C; else goto L_022B566C;
|
|
L_022B566C: ; // 0x22b566c
|
|
/* 022B566C */ _t38 = cpu->r[30] + 0x000002C2u;
|
|
/* 022B566C */ cpu->r[0] = rbrew_read8(cpu->mem, _t38);
|
|
/* 022B5670 */ _t39 = cpu->r[30] + 0x000002C4u;
|
|
/* 022B5670 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 022B5674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B5678 */ cpu->r[4] = 0x00000004u;
|
|
/* 022B567C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B567C */ _t41 = _t40 & 0x00000001u;
|
|
/* 022B567C */ if (_t41) goto L_022B5684; else goto L_022B5680;
|
|
L_022B5680: ; // 0x22b5680
|
|
/* 022B5680 */ cpu->r[4] = 0x00000010u;
|
|
L_022B5684: ; // 0x22b5684
|
|
/* 022B5684 */ cpu->r[3] = cpu->r[30] + 0x0000018Cu;
|
|
/* 022B5688 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B568C: ; // 0x22b568c
|
|
/* 022B568C */ _t42 = cpu->r[1] + 0x00000030u;
|
|
/* 022B568C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B5690 */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5690 */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B5694 */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 022B5694 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t44);
|
|
/* 022B5698 */ _t45 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5698 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B569C */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B569C */ _t47 = _t46 & 0x00000001u;
|
|
/* 022B569C */ if (_t47) goto L_022B56A0; // else: addr-0 trap, fall-through
|
|
L_022B56A0: ; // 0x22b56a0
|
|
/* 022B56A0 */ _t48 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B56A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022B56A4 */ cpu->lr = cpu->r[0];
|
|
/* 022B56A8 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022B56AC */ return;
|
|
}
|
|
|
|
// fn_022B56B4 @ 0x22b56b4
|
|
void Gambit_fn_022B56B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022B56B4: ; // 0x22b56b4
|
|
/* 022B56B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B56B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B56B4 */ cpu->r[1] = _t0;
|
|
/* 022B56B8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B56B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B56BC */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B56C0 */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B56C4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B56C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B56C8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B56C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B56CC */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 022B56CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B56D0 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 022B56D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B56D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B56D8 */ cpu->ctr = cpu->r[0];
|
|
/* 022B56DC */ cpu->r[3] = cpu->r[30];
|
|
/* 022B56E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B56E4 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 022B56E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B56E8 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B56EC */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022B56EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B56F0 */ Gambit_fn_02398850(cpu);
|
|
/* 022B56F4 */ _t8 = cpu->r[31] + 0x000002BEu;
|
|
/* 022B56F4 */ cpu->r[12] = rbrew_read16(cpu->mem, _t8);
|
|
/* 022B56F8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022B56FC */ _t9 = cpu->r[31] + 0x000002BEu;
|
|
/* 022B56FC */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]);
|
|
/* 022B5700 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B5704 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5704 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B5708 */ cpu->lr = cpu->r[0];
|
|
/* 022B570C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B570C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B5710 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B5714 */ return;
|
|
}
|
|
|
|
// fn_022B571C @ 0x22b571c
|
|
void Gambit_fn_022B571C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022B571C: ; // 0x22b571c
|
|
/* 022B571C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022B571C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B571C */ cpu->r[1] = _t0;
|
|
/* 022B5720 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5720 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B5724 */ /* nop */
|
|
/* 022B5728 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5728 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B572C */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B572C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B5730 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5730 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022B5734 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B5738 */ _t5 = cpu->r[31] + 0x00000094u;
|
|
/* 022B5738 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B573C */ _t6 = cpu->r[9] + 0x00000004u;
|
|
/* 022B573C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B5740 */ _t7 = cpu->r[3] + 0x00000008u;
|
|
/* 022B5740 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B5744 */ _t8 = cpu->r[10] + 0x00000004u;
|
|
/* 022B5744 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B5748 */ Gambit_fn_027C7500(cpu);
|
|
/* 022B574C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B5750 */ _t9 = cpu->r[3] + 0x00000010u;
|
|
/* 022B5750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B5754 */ cpu->r[9] = 0x43300000u;
|
|
/* 022B5758 */ _t10 = cpu->r[10] + 0x00003B38u;
|
|
/* 022B5758 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 022B575C */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022B5760 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5760 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 022B5764 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5764 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 022B5768 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5768 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t13);
|
|
/* 022B576C */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 022B5770 */ cpu->f[11] = (double)(float)cpu->f[11];
|
|
/* 022B5774 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B5778 */ cpu->f[12] = cpu->f[31] / cpu->f[11];
|
|
/* 022B577C */ _t14 = cpu->r[12] + 0x000037DCu;
|
|
/* 022B577C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B5780 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B5784 */ cpu->f[0] = cpu->f[13] - cpu->f[12];
|
|
/* 022B5788 */ _t15 = cpu->r[11] + 0x000037E8u;
|
|
/* 022B5788 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B578C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 022B5790 */ _t16 = cpu->r[31] + 0x00000094u;
|
|
/* 022B5790 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B5794 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B5794 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B5794 */ if (_t18) goto L_022B5798; else goto L_022B57F0;
|
|
L_022B5798: ; // 0x22b5798
|
|
/* 022B5798 */ _t19 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B5798 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 022B579C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022B579C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B57A0 */ Gambit_fn_027C7500(cpu);
|
|
/* 022B57A4 */ _t21 = cpu->r[3] + 0x00000010u;
|
|
/* 022B57A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B57A8 */ cpu->r[0] = 0x43300000u;
|
|
/* 022B57AC */ _t22 = cpu->r[31] + 0x00000194u;
|
|
/* 022B57AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B57B0 */ cpu->r[11] = cpu->r[11] ^ 0x80000000u;
|
|
/* 022B57B4 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022B57B4 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 022B57B8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B57BC */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B57BC */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022B57C0 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 022B57C0 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 022B57C4 */ cpu->r[0] = cpu->r[12] ^ 0x80000000u;
|
|
/* 022B57C8 */ _t26 = cpu->r[9] + 0x00003B38u;
|
|
/* 022B57C8 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t26);
|
|
/* 022B57CC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B57CC */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022B57D0 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 022B57D0 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 022B57D4 */ cpu->f[10] = cpu->f[0] - cpu->f[11];
|
|
/* 022B57D8 */ cpu->f[13] = cpu->f[12] - cpu->f[11];
|
|
/* 022B57DC */ cpu->f[0] = (double)(float)cpu->f[10];
|
|
/* 022B57E0 */ cpu->f[13] = (double)(float)cpu->f[13];
|
|
/* 022B57E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B57E8 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B57E8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022B57E8 */ if (_t30) goto L_022B57EC; else goto L_022B5850;
|
|
L_022B57EC: ; // 0x22b57ec
|
|
/* 022B57EC */ goto L_022B5880;
|
|
L_022B57F0: ; // 0x22b57f0
|
|
/* 022B57F0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B57F4 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B57F4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022B57F4 */ if (_t32) goto L_022B57F8; else goto L_022B57FC;
|
|
L_022B57F8: ; // 0x22b57f8
|
|
/* 022B57F8 */ cpu->f[0] = cpu->f[13];
|
|
L_022B57FC: ; // 0x22b57fc
|
|
/* 022B57FC */ _t33 = cpu->r[31] + 0x000002C4u;
|
|
/* 022B57FC */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 022B5800 */ _t34 = cpu->r[12] + 0x00000004u;
|
|
/* 022B5800 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B5804 */ Gambit_fn_027C7500(cpu);
|
|
/* 022B5808 */ _t35 = cpu->r[3] + 0x00000010u;
|
|
/* 022B5808 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B580C */ cpu->r[0] = 0x43300000u;
|
|
/* 022B5810 */ _t36 = cpu->r[31] + 0x00000194u;
|
|
/* 022B5810 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B5814 */ cpu->r[11] = cpu->r[11] ^ 0x80000000u;
|
|
/* 022B5818 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5818 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 022B581C */ cpu->r[9] = 0x10060000u;
|
|
/* 022B5820 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5820 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 022B5824 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5824 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 022B5828 */ cpu->r[0] = cpu->r[12] ^ 0x80000000u;
|
|
/* 022B582C */ _t40 = cpu->r[9] + 0x00003B38u;
|
|
/* 022B582C */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 022B5830 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5830 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 022B5834 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5834 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t42);
|
|
/* 022B5838 */ cpu->f[10] = cpu->f[0] - cpu->f[11];
|
|
/* 022B583C */ cpu->f[13] = cpu->f[12] - cpu->f[11];
|
|
/* 022B5840 */ cpu->f[0] = (double)(float)cpu->f[10];
|
|
/* 022B5844 */ cpu->f[13] = (double)(float)cpu->f[13];
|
|
/* 022B5848 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B584C */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B584C */ _t44 = _t43 & 0x00000001u;
|
|
/* 022B584C */ if (_t44) goto L_022B5880; else goto L_022B5850;
|
|
L_022B5850: ; // 0x22b5850
|
|
/* 022B5850 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B5854 */ _t45 = cpu->r[12] + 0x00003B44u;
|
|
/* 022B5854 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022B5858 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[10]);
|
|
/* 022B585C */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B585C */ _t47 = _t46 & 0x00000001u;
|
|
/* 022B585C */ if (_t47) goto L_022B5880; else goto L_022B5860;
|
|
L_022B5860: ; // 0x22b5860
|
|
/* 022B5860 */ _t48 = cpu->r[31] + 0x000002BEu;
|
|
/* 022B5860 */ cpu->r[11] = rbrew_read16(cpu->mem, _t48);
|
|
/* 022B5864 */ _t49 = cpu->r[31] + 0x000002C0u;
|
|
/* 022B5864 */ cpu->r[0] = rbrew_read16(cpu->mem, _t49);
|
|
/* 022B5868 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 022B586C */ cpu->r[4] = 0x00000003u;
|
|
/* 022B5870 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B5870 */ _t51 = _t50 & 0x00000001u;
|
|
/* 022B5870 */ if (_t51) goto L_022B5874; else goto L_022B5878;
|
|
L_022B5874: ; // 0x22b5874
|
|
/* 022B5874 */ cpu->r[4] = 0x00000001u;
|
|
L_022B5878: ; // 0x22b5878
|
|
/* 022B5878 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B587C */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B5880: ; // 0x22b5880
|
|
/* 022B5880 */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5880 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022B5884 */ _t53 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5884 */ cpu->r[31] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B5888 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5888 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t54);
|
|
/* 022B588C */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B588C */ _t56 = _t55 & 0x00000001u;
|
|
/* 022B588C */ if (_t56) goto L_022B5890; // else: addr-0 trap, fall-through
|
|
L_022B5890: ; // 0x22b5890
|
|
/* 022B5890 */ _t57 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B5890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022B5894 */ cpu->lr = cpu->r[0];
|
|
/* 022B5898 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022B589C */ return;
|
|
}
|
|
|
|
// fn_022B58A4 @ 0x22b58a4
|
|
void Gambit_fn_022B58A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022B58A4: ; // 0x22b58a4
|
|
/* 022B58A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B58A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B58A4 */ cpu->r[1] = _t0;
|
|
/* 022B58A8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B58A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B58AC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022B58AC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B58B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B58B4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B58B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B58B8 */ _t4 = cpu->r[31] + 0x00000324u;
|
|
/* 022B58B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B58BC */ _t5 = cpu->r[30] + 0x000001E8u;
|
|
/* 022B58BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 022B58C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B58C4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B58C4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B58C4 */ if (_t7) goto L_022B58D8; else goto L_022B58C8;
|
|
L_022B58C8: ; // 0x22b58c8
|
|
/* 022B58C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B58CC */ Gambit_fn_0203F2A4(cpu);
|
|
/* 022B58D0 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B58D4 */ _t8 = cpu->r[30] + 0x000001E8u;
|
|
/* 022B58D4 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
L_022B58D8: ; // 0x22b58d8
|
|
/* 022B58D8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B58DC */ cpu->r[3] = cpu->r[31];
|
|
/* 022B58E0 */ _t9 = cpu->r[12] + 0x00003B48u;
|
|
/* 022B58E0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B58E4 */ cpu->r[4] = 0x00000001u;
|
|
/* 022B58E8 */ cpu->r[5] = 0x00000000u;
|
|
/* 022B58EC */ Gambit_fn_02272C78(cpu);
|
|
/* 022B58F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B58F4 */ Gambit_fn_02271A58(cpu);
|
|
/* 022B58F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B58FC */ Gambit_fn_02790488(cpu);
|
|
/* 022B5900 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5900 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B5904 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5904 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B5908 */ cpu->lr = cpu->r[0];
|
|
/* 022B590C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022B590C */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B5910 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B5914 */ return;
|
|
}
|
|
|
|
// fn_022B591C @ 0x22b591c
|
|
void Gambit_fn_022B591C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022B591C: ; // 0x22b591c
|
|
/* 022B591C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B591C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B591C */ cpu->r[1] = _t0;
|
|
/* 022B5920 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5920 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B5924 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B5928 */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B592C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B592C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B5930 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5930 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B5934 */ _t4 = cpu->r[30] + 0x00000024u;
|
|
/* 022B5934 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B5938 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 022B5938 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B593C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B5940 */ cpu->ctr = cpu->r[0];
|
|
/* 022B5944 */ cpu->r[3] = cpu->r[30] + 0x00000020u;
|
|
/* 022B5948 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B594C */ _t6 = cpu->r[30] + 0x00000020u;
|
|
/* 022B594C */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B5950 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B5954 */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022B5954 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B5958 */ Gambit_fn_02398850(cpu);
|
|
/* 022B595C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022B595C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B5960 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5960 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B5964 */ cpu->lr = cpu->r[0];
|
|
/* 022B5968 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5968 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B596C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B5970 */ return;
|
|
}
|
|
|
|
// fn_022B5978 @ 0x22b5978
|
|
void Gambit_fn_022B5978(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80;
|
|
|
|
L_022B5978: ; // 0x22b5978
|
|
/* 022B5978 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B5978 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B5978 */ cpu->r[1] = _t0;
|
|
/* 022B597C */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 022B597C */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022B5980 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 022B5980 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022B5984 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 022B5984 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022B5988 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B5988 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022B598C */ cpu->r[30] = 0x101C0000u;
|
|
/* 022B5990 */ _t5 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5990 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022B5994 */ _t6 = cpu->r[30] + 0x00006000u;
|
|
/* 022B5994 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B5994 */ cpu->r[30] = _t6;
|
|
/* 022B5998 */ _t7 = cpu->r[11] + 0x00000268u;
|
|
/* 022B5998 */ cpu->r[28] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B599C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B59A0 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B59A4 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B59A8 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B59AC */ cpu->r[3] = cpu->r[28];
|
|
/* 022B59B0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B59B4 */ _t8 = cpu->r[3] + 0x00000244u;
|
|
/* 022B59B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B59B8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022B59B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022B59BC */ _t10 = cpu->r[3] + 0x00000248u;
|
|
/* 022B59BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B59C0 */ _t11 = cpu->r[31] + 0x00000398u;
|
|
/* 022B59C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B59C4 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B59C4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 022B59C8 */ _t13 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B59C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B59CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022B59D0 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 022B59D0 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 022B59D4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B59D4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B59D4 */ if (_t16) goto L_022B59F8; else goto L_022B59D8;
|
|
L_022B59D8: ; // 0x22b59d8
|
|
/* 022B59D8 */ _t17 = cpu->r[8] + 0x00000004u;
|
|
/* 022B59D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B59DC */ _t18 = cpu->r[12] + 0x00000094u;
|
|
/* 022B59DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B59E0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B59E4 */ cpu->r[3] = cpu->r[8];
|
|
/* 022B59E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B59EC */ cpu->r[4] = cpu->r[3];
|
|
/* 022B59F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B59F4 */ Gambit_fn_0200D450(cpu);
|
|
L_022B59F8: ; // 0x22b59f8
|
|
/* 022B59F8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B59FC */ _t19 = cpu->r[31] + 0x00000144u;
|
|
/* 022B59FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B5A00 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B5A04 */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B5A08 */ _t20 = cpu->r[9] + 0x00003B40u;
|
|
/* 022B5A08 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B5A0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B5A10 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B5A14 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5A14 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 022B5A18 */ Gambit_fn_022B5194(cpu);
|
|
/* 022B5A1C */ _t22 = cpu->r[31] + 0x00000148u;
|
|
/* 022B5A1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B5A20 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5A20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B5A24 */ _t24 = cpu->r[31] + 0x00000140u;
|
|
/* 022B5A24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B5A28 */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 022B5A2C */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5A2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B5A30 */ cpu->f[13] = cpu->f[13] - cpu->f[0];
|
|
/* 022B5A34 */ cpu->f[0] = cpu->f[12] * cpu->f[12];
|
|
/* 022B5A38 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B5A3C */ cpu->f[12] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 022B5A40 */ _t26 = cpu->r[12] + 0x00003B4Cu;
|
|
/* 022B5A40 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B5A44 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022B5A48 */ /* nop */
|
|
/* 022B5A4C */ cpu->r[29] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B5A50 */ cpu->r[29] = cpu->r[29] ^ 0x00000001u;
|
|
/* 022B5A54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B5A58 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5A58 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022B5A58 */ if (_t28) goto L_022B5A5C; else goto L_022B5AC4;
|
|
L_022B5A5C: ; // 0x22b5a5c
|
|
/* 022B5A5C */ _t29 = cpu->r[31] + 0x00000134u;
|
|
/* 022B5A5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B5A60 */ _t30 = cpu->r[31] + 0x00000138u;
|
|
/* 022B5A60 */ cpu->r[8] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B5A64 */ _t31 = cpu->r[1] + 0x00000034u;
|
|
/* 022B5A64 */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
/* 022B5A68 */ _t32 = cpu->r[1] + 0x00000038u;
|
|
/* 022B5A68 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]);
|
|
/* 022B5A6C */ /* nop */
|
|
/* 022B5A70 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B5A74 */ _t33 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B5A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B5A78 */ _t34 = cpu->r[7] + 0x000037DCu;
|
|
/* 022B5A78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B5A7C */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B5A7C */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 022B5A80 */ /* nop */
|
|
/* 022B5A84 */ _t36 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B5A84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B5A88 */ /* nop */
|
|
/* 022B5A8C */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5A8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B5A90 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B5A90 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 022B5A94 */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B5A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022B5A98 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5A98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022B5A9C */ _t41 = cpu->r[1] + 0x00000028u;
|
|
/* 022B5A9C */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 022B5AA0 */ _t42 = cpu->r[1] + 0x00000028u;
|
|
/* 022B5AA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B5AA4 */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B5AA4 */ rbrew_write32(cpu->mem, _t43, cpu->r[6]);
|
|
/* 022B5AA8 */ _t44 = cpu->r[31] + 0x00000070u;
|
|
/* 022B5AA8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B5AAC */ _t45 = cpu->r[1] + 0x00000030u;
|
|
/* 022B5AAC */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 022B5AB0 */ _t46 = cpu->r[9] + 0x00000034u;
|
|
/* 022B5AB0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 022B5AB4 */ _t47 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B5AB4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022B5AB8 */ _t48 = cpu->r[9] + 0x00000038u;
|
|
/* 022B5AB8 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[12]);
|
|
/* 022B5ABC */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 022B5ABC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B5AC0 */ _t50 = cpu->r[9] + 0x0000003Cu;
|
|
/* 022B5AC0 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
L_022B5AC4: ; // 0x22b5ac4
|
|
/* 022B5AC4 */ _t51 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022B5AC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B5AC8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B5AC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B5ACC */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5ACC */ _t53 = _t52 & 0x00000001u;
|
|
/* 022B5ACC */ if (_t53) goto L_022B5B04; else goto L_022B5AD0;
|
|
L_022B5AD0: ; // 0x22b5ad0
|
|
/* 022B5AD0 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B5AD4 */ _t54 = cpu->r[31] + 0x00000398u;
|
|
/* 022B5AD4 */ rbrew_write32(cpu->mem, _t54, cpu->r[8]);
|
|
/* 022B5AD8 */ _t55 = cpu->r[30] + 0x00000000u;
|
|
/* 022B5AD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022B5ADC */ _t56 = cpu->r[10] + 0x00000268u;
|
|
/* 022B5ADC */ cpu->r[28] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022B5AE0 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B5AE4 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B5AE8 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5AEC */ cpu->r[3] = cpu->r[28];
|
|
/* 022B5AF0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B5AF4 */ Gambit_fn_025C5DA4(cpu);
|
|
/* 022B5AF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B5AFC */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5AFC */ _t58 = _t57 & 0x00000001u;
|
|
/* 022B5AFC */ if (_t58) goto L_022B5B48; else goto L_022B5B00;
|
|
L_022B5B00: ; // 0x22b5b00
|
|
/* 022B5B00 */ goto L_022B5B38;
|
|
L_022B5B04: ; // 0x22b5b04
|
|
/* 022B5B04 */ _t59 = cpu->r[31] + 0x00000398u;
|
|
/* 022B5B04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022B5B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B5B0C */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5B0C */ _t61 = _t60 & 0x00000001u;
|
|
/* 022B5B0C */ if (_t61) goto L_022B5B10; else goto L_022B5B48;
|
|
L_022B5B10: ; // 0x22b5b10
|
|
/* 022B5B10 */ _t62 = cpu->r[30] + 0x00000000u;
|
|
/* 022B5B10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B5B14 */ _t63 = cpu->r[10] + 0x00000268u;
|
|
/* 022B5B14 */ cpu->r[28] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B5B18 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B5B1C */ Gambit_fn_0261F774(cpu);
|
|
/* 022B5B20 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5B24 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B5B28 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B5B2C */ Gambit_fn_025C5DA4(cpu);
|
|
/* 022B5B30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B5B34 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5B34 */ _t65 = _t64 & 0x00000001u;
|
|
/* 022B5B34 */ if (_t65) goto L_022B5B48; else goto L_022B5B38;
|
|
L_022B5B38: ; // 0x22b5b38
|
|
/* 022B5B38 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B5B3C */ cpu->r[4] = 0x0000000Eu;
|
|
/* 022B5B40 */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B5B44 */ goto L_022B5B94;
|
|
L_022B5B48: ; // 0x22b5b48
|
|
/* 022B5B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B5B4C */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5B4C */ _t67 = _t66 & 0x00000001u;
|
|
/* 022B5B4C */ if (_t67) goto L_022B5B94; else goto L_022B5B50;
|
|
L_022B5B50: ; // 0x22b5b50
|
|
/* 022B5B50 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B5B54 */ _t68 = cpu->r[31] + 0x00000194u;
|
|
/* 022B5B54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022B5B58 */ _t69 = cpu->r[6] + 0x00003B38u;
|
|
/* 022B5B58 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t69);
|
|
/* 022B5B5C */ cpu->r[6] = 0x43300000u;
|
|
/* 022B5B60 */ cpu->r[7] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022B5B64 */ _t70 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5B64 */ rbrew_write32(cpu->mem, _t70, cpu->r[6]);
|
|
/* 022B5B68 */ _t71 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5B68 */ rbrew_write32(cpu->mem, _t71, cpu->r[7]);
|
|
/* 022B5B6C */ _t72 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5B6C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t72);
|
|
/* 022B5B70 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022B5B74 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B5B78 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 022B5B7C */ _t73 = cpu->r[12] + 0x00003B50u;
|
|
/* 022B5B7C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 022B5B80 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 022B5B84 */ _t74 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B5B84 */ _t75 = _t74 & 0x00000001u;
|
|
/* 022B5B84 */ if (_t75) goto L_022B5B94; else goto L_022B5B88;
|
|
L_022B5B88: ; // 0x22b5b88
|
|
/* 022B5B88 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B5B8C */ cpu->r[4] = 0x00000005u;
|
|
/* 022B5B90 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B5B94: ; // 0x22b5b94
|
|
/* 022B5B94 */ _t76 = cpu->r[1] + 0x00000040u;
|
|
/* 022B5B94 */ cpu->r[28] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022B5B98 */ _t77 = cpu->r[1] + 0x00000044u;
|
|
/* 022B5B98 */ cpu->r[29] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022B5B9C */ _t78 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B5BA0 */ _t79 = cpu->r[1] + 0x00000048u;
|
|
/* 022B5BA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022B5BA4 */ cpu->lr = cpu->r[0];
|
|
/* 022B5BA8 */ _t80 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B5BA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022B5BAC */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B5BB0 */ return;
|
|
}
|
|
|
|
// fn_022B5BDC @ 0x22b5bdc
|
|
void Gambit_fn_022B5BDC(CPUState* cpu) {
|
|
uint32_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_022B5BDC: ; // 0x22b5bdc
|
|
/* 022B5BDC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B5BDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B5BDC */ cpu->r[1] = _t0;
|
|
/* 022B5BE0 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5BE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B5BE4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B5BE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B5BE8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B5BEC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5BEC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B5BF0 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B5BF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B5BF4 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B5BF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B5BF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B5BFC */ cpu->r[3] = cpu->r[30];
|
|
/* 022B5C00 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B5C04 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5C08 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B5C0C */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B5C10 */ _t6 = cpu->r[3] + 0x00000244u;
|
|
/* 022B5C10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B5C14 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5C14 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022B5C18 */ _t8 = cpu->r[3] + 0x00000248u;
|
|
/* 022B5C18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B5C1C */ _t9 = cpu->r[31] + 0x00000398u;
|
|
/* 022B5C1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B5C20 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5C20 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 022B5C24 */ _t11 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B5C24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B5C28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B5C2C */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5C2C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 022B5C30 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5C30 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B5C30 */ if (_t14) goto L_022B5C54; else goto L_022B5C34;
|
|
L_022B5C34: ; // 0x22b5c34
|
|
/* 022B5C34 */ _t15 = cpu->r[11] + 0x00000004u;
|
|
/* 022B5C34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B5C38 */ _t16 = cpu->r[12] + 0x00000094u;
|
|
/* 022B5C38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B5C3C */ cpu->ctr = cpu->r[9];
|
|
/* 022B5C40 */ cpu->r[3] = cpu->r[11];
|
|
/* 022B5C44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B5C48 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5C4C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B5C50 */ Gambit_fn_0200D450(cpu);
|
|
L_022B5C54: ; // 0x22b5c54
|
|
/* 022B5C54 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B5C58 */ _t17 = cpu->r[31] + 0x00000144u;
|
|
/* 022B5C58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B5C5C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B5C60 */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B5C64 */ _t18 = cpu->r[8] + 0x00003B40u;
|
|
/* 022B5C64 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B5C68 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B5C6C */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B5C70 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5C70 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022B5C74 */ Gambit_fn_022B5194(cpu);
|
|
/* 022B5C78 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B5C7C */ cpu->r[4] = 0x00000006u;
|
|
/* 022B5C80 */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B5C84 */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5C84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B5C88 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B5C88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B5C8C */ cpu->lr = cpu->r[0];
|
|
/* 022B5C90 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5C90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B5C94 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B5C98 */ return;
|
|
}
|
|
|
|
// fn_022B5CB8 @ 0x22b5cb8
|
|
void Gambit_fn_022B5CB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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, _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;
|
|
double _ft87, _ft88;
|
|
|
|
L_022B5CB8: ; // 0x22b5cb8
|
|
/* 022B5CB8 */ _t0 = cpu->r[1] + 0xFFFFFE98u;
|
|
/* 022B5CB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B5CB8 */ cpu->r[1] = _t0;
|
|
/* 022B5CBC */ _t1 = cpu->r[1] + 0x00000118u;
|
|
/* 022B5CBC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[27]);
|
|
/* 022B5CC0 */ /* nop */
|
|
/* 022B5CC4 */ _t2 = cpu->r[1] + 0x000000C8u;
|
|
/* 022B5CC4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[22]);
|
|
/* 022B5CC8 */ _t3 = cpu->r[1] + 0x00000148u;
|
|
/* 022B5CC8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022B5CCC */ /* nop */
|
|
/* 022B5CD0 */ _t4 = cpu->r[1] + 0x00000138u;
|
|
/* 022B5CD0 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 022B5CD4 */ /* nop */
|
|
/* 022B5CD8 */ _t5 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B5CD8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[22]);
|
|
/* 022B5CDC */ /* nop */
|
|
/* 022B5CE0 */ _t6 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B5CE0 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[23]);
|
|
/* 022B5CE4 */ _t7 = cpu->r[1] + 0x00000128u;
|
|
/* 022B5CE4 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[28]);
|
|
/* 022B5CE8 */ /* nop */
|
|
/* 022B5CEC */ _t8 = cpu->r[1] + 0x00000120u;
|
|
/* 022B5CEC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[27]);
|
|
/* 022B5CF0 */ /* nop */
|
|
/* 022B5CF4 */ _t9 = cpu->r[1] + 0x00000150u;
|
|
/* 022B5CF4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 022B5CF8 */ _t10 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B5CF8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[23]);
|
|
/* 022B5CFC */ _t11 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B5CFC */ rbrew_write_f64(cpu->mem, _t11, cpu->f[24]);
|
|
/* 022B5D00 */ _t12 = cpu->r[1] + 0x00000108u;
|
|
/* 022B5D00 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[26]);
|
|
/* 022B5D04 */ /* nop */
|
|
/* 022B5D08 */ _t13 = cpu->r[1] + 0x00000130u;
|
|
/* 022B5D08 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[28]);
|
|
/* 022B5D0C */ /* nop */
|
|
/* 022B5D10 */ _t14 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B5D10 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[24]);
|
|
/* 022B5D14 */ _t15 = cpu->r[1] + 0x00000110u;
|
|
/* 022B5D14 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[26]);
|
|
/* 022B5D18 */ _t16 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B5D18 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[25]);
|
|
/* 022B5D1C */ _t17 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B5D1C */ rbrew_write_f64(cpu->mem, _t17, cpu->f[21]);
|
|
/* 022B5D20 */ /* nop */
|
|
/* 022B5D24 */ _t18 = cpu->r[1] + 0x00000140u;
|
|
/* 022B5D24 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[29]);
|
|
/* 022B5D28 */ /* nop */
|
|
/* 022B5D2C */ _t19 = cpu->r[1] + 0x00000100u;
|
|
/* 022B5D2C */ rbrew_write_f32(cpu->mem, _t19, cpu->f[25]);
|
|
/* 022B5D30 */ cpu->r[0] = cpu->lr;
|
|
/* 022B5D34 */ _t20 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B5D34 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[21]);
|
|
/* 022B5D38 */ _t21 = cpu->r[1] + 0x00000158u;
|
|
/* 022B5D38 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[31]);
|
|
/* 022B5D3C */ /* nop */
|
|
/* 022B5D40 */ _t22 = cpu->r[1] + 0x00000160u;
|
|
/* 022B5D40 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[31]);
|
|
/* 022B5D44 */ _t23 = cpu->r[1] + 0x0000016Cu;
|
|
/* 022B5D44 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 022B5D48 */ /* nop */
|
|
/* 022B5D4C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B5D50 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B5D54 */ _t24 = cpu->r[4] + 0x000037E8u;
|
|
/* 022B5D54 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B5D58 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B5D5C */ _t25 = cpu->r[12] + 0x00003B54u;
|
|
/* 022B5D5C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B5D60 */ cpu->r[27] = 0x101F0000u;
|
|
/* 022B5D64 */ cpu->r[27] = cpu->r[27] + 0x00006350u;
|
|
/* 022B5D68 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B5D6C */ _t26 = cpu->r[10] + 0x000037DCu;
|
|
/* 022B5D6C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B5D70 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B5D74 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B5D78 */ _t27 = cpu->r[9] + 0x00003B44u;
|
|
/* 022B5D78 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B5D7C */ cpu->r[7] = 0x10060000u;
|
|
/* 022B5D80 */ cpu->r[26] = 0x101C0000u;
|
|
/* 022B5D84 */ _t28 = cpu->r[8] + 0x00003AD8u;
|
|
/* 022B5D84 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B5D88 */ cpu->r[25] = cpu->r[1] + 0x00000020u;
|
|
/* 022B5D8C */ cpu->r[26] = cpu->r[26] + 0x000050F0u;
|
|
/* 022B5D90 */ _t29 = cpu->r[7] + 0x00003B14u;
|
|
/* 022B5D90 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B5D94 */ cpu->r[29] = 0x101C0000u;
|
|
/* 022B5D98 */ cpu->r[24] = 0x101D0000u;
|
|
/* 022B5D9C */ cpu->r[4] = 0x10060000u;
|
|
/* 022B5DA0 */ cpu->r[29] = cpu->r[29] + 0x00006000u;
|
|
/* 022B5DA4 */ cpu->r[28] = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B5DA8 */ cpu->r[31] = 0x0000001Eu;
|
|
/* 022B5DAC */ _t30 = cpu->r[4] + 0x00003B58u;
|
|
/* 022B5DAC */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B5DB0 */ cpu->r[24] = cpu->r[24] + 0xFFFF9918u;
|
|
L_022B5DB4: ; // 0x22b5db4
|
|
/* 022B5DB4 */ _t31 = cpu->r[29] + 0x00000000u;
|
|
/* 022B5DB4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B5DB8 */ _t32 = cpu->r[7] + 0x00000268u;
|
|
/* 022B5DB8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B5DBC */ cpu->r[3] = cpu->r[23];
|
|
/* 022B5DC0 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B5DC4 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5DC8 */ cpu->r[3] = cpu->r[23];
|
|
/* 022B5DCC */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B5DD0 */ _t33 = cpu->r[3] + 0x00000244u;
|
|
/* 022B5DD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B5DD4 */ _t34 = cpu->r[1] + 0x00000080u;
|
|
/* 022B5DD4 */ rbrew_write32(cpu->mem, _t34, cpu->r[9]);
|
|
/* 022B5DD8 */ _t35 = cpu->r[3] + 0x00000248u;
|
|
/* 022B5DD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B5DDC */ _t36 = cpu->r[30] + 0x00000398u;
|
|
/* 022B5DDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B5DE0 */ _t37 = cpu->r[1] + 0x00000084u;
|
|
/* 022B5DE0 */ rbrew_write32(cpu->mem, _t37, cpu->r[10]);
|
|
/* 022B5DE4 */ _t38 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B5DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B5DE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B5DEC */ _t39 = cpu->r[1] + 0x00000088u;
|
|
/* 022B5DEC */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 022B5DF0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B5DF0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 022B5DF0 */ if (_t41) goto L_022B5E14; else goto L_022B5DF4;
|
|
L_022B5DF4: ; // 0x22b5df4
|
|
/* 022B5DF4 */ _t42 = cpu->r[11] + 0x00000004u;
|
|
/* 022B5DF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B5DF8 */ _t43 = cpu->r[12] + 0x00000094u;
|
|
/* 022B5DF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B5DFC */ cpu->ctr = cpu->r[5];
|
|
/* 022B5E00 */ cpu->r[3] = cpu->r[11];
|
|
/* 022B5E04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B5E08 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B5E0C */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 022B5E10 */ Gambit_fn_0200D450(cpu);
|
|
L_022B5E14: ; // 0x22b5e14
|
|
/* 022B5E14 */ _t44 = cpu->r[30] + 0x00000138u;
|
|
/* 022B5E14 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B5E18 */ _t45 = cpu->r[30] + 0x0000011Cu;
|
|
/* 022B5E18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022B5E1C */ _t46 = cpu->r[1] + 0x00000038u;
|
|
/* 022B5E1C */ rbrew_write_f32(cpu->mem, _t46, cpu->f[9]);
|
|
/* 022B5E20 */ _t47 = cpu->r[1] + 0x00000020u;
|
|
/* 022B5E20 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[12]);
|
|
/* 022B5E24 */ _t48 = cpu->r[30] + 0x00000134u;
|
|
/* 022B5E24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022B5E28 */ _t49 = cpu->r[30] + 0x00000128u;
|
|
/* 022B5E28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B5E2C */ _t50 = cpu->r[30] + 0x00000120u;
|
|
/* 022B5E2C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B5E30 */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 022B5E30 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 022B5E34 */ _t52 = cpu->r[1] + 0x00000030u;
|
|
/* 022B5E34 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[7]);
|
|
/* 022B5E38 */ _t53 = cpu->r[30] + 0x00000140u;
|
|
/* 022B5E38 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022B5E3C */ _t54 = cpu->r[30] + 0x0000013Cu;
|
|
/* 022B5E3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022B5E40 */ _t55 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B5E40 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[6]);
|
|
/* 022B5E44 */ _t56 = cpu->r[1] + 0x00000028u;
|
|
/* 022B5E44 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 022B5E48 */ _t57 = cpu->r[30] + 0x00000148u;
|
|
/* 022B5E48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022B5E4C */ _t58 = cpu->r[1] + 0x00000048u;
|
|
/* 022B5E4C */ rbrew_write_f32(cpu->mem, _t58, cpu->f[13]);
|
|
/* 022B5E50 */ _t59 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B5E50 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 022B5E54 */ _t60 = cpu->r[30] + 0x00000144u;
|
|
/* 022B5E54 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022B5E58 */ _t61 = cpu->r[30] + 0x00000130u;
|
|
/* 022B5E58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022B5E5C */ _t62 = cpu->r[30] + 0x00000124u;
|
|
/* 022B5E5C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022B5E60 */ _t63 = cpu->r[30] + 0x0000012Cu;
|
|
/* 022B5E60 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022B5E64 */ _t64 = cpu->r[1] + 0x00000040u;
|
|
/* 022B5E64 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[11]);
|
|
/* 022B5E68 */ cpu->r[3] = cpu->r[25];
|
|
/* 022B5E6C */ _t65 = cpu->r[1] + 0x00000034u;
|
|
/* 022B5E6C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[8]);
|
|
/* 022B5E70 */ cpu->r[4] = cpu->r[30] + 0x000001C4u;
|
|
/* 022B5E74 */ _t66 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B5E74 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[10]);
|
|
/* 022B5E78 */ cpu->r[5] = cpu->r[25];
|
|
/* 022B5E7C */ _t67 = cpu->r[1] + 0x00000044u;
|
|
/* 022B5E7C */ rbrew_write_f32(cpu->mem, _t67, cpu->f[12]);
|
|
/* 022B5E80 */ Gambit_fn_02C69544(cpu);
|
|
/* 022B5E84 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022B5E88 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B5E8C */ Gambit_fn_0200D450(cpu);
|
|
/* 022B5E90 */ /* nop */
|
|
/* 022B5E94 */ /* nop */
|
|
/* 022B5E98 */ _t68 = cpu->r[1] + 0x00000088u;
|
|
/* 022B5E98 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022B5E9C */ /* nop */
|
|
/* 022B5EA0 */ _t69 = cpu->r[1] + 0x00000064u;
|
|
/* 022B5EA0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022B5EA4 */ /* nop */
|
|
/* 022B5EA8 */ _t70 = cpu->r[1] + 0x00000068u;
|
|
/* 022B5EA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t70);
|
|
/* 022B5EAC */ _t71 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B5EAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022B5EB0 */ cpu->f[9] = cpu->f[10] - cpu->f[11];
|
|
/* 022B5EB4 */ _t72 = cpu->r[1] + 0x00000050u;
|
|
/* 022B5EB4 */ rbrew_write32(cpu->mem, _t72, cpu->r[10]);
|
|
/* 022B5EB8 */ _t73 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5EB8 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 022B5EBC */ _t74 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5EBC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022B5EC0 */ _t75 = cpu->r[1] + 0x00000070u;
|
|
/* 022B5EC0 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[9]);
|
|
/* 022B5EC4 */ _t76 = cpu->r[1] + 0x00000070u;
|
|
/* 022B5EC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022B5EC8 */ cpu->f[8] = cpu->f[7] * cpu->f[7];
|
|
/* 022B5ECC */ _t77 = cpu->r[1] + 0x00000050u;
|
|
/* 022B5ECC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 022B5ED0 */ _t78 = cpu->r[1] + 0x00000058u;
|
|
/* 022B5ED0 */ rbrew_write32(cpu->mem, _t78, cpu->r[0]);
|
|
/* 022B5ED4 */ cpu->f[10] = fma(cpu->f[9], cpu->f[9], cpu->f[8]);
|
|
/* 022B5ED8 */ _t79 = cpu->r[1] + 0x00000058u;
|
|
/* 022B5ED8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022B5EDC */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5EDC */ rbrew_write_f32(cpu->mem, _t80, cpu->f[9]);
|
|
/* 022B5EE0 */ cpu->f[11] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 022B5EE4 */ cpu->f[10] = cpu->f[13];
|
|
/* 022B5EE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[28]);
|
|
/* 022B5EEC */ _t81 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5EEC */ rbrew_write_f32(cpu->mem, _t81, cpu->f[7]);
|
|
/* 022B5EF0 */ _t82 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B5EF0 */ _t83 = _t82 & 0x00000001u;
|
|
/* 022B5EF0 */ if (_t83) goto L_022B5EFC; else goto L_022B5EF4;
|
|
L_022B5EF4: ; // 0x22b5ef4
|
|
/* 022B5EF4 */ /* nop */
|
|
/* 022B5EF8 */ goto L_022B5F34;
|
|
L_022B5EFC: ; // 0x22b5efc
|
|
/* 022B5EFC */ cpu->r[10] = 0x10060000u;
|
|
/* 022B5F00 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B5F04 */ _t84 = cpu->r[10] + 0x000037E4u;
|
|
/* 022B5F04 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 022B5F08 */ _t85 = cpu->r[9] + 0x000037ECu;
|
|
/* 022B5F08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 022B5F0C */ _t86 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5F0C */ rbrew_write_f32(cpu->mem, _t86, cpu->f[10]);
|
|
/* 022B5F10 */ _ft87 = sqrt(cpu->f[11]);
|
|
/* 022B5F10 */ _ft88 = (double)(int32_t)0x00000001u;
|
|
/* 022B5F10 */ cpu->f[22] = _ft88 / _ft87;
|
|
/* 022B5F14 */ cpu->f[23] = cpu->f[22] * cpu->f[22];
|
|
/* 022B5F18 */ cpu->f[24] = cpu->f[22] * cpu->f[12];
|
|
/* 022B5F1C */ cpu->f[23] = -fma(cpu->f[23], cpu->f[11], -(cpu->f[13]));
|
|
/* 022B5F20 */ cpu->f[22] = cpu->f[23] * cpu->f[24];
|
|
/* 022B5F24 */ /* nop */
|
|
/* 022B5F28 */ _t89 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5F28 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022B5F2C */ /* nop */
|
|
/* 022B5F30 */ cpu->f[13] = cpu->f[12] * cpu->f[22];
|
|
L_022B5F34: ; // 0x22b5f34
|
|
/* 022B5F34 */ cpu->f[8] = cpu->f[13] * cpu->f[31];
|
|
/* 022B5F38 */ _t90 = cpu->r[24] + 0x00000000u;
|
|
/* 022B5F38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022B5F3C */ /* nop */
|
|
/* 022B5F40 */ _t91 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5F40 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[8]);
|
|
/* 022B5F44 */ /* nop */
|
|
/* 022B5F48 */ Gambit_fn_02830138(cpu);
|
|
/* 022B5F4C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 022B5F50 */ _t92 = cpu->r[30] + 0x0000011Cu;
|
|
/* 022B5F50 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 022B5F54 */ cpu->r[6] = cpu->r[0] | 0x3F800000u;
|
|
/* 022B5F58 */ _t93 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5F58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022B5F5C */ cpu->f[0] = -cpu->f[6];
|
|
/* 022B5F60 */ _t94 = cpu->r[30] + 0x00000120u;
|
|
/* 022B5F60 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 022B5F64 */ _t95 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5F64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t95);
|
|
/* 022B5F68 */ cpu->f[7] = -cpu->f[8];
|
|
/* 022B5F6C */ _t96 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5F6C */ rbrew_write_f32(cpu->mem, _t96, cpu->f[0]);
|
|
/* 022B5F70 */ _t97 = cpu->r[1] + 0x00000014u;
|
|
/* 022B5F70 */ cpu->r[7] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022B5F74 */ _t98 = cpu->r[30] + 0x00000124u;
|
|
/* 022B5F74 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 022B5F78 */ _t99 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5F78 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[7]);
|
|
/* 022B5F7C */ _t100 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B5F7C */ rbrew_write32(cpu->mem, _t100, cpu->r[6]);
|
|
/* 022B5F80 */ _t101 = cpu->r[28] + 0x00000000u;
|
|
/* 022B5F80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 022B5F84 */ cpu->f[9] = -cpu->f[10];
|
|
/* 022B5F88 */ _t102 = cpu->r[1] + 0x00000074u;
|
|
/* 022B5F88 */ rbrew_write32(cpu->mem, _t102, cpu->r[0]);
|
|
/* 022B5F8C */ cpu->f[12] = cpu->f[13] - cpu->f[27];
|
|
/* 022B5F90 */ _t103 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5F90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t103);
|
|
/* 022B5F94 */ _t104 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B5F94 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[9]);
|
|
/* 022B5F98 */ _t105 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B5F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t105);
|
|
/* 022B5F9C */ cpu->f[1] = cpu->f[25];
|
|
/* 022B5FA0 */ _t106 = cpu->r[1] + 0x00000018u;
|
|
/* 022B5FA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022B5FA4 */ _t107 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B5FA4 */ rbrew_write32(cpu->mem, _t107, cpu->r[12]);
|
|
/* 022B5FA8 */ cpu->f[21] = fma(cpu->f[12], cpu->f[26], -(cpu->f[30]));
|
|
/* 022B5FAC */ _t108 = cpu->r[1] + 0x00000054u;
|
|
/* 022B5FAC */ rbrew_write32(cpu->mem, _t108, cpu->r[8]);
|
|
/* 022B5FB0 */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 022B5FB4 */ _t109 = cpu->r[1] + 0x00000078u;
|
|
/* 022B5FB4 */ rbrew_write32(cpu->mem, _t109, cpu->r[11]);
|
|
/* 022B5FB8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B5FBC */ _t110 = cpu->r[1] + 0x00000050u;
|
|
/* 022B5FBC */ rbrew_write32(cpu->mem, _t110, cpu->r[7]);
|
|
/* 022B5FC0 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 022B5FC4 */ _t111 = cpu->r[1] + 0x00000058u;
|
|
/* 022B5FC4 */ rbrew_write32(cpu->mem, _t111, cpu->r[0]);
|
|
/* 022B5FC8 */ Gambit_fn_0204EF20(cpu);
|
|
/* 022B5FCC */ _t112 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B5FCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t112);
|
|
/* 022B5FD0 */ _t113 = cpu->r[1] + 0x00000010u;
|
|
/* 022B5FD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t113);
|
|
/* 022B5FD4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B5FD8 */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 022B5FD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t114);
|
|
/* 022B5FDC */ cpu->r[4] = cpu->r[1] + 0x00000074u;
|
|
/* 022B5FE0 */ _t115 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B5FE0 */ rbrew_write32(cpu->mem, _t115, cpu->r[5]);
|
|
/* 022B5FE4 */ cpu->f[1] = cpu->f[21] * cpu->f[29];
|
|
/* 022B5FE8 */ _t116 = cpu->r[1] + 0x00000074u;
|
|
/* 022B5FE8 */ rbrew_write32(cpu->mem, _t116, cpu->r[12]);
|
|
/* 022B5FEC */ _t117 = cpu->r[1] + 0x00000078u;
|
|
/* 022B5FEC */ rbrew_write32(cpu->mem, _t117, cpu->r[0]);
|
|
/* 022B5FF0 */ cpu->r[5] = cpu->r[27];
|
|
/* 022B5FF4 */ Gambit_fn_0204EF20(cpu);
|
|
/* 022B5FF8 */ _t118 = cpu->r[29] + 0x00000000u;
|
|
/* 022B5FF8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t118);
|
|
/* 022B5FFC */ _t119 = cpu->r[6] + 0x00000274u;
|
|
/* 022B5FFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t119);
|
|
/* 022B6000 */ _t120 = cpu->r[26] + 0x00000000u;
|
|
/* 022B6000 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 022B6004 */ cpu->r[7] = cpu->r[3] + cpu->r[0];
|
|
/* 022B6008 */ _t121 = cpu->r[7] + 0x00000104u;
|
|
/* 022B6008 */ cpu->r[4] = rbrew_read8(cpu->mem, _t121);
|
|
/* 022B600C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022B6010 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6010 */ _t123 = _t122 & 0x00000001u;
|
|
/* 022B6010 */ if (_t123) goto L_022B6054; else goto L_022B6014;
|
|
L_022B6014: ; // 0x22b6014
|
|
/* 022B6014 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022B6018 */ cpu->r[6] = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B601C */ cpu->r[5] = 0x00000001u;
|
|
/* 022B6020 */ Gambit_fn_021F000C(cpu);
|
|
/* 022B6024 */ cpu->r[23] = cpu->r[3];
|
|
/* 022B6024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 022B6028 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6028 */ _t125 = _t124 & 0x00000001u;
|
|
/* 022B6028 */ if (_t125) goto L_022B6054; else goto L_022B602C;
|
|
L_022B602C: ; // 0x22b602c
|
|
/* 022B602C */ _t126 = cpu->r[24] + 0x00000000u;
|
|
/* 022B602C */ cpu->r[3] = rbrew_read32(cpu->mem, _t126);
|
|
/* 022B6030 */ Gambit_fn_02830138(cpu);
|
|
/* 022B6034 */ cpu->r[9] = cpu->r[3];
|
|
/* 022B6038 */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 022B603C */ cpu->r[7] = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B6040 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B6044 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B6048 */ cpu->r[4] = cpu->r[30];
|
|
/* 022B604C */ cpu->r[3] = cpu->r[23];
|
|
/* 022B6050 */ Gambit_fn_021E81D0(cpu);
|
|
L_022B6054: ; // 0x22b6054
|
|
/* 022B6054 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 022B6054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B6058 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6058 */ _t128 = _t127 & 0x00000001u;
|
|
/* 022B6058 */ if (_t128) goto L_022B605C; else goto L_022B5DB4;
|
|
L_022B605C: ; // 0x22b605c
|
|
/* 022B605C */ _t129 = cpu->r[30] + 0x00000398u;
|
|
/* 022B605C */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 022B6060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B6064 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6064 */ _t131 = _t130 & 0x00000001u;
|
|
/* 022B6064 */ if (_t131) goto L_022B6068; else goto L_022B60A0;
|
|
L_022B6068: ; // 0x22b6068
|
|
/* 022B6068 */ _t132 = cpu->r[29] + 0x00000000u;
|
|
/* 022B6068 */ cpu->r[6] = rbrew_read32(cpu->mem, _t132);
|
|
/* 022B606C */ _t133 = cpu->r[6] + 0x00000268u;
|
|
/* 022B606C */ cpu->r[31] = rbrew_read32(cpu->mem, _t133);
|
|
/* 022B6070 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B6074 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B6078 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B607C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B6080 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B6084 */ Gambit_fn_025C5DA4(cpu);
|
|
/* 022B6088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B608C */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B608C */ _t135 = _t134 & 0x00000001u;
|
|
/* 022B608C */ if (_t135) goto L_022B60A0; else goto L_022B6090;
|
|
L_022B6090: ; // 0x22b6090
|
|
/* 022B6090 */ cpu->r[3] = cpu->r[30] + 0x0000018Cu;
|
|
/* 022B6094 */ cpu->r[4] = 0x0000000Eu;
|
|
/* 022B6098 */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B609C */ goto L_022B60AC;
|
|
L_022B60A0: ; // 0x22b60a0
|
|
/* 022B60A0 */ cpu->r[3] = cpu->r[30] + 0x0000018Cu;
|
|
/* 022B60A4 */ cpu->r[4] = 0x00000007u;
|
|
/* 022B60A8 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B60AC: ; // 0x22b60ac
|
|
/* 022B60AC */ /* nop */
|
|
/* 022B60B0 */ _t136 = cpu->r[1] + 0x00000110u;
|
|
/* 022B60B0 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 022B60B4 */ _t137 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B60B4 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 022B60B8 */ _t138 = cpu->r[1] + 0x00000108u;
|
|
/* 022B60B8 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t138);
|
|
/* 022B60BC */ _t139 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B60BC */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 022B60C0 */ _t140 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B60C0 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t140);
|
|
/* 022B60C4 */ _t141 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B60C4 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t141);
|
|
/* 022B60C8 */ _t142 = cpu->r[1] + 0x00000130u;
|
|
/* 022B60C8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 022B60CC */ _t143 = cpu->r[1] + 0x00000100u;
|
|
/* 022B60CC */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 022B60D0 */ _t144 = cpu->r[1] + 0x00000128u;
|
|
/* 022B60D0 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t144);
|
|
/* 022B60D4 */ _t145 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B60D4 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t145);
|
|
/* 022B60D8 */ _t146 = cpu->r[1] + 0x00000150u;
|
|
/* 022B60D8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 022B60DC */ _t147 = cpu->r[1] + 0x00000120u;
|
|
/* 022B60DC */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 022B60E0 */ _t148 = cpu->r[1] + 0x00000148u;
|
|
/* 022B60E0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t148);
|
|
/* 022B60E4 */ _t149 = cpu->r[1] + 0x00000118u;
|
|
/* 022B60E4 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t149);
|
|
/* 022B60E8 */ _t150 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B60E8 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 022B60EC */ _t151 = cpu->r[1] + 0x00000140u;
|
|
/* 022B60EC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 022B60F0 */ _t152 = cpu->r[1] + 0x000000C8u;
|
|
/* 022B60F0 */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t152);
|
|
/* 022B60F4 */ _t153 = cpu->r[1] + 0x00000138u;
|
|
/* 022B60F4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t153);
|
|
/* 022B60F8 */ _t154 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B60F8 */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 022B60FC */ _t155 = cpu->r[1] + 0x00000160u;
|
|
/* 022B60FC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 022B6100 */ _t156 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B6100 */ cpu->f[21] = rbrew_read_f64(cpu->mem, _t156);
|
|
/* 022B6104 */ _t157 = cpu->r[1] + 0x00000158u;
|
|
/* 022B6104 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t157);
|
|
/* 022B6108 */ _t158 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B6108 */ _t159 = _t158 & 0x00000001u;
|
|
/* 022B6108 */ if (_t159) goto L_022B610C; // else: addr-0 trap, fall-through
|
|
L_022B610C: ; // 0x22b610c
|
|
/* 022B610C */ _t160 = cpu->r[1] + 0x0000016Cu;
|
|
/* 022B610C */ cpu->r[0] = rbrew_read32(cpu->mem, _t160);
|
|
/* 022B6110 */ cpu->lr = cpu->r[0];
|
|
/* 022B6114 */ cpu->r[1] = cpu->r[1] + 0x00000168u;
|
|
/* 022B6118 */ return;
|
|
}
|
|
|
|
// fn_022B6120 @ 0x22b6120
|
|
void Gambit_fn_022B6120(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37;
|
|
|
|
L_022B6120: ; // 0x22b6120
|
|
/* 022B6120 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022B6120 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6120 */ cpu->r[1] = _t0;
|
|
/* 022B6124 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6124 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B6128 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6128 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B612C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B6130 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6130 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B6134 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B6134 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B6138 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B6138 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B613C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B6140 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6144 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B6148 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B614C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6150 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B6154 */ _t6 = cpu->r[3] + 0x00000244u;
|
|
/* 022B6154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B6158 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6158 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022B615C */ _t8 = cpu->r[3] + 0x00000248u;
|
|
/* 022B615C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B6160 */ _t9 = cpu->r[31] + 0x00000398u;
|
|
/* 022B6160 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B6164 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6164 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 022B6168 */ _t11 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B6168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B616C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B6170 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6170 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 022B6174 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6174 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B6174 */ if (_t14) goto L_022B6198; else goto L_022B6178;
|
|
L_022B6178: ; // 0x22b6178
|
|
/* 022B6178 */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 022B6178 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B617C */ _t16 = cpu->r[12] + 0x00000094u;
|
|
/* 022B617C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B6180 */ cpu->ctr = cpu->r[0];
|
|
/* 022B6184 */ cpu->r[3] = cpu->r[10];
|
|
/* 022B6188 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B618C */ cpu->r[4] = cpu->r[3];
|
|
/* 022B6190 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B6194 */ Gambit_fn_0200D450(cpu);
|
|
L_022B6198: ; // 0x22b6198
|
|
/* 022B6198 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B619C */ _t17 = cpu->r[31] + 0x00000144u;
|
|
/* 022B619C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B61A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B61A4 */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B61A8 */ _t18 = cpu->r[11] + 0x00003B40u;
|
|
/* 022B61A8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B61AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B61B0 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B61B4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B61B4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022B61B8 */ Gambit_fn_022B5194(cpu);
|
|
/* 022B61BC */ _t20 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022B61BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B61C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B61C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B61C4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B61C4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022B61C4 */ if (_t22) goto L_022B61D0; else goto L_022B61C8;
|
|
L_022B61C8: ; // 0x22b61c8
|
|
/* 022B61C8 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B61CC */ _t23 = cpu->r[31] + 0x00000398u;
|
|
/* 022B61CC */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
L_022B61D0: ; // 0x22b61d0
|
|
/* 022B61D0 */ _t24 = cpu->r[31] + 0x00000194u;
|
|
/* 022B61D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B61D4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B61D8 */ _t25 = cpu->r[12] + 0x00003B38u;
|
|
/* 022B61D8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 022B61DC */ cpu->r[12] = 0x43300000u;
|
|
/* 022B61E0 */ cpu->r[0] = cpu->r[10] ^ 0x80000000u;
|
|
/* 022B61E4 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 022B61E4 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 022B61E8 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B61E8 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022B61EC */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 022B61EC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 022B61F0 */ cpu->f[13] = cpu->f[13] - cpu->f[0];
|
|
/* 022B61F4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B61F8 */ cpu->f[0] = (double)(float)cpu->f[13];
|
|
/* 022B61FC */ _t29 = cpu->r[12] + 0x00003AD0u;
|
|
/* 022B61FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B6200 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B6204 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B6204 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022B6204 */ if (_t31) goto L_022B6224; else goto L_022B6208;
|
|
L_022B6208: ; // 0x22b6208
|
|
/* 022B6208 */ _t32 = cpu->r[31] + 0x000002BCu;
|
|
/* 022B6208 */ cpu->r[0] = rbrew_read16(cpu->mem, _t32);
|
|
/* 022B620C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B6210 */ cpu->r[4] = 0x00000004u;
|
|
/* 022B6214 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6214 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022B6214 */ if (_t34) goto L_022B621C; else goto L_022B6218;
|
|
L_022B6218: ; // 0x22b6218
|
|
/* 022B6218 */ cpu->r[4] = 0x00000008u;
|
|
L_022B621C: ; // 0x22b621c
|
|
/* 022B621C */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B6220 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B6224: ; // 0x22b6224
|
|
/* 022B6224 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6224 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B6228 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6228 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B622C */ cpu->lr = cpu->r[0];
|
|
/* 022B6230 */ _t37 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6230 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B6234 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022B6238 */ return;
|
|
}
|
|
|
|
// fn_022B6240 @ 0x22b6240
|
|
void Gambit_fn_022B6240(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022B6240: ; // 0x22b6240
|
|
/* 022B6240 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B6240 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6240 */ cpu->r[1] = _t0;
|
|
/* 022B6244 */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 022B6244 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022B6248 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 022B6248 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022B624C */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 022B624C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022B6250 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B6250 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022B6254 */ cpu->r[30] = 0x101C0000u;
|
|
/* 022B6258 */ _t5 = cpu->r[1] + 0x00000054u;
|
|
/* 022B6258 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022B625C */ _t6 = cpu->r[30] + 0x00006000u;
|
|
/* 022B625C */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B625C */ cpu->r[30] = _t6;
|
|
/* 022B6260 */ _t7 = cpu->r[8] + 0x00000268u;
|
|
/* 022B6260 */ cpu->r[28] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B6264 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B6268 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B626C */ Gambit_fn_0261F774(cpu);
|
|
/* 022B6270 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B6274 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B6278 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B627C */ _t8 = cpu->r[3] + 0x00000244u;
|
|
/* 022B627C */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B6280 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6280 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 022B6284 */ _t10 = cpu->r[3] + 0x00000248u;
|
|
/* 022B6284 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B6288 */ _t11 = cpu->r[31] + 0x00000144u;
|
|
/* 022B6288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B628C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B6290 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6290 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 022B6294 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B6298 */ _t13 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B6298 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B629C */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B62A0 */ _t14 = cpu->r[7] + 0x00003B40u;
|
|
/* 022B62A0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B62A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B62A8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B62A8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022B62AC */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B62B0 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 022B62B0 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 022B62B4 */ Gambit_fn_022B5194(cpu);
|
|
/* 022B62B8 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022B62B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B62BC */ _t18 = cpu->r[31] + 0x00000148u;
|
|
/* 022B62BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B62C0 */ _t19 = cpu->r[31] + 0x00000140u;
|
|
/* 022B62C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B62C4 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022B62C8 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 022B62C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B62CC */ cpu->f[12] = cpu->f[13] - cpu->f[12];
|
|
/* 022B62D0 */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 022B62D4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B62D8 */ cpu->f[0] = fma(cpu->f[12], cpu->f[12], cpu->f[13]);
|
|
/* 022B62DC */ _t21 = cpu->r[12] + 0x00003B4Cu;
|
|
/* 022B62DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B62E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B62E4 */ /* nop */
|
|
/* 022B62E8 */ cpu->r[29] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B62EC */ cpu->r[29] = cpu->r[29] ^ 0x00000001u;
|
|
/* 022B62F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B62F4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B62F4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B62F4 */ if (_t23) goto L_022B62F8; else goto L_022B6360;
|
|
L_022B62F8: ; // 0x22b62f8
|
|
/* 022B62F8 */ _t24 = cpu->r[31] + 0x00000134u;
|
|
/* 022B62F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B62FC */ _t25 = cpu->r[31] + 0x00000138u;
|
|
/* 022B62FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B6300 */ _t26 = cpu->r[1] + 0x00000034u;
|
|
/* 022B6300 */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 022B6304 */ _t27 = cpu->r[1] + 0x00000038u;
|
|
/* 022B6304 */ rbrew_write32(cpu->mem, _t27, cpu->r[11]);
|
|
/* 022B6308 */ /* nop */
|
|
/* 022B630C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B6310 */ _t28 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B6310 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B6314 */ _t29 = cpu->r[10] + 0x000037DCu;
|
|
/* 022B6314 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B6318 */ _t30 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B6318 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 022B631C */ /* nop */
|
|
/* 022B6320 */ _t31 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B6320 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B6324 */ /* nop */
|
|
/* 022B6328 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6328 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B632C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B632C */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 022B6330 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B6330 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B6334 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 022B6334 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B6338 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 022B6338 */ rbrew_write32(cpu->mem, _t36, cpu->r[11]);
|
|
/* 022B633C */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 022B633C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B6340 */ _t38 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6340 */ rbrew_write32(cpu->mem, _t38, cpu->r[12]);
|
|
/* 022B6344 */ _t39 = cpu->r[31] + 0x00000070u;
|
|
/* 022B6344 */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022B6348 */ _t40 = cpu->r[1] + 0x00000030u;
|
|
/* 022B6348 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 022B634C */ _t41 = cpu->r[6] + 0x00000034u;
|
|
/* 022B634C */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
/* 022B6350 */ _t42 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6350 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B6354 */ _t43 = cpu->r[6] + 0x00000038u;
|
|
/* 022B6354 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 022B6358 */ _t44 = cpu->r[1] + 0x00000030u;
|
|
/* 022B6358 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B635C */ _t45 = cpu->r[6] + 0x0000003Cu;
|
|
/* 022B635C */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
L_022B6360: ; // 0x22b6360
|
|
/* 022B6360 */ _t46 = cpu->r[30] + 0x00000000u;
|
|
/* 022B6360 */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022B6364 */ _t47 = cpu->r[5] + 0x00000268u;
|
|
/* 022B6364 */ cpu->r[28] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022B6368 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B636C */ Gambit_fn_0261F774(cpu);
|
|
/* 022B6370 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B6374 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B6378 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B637C */ Gambit_fn_025C5DA4(cpu);
|
|
/* 022B6380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B6384 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6384 */ _t49 = _t48 & 0x00000001u;
|
|
/* 022B6384 */ if (_t49) goto L_022B6398; else goto L_022B6388;
|
|
L_022B6388: ; // 0x22b6388
|
|
/* 022B6388 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B638C */ cpu->r[4] = 0x0000000Eu;
|
|
/* 022B6390 */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B6394 */ goto L_022B63E4;
|
|
L_022B6398: ; // 0x22b6398
|
|
/* 022B6398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B639C */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B639C */ _t51 = _t50 & 0x00000001u;
|
|
/* 022B639C */ if (_t51) goto L_022B63E4; else goto L_022B63A0;
|
|
L_022B63A0: ; // 0x22b63a0
|
|
/* 022B63A0 */ _t52 = cpu->r[31] + 0x00000194u;
|
|
/* 022B63A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022B63A4 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B63A8 */ cpu->r[0] = 0x43300000u;
|
|
/* 022B63AC */ _t53 = cpu->r[7] + 0x00003B38u;
|
|
/* 022B63AC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 022B63B0 */ cpu->r[6] = cpu->r[9] ^ 0x80000000u;
|
|
/* 022B63B4 */ _t54 = cpu->r[1] + 0x00000020u;
|
|
/* 022B63B4 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 022B63B8 */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 022B63B8 */ rbrew_write32(cpu->mem, _t55, cpu->r[6]);
|
|
/* 022B63BC */ _t56 = cpu->r[1] + 0x00000020u;
|
|
/* 022B63BC */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t56);
|
|
/* 022B63C0 */ cpu->f[13] = cpu->f[0] - cpu->f[13];
|
|
/* 022B63C4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B63C8 */ cpu->f[13] = (double)(float)cpu->f[13];
|
|
/* 022B63CC */ _t57 = cpu->r[6] + 0x00003B50u;
|
|
/* 022B63CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022B63D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B63D4 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B63D4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 022B63D4 */ if (_t59) goto L_022B63E4; else goto L_022B63D8;
|
|
L_022B63D8: ; // 0x22b63d8
|
|
/* 022B63D8 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B63DC */ cpu->r[4] = 0x00000009u;
|
|
/* 022B63E0 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B63E4: ; // 0x22b63e4
|
|
/* 022B63E4 */ _t60 = cpu->r[1] + 0x00000040u;
|
|
/* 022B63E4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022B63E8 */ _t61 = cpu->r[1] + 0x00000044u;
|
|
/* 022B63E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022B63EC */ _t62 = cpu->r[1] + 0x00000054u;
|
|
/* 022B63EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B63F0 */ _t63 = cpu->r[1] + 0x00000048u;
|
|
/* 022B63F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B63F4 */ cpu->lr = cpu->r[0];
|
|
/* 022B63F8 */ _t64 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B63F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022B63FC */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B6400 */ return;
|
|
}
|
|
|
|
// fn_022B642C @ 0x22b642c
|
|
void Gambit_fn_022B642C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_022B642C: ; // 0x22b642c
|
|
/* 022B642C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022B642C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B642C */ cpu->r[1] = _t0;
|
|
/* 022B6430 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6430 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B6434 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6434 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B6438 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B643C */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B643C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B6440 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B6440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B6444 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B6444 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B6448 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B644C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B6450 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B6454 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B6458 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B645C */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B6460 */ _t6 = cpu->r[3] + 0x00000244u;
|
|
/* 022B6460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B6464 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6464 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022B6468 */ _t8 = cpu->r[3] + 0x00000248u;
|
|
/* 022B6468 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B646C */ _t9 = cpu->r[30] + 0x00000144u;
|
|
/* 022B646C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B6470 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6470 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 022B6474 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B6478 */ _t11 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B6478 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B647C */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B6480 */ _t12 = cpu->r[12] + 0x00003B40u;
|
|
/* 022B6480 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B6484 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B6488 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 022B6488 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 022B648C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6490 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 022B6494 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6494 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[11]);
|
|
/* 022B6498 */ Gambit_fn_022B5194(cpu);
|
|
/* 022B649C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B64A0 */ _t15 = cpu->r[30] + 0x00000194u;
|
|
/* 022B64A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B64A4 */ cpu->r[31] = 0x43300000u;
|
|
/* 022B64A8 */ _t16 = cpu->r[12] + 0x00003B38u;
|
|
/* 022B64A8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 022B64AC */ cpu->r[0] = cpu->r[11] ^ 0x80000000u;
|
|
/* 022B64B0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022B64B0 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 022B64B4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B64B4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022B64B8 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022B64B8 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t19);
|
|
/* 022B64BC */ cpu->f[10] = cpu->f[13] - cpu->f[0];
|
|
/* 022B64C0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B64C4 */ cpu->f[10] = (double)(float)cpu->f[10];
|
|
/* 022B64C8 */ _t20 = cpu->r[12] + 0x00003B5Cu;
|
|
/* 022B64C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B64CC */ cpu->f[1] = cpu->f[11] * cpu->f[10];
|
|
/* 022B64D0 */ Gambit_fn_02C886F8(cpu);
|
|
/* 022B64D4 */ _t21 = cpu->r[30] + 0x00000194u;
|
|
/* 022B64D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B64D8 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B64DC */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022B64DC */ rbrew_write32(cpu->mem, _t22, cpu->r[31]);
|
|
/* 022B64E0 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022B64E4 */ _t23 = cpu->r[11] + 0x00003B38u;
|
|
/* 022B64E4 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 022B64E8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B64E8 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 022B64EC */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 022B64EC */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 022B64F0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B64F4 */ cpu->f[0] = cpu->f[11] - cpu->f[13];
|
|
/* 022B64F8 */ _t26 = cpu->r[30] + 0x000002B8u;
|
|
/* 022B64F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B64FC */ _t27 = cpu->r[12] + 0x00003B60u;
|
|
/* 022B64FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B6500 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B6504 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 022B6508 */ _t28 = cpu->r[11] + 0x00003B64u;
|
|
/* 022B6508 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B650C */ cpu->f[12] = fma(cpu->f[1], cpu->f[12], cpu->f[13]);
|
|
/* 022B6510 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[10]);
|
|
/* 022B6514 */ _t29 = cpu->r[30] + 0x000002B4u;
|
|
/* 022B6514 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 022B6518 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B6518 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022B6518 */ if (_t31) goto L_022B6528; else goto L_022B651C;
|
|
L_022B651C: ; // 0x22b651c
|
|
/* 022B651C */ cpu->r[3] = cpu->r[30] + 0x0000018Cu;
|
|
/* 022B6520 */ cpu->r[4] = 0x0000000Au;
|
|
/* 022B6524 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B6528: ; // 0x22b6528
|
|
/* 022B6528 */ _t32 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B652C */ _t33 = cpu->r[1] + 0x00000020u;
|
|
/* 022B652C */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B6530 */ cpu->lr = cpu->r[0];
|
|
/* 022B6534 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6534 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B6538 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022B653C */ return;
|
|
}
|
|
|
|
// fn_022B6594 @ 0x22b6594
|
|
void Gambit_fn_022B6594(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_022B6594: ; // 0x22b6594
|
|
/* 022B6594 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B6594 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6594 */ cpu->r[1] = _t0;
|
|
/* 022B6598 */ _t1 = cpu->r[3] + 0x00000194u;
|
|
/* 022B6598 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B659C */ cpu->r[0] = 0x43300000u;
|
|
/* 022B65A0 */ _t2 = cpu->r[12] + 0x00003B38u;
|
|
/* 022B65A0 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t2);
|
|
/* 022B65A4 */ cpu->r[11] = cpu->r[11] ^ 0x80000000u;
|
|
/* 022B65A8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022B65A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B65AC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B65AC */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 022B65B0 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 022B65B0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t5);
|
|
/* 022B65B4 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022B65B8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B65BC */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 022B65C0 */ _t6 = cpu->r[12] + 0x00003B64u;
|
|
/* 022B65C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B65C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B65C8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B65C8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022B65C8 */ if (_t8) goto L_022B65D8; else goto L_022B65CC;
|
|
L_022B65CC: ; // 0x22b65cc
|
|
/* 022B65CC */ cpu->r[3] = cpu->r[3] + 0x0000018Cu;
|
|
/* 022B65D0 */ cpu->r[4] = 0x0000000Cu;
|
|
/* 022B65D4 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B65D8: ; // 0x22b65d8
|
|
/* 022B65D8 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B65D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B65DC */ cpu->lr = cpu->r[0];
|
|
/* 022B65E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B65E4 */ return;
|
|
}
|
|
|
|
// fn_022B65EC @ 0x22b65ec
|
|
void Gambit_fn_022B65EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _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_022B65EC: ; // 0x22b65ec
|
|
/* 022B65EC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B65EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B65EC */ cpu->r[1] = _t0;
|
|
/* 022B65F0 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B65F4 */ _t1 = cpu->r[8] + 0x00003B70u;
|
|
/* 022B65F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022B65F8 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 022B65F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B65FC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B65FC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B6600 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6600 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B6604 */ _t5 = cpu->r[3] + 0x000002B4u;
|
|
/* 022B6604 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B6608 */ cpu->f[13] = cpu->f[13] - cpu->f[0];
|
|
/* 022B660C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B6610 */ _t6 = cpu->r[3] + 0x000002B4u;
|
|
/* 022B6610 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 022B6614 */ Gambit_fn_022B5038(cpu);
|
|
/* 022B6618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B661C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B661C */ _t8 = _t7 & 0x00000001u;
|
|
/* 022B661C */ if (_t8) goto L_022B667C; else goto L_022B6620;
|
|
L_022B6620: ; // 0x22b6620
|
|
/* 022B6620 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B6624 */ _t9 = cpu->r[12] + 0x00006000u;
|
|
/* 022B6624 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B6628 */ _t10 = cpu->r[12] + 0x00000268u;
|
|
/* 022B6628 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B662C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B6630 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B6634 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B6638 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B663C */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B6640 */ _t11 = cpu->r[3] + 0x00000244u;
|
|
/* 022B6640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B6644 */ _t12 = cpu->r[30] + 0x00000144u;
|
|
/* 022B6644 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B6648 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6648 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 022B664C */ _t14 = cpu->r[3] + 0x00000248u;
|
|
/* 022B664C */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B6650 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B6654 */ _t15 = cpu->r[11] + 0x00003ADCu;
|
|
/* 022B6654 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B6658 */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B665C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B665C */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 022B6660 */ _t17 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B6660 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B6664 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B6668 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6668 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 022B666C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6670 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B6674 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6674 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 022B6678 */ Gambit_fn_022B5194(cpu);
|
|
L_022B667C: ; // 0x22b667c
|
|
/* 022B667C */ _t20 = cpu->r[30] + 0x000002B8u;
|
|
/* 022B667C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B6680 */ _t21 = cpu->r[30] + 0x000002B4u;
|
|
/* 022B6680 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B6684 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B6688 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B6688 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B6688 */ if (_t23) goto L_022B669C; else goto L_022B668C;
|
|
L_022B668C: ; // 0x22b668c
|
|
/* 022B668C */ cpu->r[4] = 0x0000000Du;
|
|
/* 022B6690 */ cpu->r[3] = cpu->r[30] + 0x0000018Cu;
|
|
/* 022B6694 */ _t24 = cpu->r[30] + 0x000002B4u;
|
|
/* 022B6694 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 022B6698 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B669C: ; // 0x22b669c
|
|
/* 022B669C */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 022B669C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B66A0 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 022B66A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B66A4 */ cpu->lr = cpu->r[0];
|
|
/* 022B66A8 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B66A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B66AC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B66B0 */ return;
|
|
}
|
|
|
|
// fn_022B66B8 @ 0x22b66b8
|
|
void Gambit_fn_022B66B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022B66B8: ; // 0x22b66b8
|
|
/* 022B66B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B66B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B66B8 */ cpu->r[1] = _t0;
|
|
/* 022B66BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B66BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B66C0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022B66C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B66C4 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B66C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B66CC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B66CC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B66D0 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B66D4 */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B66D8 */ _t4 = cpu->r[31] + 0x000002BCu;
|
|
/* 022B66D8 */ rbrew_write16(cpu->mem, _t4, (uint16_t)cpu->r[0]);
|
|
/* 022B66DC */ _t5 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B66DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B66E0 */ _t6 = cpu->r[11] + 0x00000014u;
|
|
/* 022B66E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B66E4 */ cpu->ctr = cpu->r[0];
|
|
/* 022B66E8 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 022B66EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B66F0 */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022B66F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B66F4 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B66F8 */ _t8 = cpu->r[30] + 0x00000008u;
|
|
/* 022B66F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B66FC */ Gambit_fn_02398850(cpu);
|
|
/* 022B6700 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B6704 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6704 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B6708 */ cpu->lr = cpu->r[0];
|
|
/* 022B670C */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022B670C */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B6710 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B6714 */ return;
|
|
}
|
|
|
|
// fn_022B671C @ 0x22b671c
|
|
void Gambit_fn_022B671C(CPUState* 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_022B671C: ; // 0x22b671c
|
|
/* 022B671C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B671C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B671C */ cpu->r[1] = _t0;
|
|
/* 022B6720 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6720 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B6724 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6724 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B6728 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B672C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B672C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B6730 */ Gambit_fn_022B5038(cpu);
|
|
/* 022B6734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B6738 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6738 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B6738 */ if (_t5) goto L_022B673C; else goto L_022B67B0;
|
|
L_022B673C: ; // 0x22b673c
|
|
/* 022B673C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B6740 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 022B6740 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B6744 */ _t7 = cpu->r[12] + 0x00000268u;
|
|
/* 022B6744 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B6748 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B674C */ Gambit_fn_0261F774(cpu);
|
|
/* 022B6750 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B6754 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6758 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B675C */ Gambit_fn_025C5DA4(cpu);
|
|
/* 022B6760 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B6764 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6764 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B6764 */ if (_t9) goto L_022B6778; else goto L_022B6768;
|
|
L_022B6768: ; // 0x22b6768
|
|
/* 022B6768 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B676C */ cpu->r[4] = 0x0000000Eu;
|
|
/* 022B6770 */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B6774 */ goto L_022B67BC;
|
|
L_022B6778: ; // 0x22b6778
|
|
/* 022B6778 */ _t10 = cpu->r[31] + 0x00000194u;
|
|
/* 022B6778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B677C */ cpu->r[8] = 0x10060000u;
|
|
/* 022B6780 */ cpu->r[10] = 0x43300000u;
|
|
/* 022B6784 */ _t11 = cpu->r[8] + 0x00003B38u;
|
|
/* 022B6784 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t11);
|
|
/* 022B6788 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022B678C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022B678C */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 022B6790 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6790 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 022B6794 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6794 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t14);
|
|
/* 022B6798 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022B679C */ cpu->r[7] = 0x10060000u;
|
|
/* 022B67A0 */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 022B67A4 */ _t15 = cpu->r[7] + 0x00003B14u;
|
|
/* 022B67A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B67A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B67AC */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B67AC */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B67AC */ if (_t17) goto L_022B67BC; else goto L_022B67B0;
|
|
L_022B67B0: ; // 0x22b67b0
|
|
/* 022B67B0 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B67B4 */ cpu->r[4] = 0x00000004u;
|
|
/* 022B67B8 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B67BC: ; // 0x22b67bc
|
|
/* 022B67BC */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B67BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B67C0 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 022B67C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B67C4 */ cpu->lr = cpu->r[0];
|
|
/* 022B67C8 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 022B67C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B67CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B67D0 */ return;
|
|
}
|
|
|
|
// fn_022B67D8 @ 0x22b67d8
|
|
void Gambit_fn_022B67D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022B67D8: ; // 0x22b67d8
|
|
/* 022B67D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B67D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B67D8 */ cpu->r[1] = _t0;
|
|
/* 022B67DC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B67DC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B67E0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B67E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B67E4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B67E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B67E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B67EC */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B67EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B67F0 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B67F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B67F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B67F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B67FC */ Gambit_fn_0261F774(cpu);
|
|
/* 022B6800 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B6804 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6808 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B680C */ _t6 = cpu->r[3] + 0x00000244u;
|
|
/* 022B680C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B6810 */ _t7 = cpu->r[31] + 0x0000038Cu;
|
|
/* 022B6810 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 022B6814 */ _t8 = cpu->r[3] + 0x00000248u;
|
|
/* 022B6814 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B6818 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B681C */ _t9 = cpu->r[31] + 0x00000390u;
|
|
/* 022B681C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022B6820 */ _t10 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B6820 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B6824 */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B6828 */ _t11 = cpu->r[31] + 0x00000394u;
|
|
/* 022B6828 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 022B682C */ _t12 = cpu->r[30] + 0x00000024u;
|
|
/* 022B682C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B6830 */ _t13 = cpu->r[10] + 0x00000014u;
|
|
/* 022B6830 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B6834 */ cpu->ctr = cpu->r[0];
|
|
/* 022B6838 */ cpu->r[3] = cpu->r[30] + 0x00000020u;
|
|
/* 022B683C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B6840 */ _t14 = cpu->r[30] + 0x00000020u;
|
|
/* 022B6840 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B6844 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B6848 */ _t15 = cpu->r[31] + 0x00000094u;
|
|
/* 022B6848 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B684C */ Gambit_fn_02398850(cpu);
|
|
/* 022B6850 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B6854 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6854 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B6858 */ cpu->lr = cpu->r[0];
|
|
/* 022B685C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B685C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B6860 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B6864 */ return;
|
|
}
|
|
|
|
// fn_022B6870 @ 0x22b6870
|
|
void Gambit_fn_022B6870(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66;
|
|
|
|
L_022B6870: ; // 0x22b6870
|
|
/* 022B6870 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B6870 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6870 */ cpu->r[1] = _t0;
|
|
/* 022B6874 */ _t1 = cpu->r[10] + 0x00003B40u;
|
|
/* 022B6874 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022B6878 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 022B6878 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B687C */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B687C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B6880 */ _t4 = cpu->r[1] + 0x00000054u;
|
|
/* 022B6880 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B6884 */ _t5 = cpu->r[3] + 0x0000038Cu;
|
|
/* 022B6884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B6888 */ _t6 = cpu->r[3] + 0x00000390u;
|
|
/* 022B6888 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B688C */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 022B688C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022B6890 */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B6890 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022B6894 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022B6898 */ _t9 = cpu->r[3] + 0x00000394u;
|
|
/* 022B6898 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B689C */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B68A0 */ _t10 = cpu->r[3] + 0x00000144u;
|
|
/* 022B68A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B68A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B68A8 */ _t11 = cpu->r[1] + 0x00000040u;
|
|
/* 022B68A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022B68AC */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B68B0 */ _t12 = cpu->r[3] + 0x00000390u;
|
|
/* 022B68B0 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 022B68B4 */ Gambit_fn_022B5194(cpu);
|
|
/* 022B68B8 */ _t13 = cpu->r[31] + 0x00000394u;
|
|
/* 022B68B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B68BC */ _t14 = cpu->r[31] + 0x00000148u;
|
|
/* 022B68BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B68C0 */ _t15 = cpu->r[31] + 0x0000038Cu;
|
|
/* 022B68C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B68C4 */ cpu->f[0] = cpu->f[0] - cpu->f[12];
|
|
/* 022B68C8 */ _t16 = cpu->r[31] + 0x00000140u;
|
|
/* 022B68C8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B68CC */ cpu->f[13] = cpu->f[13] - cpu->f[12];
|
|
/* 022B68D0 */ cpu->f[12] = cpu->f[0] * cpu->f[0];
|
|
/* 022B68D4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B68D8 */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 022B68DC */ _t17 = cpu->r[9] + 0x00003B4Cu;
|
|
/* 022B68DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B68E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 022B68E4 */ /* nop */
|
|
/* 022B68E8 */ cpu->r[30] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B68EC */ cpu->r[30] = cpu->r[30] ^ 0x00000001u;
|
|
/* 022B68F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B68F4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B68F4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022B68F4 */ if (_t19) goto L_022B68F8; else goto L_022B6960;
|
|
L_022B68F8: ; // 0x22b68f8
|
|
/* 022B68F8 */ _t20 = cpu->r[31] + 0x00000134u;
|
|
/* 022B68F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B68FC */ _t21 = cpu->r[31] + 0x00000138u;
|
|
/* 022B68FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B6900 */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6900 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]);
|
|
/* 022B6904 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 022B6904 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 022B6908 */ /* nop */
|
|
/* 022B690C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B6910 */ _t24 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022B6910 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B6914 */ _t25 = cpu->r[11] + 0x000037DCu;
|
|
/* 022B6914 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B6918 */ _t26 = cpu->r[1] + 0x00000034u;
|
|
/* 022B6918 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 022B691C */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 022B691C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B6920 */ /* nop */
|
|
/* 022B6924 */ _t28 = cpu->r[31] + 0x00000070u;
|
|
/* 022B6924 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B6928 */ /* nop */
|
|
/* 022B692C */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022B692C */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B6930 */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6930 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 022B6934 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6934 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B6938 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6938 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B693C */ _t33 = cpu->r[1] + 0x00000020u;
|
|
/* 022B693C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 022B6940 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6940 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B6944 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6944 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 022B6948 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 022B6948 */ rbrew_write32(cpu->mem, _t36, cpu->r[11]);
|
|
/* 022B694C */ _t37 = cpu->r[8] + 0x00000034u;
|
|
/* 022B694C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 022B6950 */ _t38 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6950 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022B6954 */ _t39 = cpu->r[8] + 0x00000038u;
|
|
/* 022B6954 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 022B6958 */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 022B6958 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022B695C */ _t41 = cpu->r[8] + 0x0000003Cu;
|
|
/* 022B695C */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
L_022B6960: ; // 0x22b6960
|
|
/* 022B6960 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B6964 */ Gambit_fn_022B5038(cpu);
|
|
/* 022B6968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B696C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B696C */ _t43 = _t42 & 0x00000001u;
|
|
/* 022B696C */ if (_t43) goto L_022B69B0; else goto L_022B6970;
|
|
L_022B6970: ; // 0x22b6970
|
|
/* 022B6970 */ _t44 = cpu->r[31] + 0x00000070u;
|
|
/* 022B6970 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B6974 */ cpu->r[11] = 0x101F0000u;
|
|
/* 022B6978 */ _t45 = cpu->r[11] + 0x00006338u;
|
|
/* 022B6978 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022B6978 */ cpu->r[11] = _t45;
|
|
/* 022B697C */ _t46 = cpu->r[10] + 0x00000034u;
|
|
/* 022B697C */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 022B6980 */ _t47 = cpu->r[11] + 0x00000004u;
|
|
/* 022B6980 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022B6984 */ _t48 = cpu->r[10] + 0x00000038u;
|
|
/* 022B6984 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 022B6988 */ _t49 = cpu->r[11] + 0x00000008u;
|
|
/* 022B6988 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B698C */ _t50 = cpu->r[10] + 0x0000003Cu;
|
|
/* 022B698C */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
/* 022B6990 */ _t51 = cpu->r[31] + 0x000002BCu;
|
|
/* 022B6990 */ cpu->r[0] = rbrew_read16(cpu->mem, _t51);
|
|
/* 022B6994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B6998 */ cpu->r[4] = 0x00000004u;
|
|
/* 022B699C */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B699C */ _t53 = _t52 & 0x00000001u;
|
|
/* 022B699C */ if (_t53) goto L_022B69A4; else goto L_022B69A0;
|
|
L_022B69A0: ; // 0x22b69a0
|
|
/* 022B69A0 */ cpu->r[4] = 0x00000008u;
|
|
L_022B69A4: ; // 0x22b69a4
|
|
/* 022B69A4 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B69A8 */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B69AC */ goto L_022B69FC;
|
|
L_022B69B0: ; // 0x22b69b0
|
|
/* 022B69B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B69B4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B69B4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 022B69B4 */ if (_t55) goto L_022B69FC; else goto L_022B69B8;
|
|
L_022B69B8: ; // 0x22b69b8
|
|
/* 022B69B8 */ _t56 = cpu->r[31] + 0x00000194u;
|
|
/* 022B69B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022B69BC */ cpu->r[9] = 0x10060000u;
|
|
/* 022B69C0 */ cpu->r[12] = 0x43300000u;
|
|
/* 022B69C4 */ _t57 = cpu->r[9] + 0x00003B38u;
|
|
/* 022B69C4 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 022B69C8 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022B69CC */ _t58 = cpu->r[1] + 0x00000018u;
|
|
/* 022B69CC */ rbrew_write32(cpu->mem, _t58, cpu->r[12]);
|
|
/* 022B69D0 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B69D0 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 022B69D4 */ _t60 = cpu->r[1] + 0x00000018u;
|
|
/* 022B69D4 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t60);
|
|
/* 022B69D8 */ cpu->f[13] = cpu->f[12] - cpu->f[13];
|
|
/* 022B69DC */ cpu->r[12] = 0x10060000u;
|
|
/* 022B69E0 */ cpu->f[13] = (double)(float)cpu->f[13];
|
|
/* 022B69E4 */ _t61 = cpu->r[12] + 0x00003AD0u;
|
|
/* 022B69E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022B69E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B69EC */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B69EC */ _t63 = _t62 & 0x00000001u;
|
|
/* 022B69EC */ if (_t63) goto L_022B69FC; else goto L_022B69F0;
|
|
L_022B69F0: ; // 0x22b69f0
|
|
/* 022B69F0 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B69F4 */ cpu->r[4] = 0x0000000Fu;
|
|
/* 022B69F8 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B69FC: ; // 0x22b69fc
|
|
/* 022B69FC */ _t64 = cpu->r[1] + 0x00000054u;
|
|
/* 022B69FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022B6A00 */ _t65 = cpu->r[1] + 0x00000048u;
|
|
/* 022B6A00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022B6A04 */ cpu->lr = cpu->r[0];
|
|
/* 022B6A08 */ _t66 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B6A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022B6A0C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B6A10 */ return;
|
|
}
|
|
|
|
// fn_022B6A18 @ 0x22b6a18
|
|
void Gambit_fn_022B6A18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022B6A18: ; // 0x22b6a18
|
|
/* 022B6A18 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B6A18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6A18 */ cpu->r[1] = _t0;
|
|
/* 022B6A1C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6A1C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B6A20 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6A20 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B6A24 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B6A28 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B6A2C */ cpu->r[9] = 0x00000000u;
|
|
/* 022B6A30 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6A30 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B6A34 */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B6A38 */ _t4 = cpu->r[31] + 0x000002BCu;
|
|
/* 022B6A38 */ rbrew_write16(cpu->mem, _t4, (uint16_t)cpu->r[9]);
|
|
/* 022B6A3C */ _t5 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B6A3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B6A40 */ _t6 = cpu->r[10] + 0x00000014u;
|
|
/* 022B6A40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B6A44 */ cpu->ctr = cpu->r[0];
|
|
/* 022B6A48 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 022B6A4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B6A50 */ _t7 = cpu->r[30] + 0x00000008u;
|
|
/* 022B6A50 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B6A54 */ _t8 = cpu->r[31] + 0x00000094u;
|
|
/* 022B6A54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B6A58 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B6A5C */ Gambit_fn_02398850(cpu);
|
|
/* 022B6A60 */ cpu->r[12] = 0x101F0000u;
|
|
/* 022B6A64 */ _t9 = cpu->r[31] + 0x00000070u;
|
|
/* 022B6A64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B6A68 */ _t10 = cpu->r[12] + 0x00006338u;
|
|
/* 022B6A68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B6A68 */ cpu->r[12] = _t10;
|
|
/* 022B6A6C */ _t11 = cpu->r[11] + 0x00000034u;
|
|
/* 022B6A6C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 022B6A70 */ _t12 = cpu->r[12] + 0x00000004u;
|
|
/* 022B6A70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B6A74 */ _t13 = cpu->r[11] + 0x00000038u;
|
|
/* 022B6A74 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 022B6A78 */ _t14 = cpu->r[12] + 0x00000008u;
|
|
/* 022B6A78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B6A7C */ _t15 = cpu->r[11] + 0x0000003Cu;
|
|
/* 022B6A7C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022B6A80 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6A80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B6A84 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6A84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B6A88 */ cpu->lr = cpu->r[0];
|
|
/* 022B6A8C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6A8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B6A90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B6A94 */ return;
|
|
}
|
|
|
|
// fn_022B6A9C @ 0x22b6a9c
|
|
void Gambit_fn_022B6A9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69;
|
|
|
|
L_022B6A9C: ; // 0x22b6a9c
|
|
/* 022B6A9C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022B6A9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6A9C */ cpu->r[1] = _t0;
|
|
/* 022B6AA0 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6AA0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B6AA4 */ /* nop */
|
|
/* 022B6AA8 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 022B6AA8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B6AAC */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022B6AAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B6AB0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6AB0 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 022B6AB4 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 022B6AB4 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 022B6AB8 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B6AB8 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 022B6ABC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B6AC0 */ Gambit_fn_022B5038(cpu);
|
|
/* 022B6AC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B6AC8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6AC8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022B6AC8 */ if (_t8) goto L_022B6B00; else goto L_022B6ACC;
|
|
L_022B6ACC: ; // 0x22b6acc
|
|
/* 022B6ACC */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B6AD0 */ cpu->r[4] = 0x00000004u;
|
|
/* 022B6AD4 */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B6AD8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6AD8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B6ADC */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 022B6ADC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B6AE0 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 022B6AE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B6AE4 */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6AE4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t12);
|
|
/* 022B6AE8 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B6AE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B6AEC */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B6AEC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022B6AEC */ if (_t15) goto L_022B6AF0; // else: addr-0 trap, fall-through
|
|
L_022B6AF0: ; // 0x22b6af0
|
|
/* 022B6AF0 */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 022B6AF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B6AF4 */ cpu->lr = cpu->r[0];
|
|
/* 022B6AF8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022B6AFC */ return;
|
|
L_022B6B00: ; // 0x22b6b00
|
|
/* 022B6B00 */ _t17 = cpu->r[31] + 0x00000194u;
|
|
/* 022B6B00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B6B04 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B6B08 */ cpu->r[9] = 0x43300000u;
|
|
/* 022B6B0C */ _t18 = cpu->r[12] + 0x00003B38u;
|
|
/* 022B6B0C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t18);
|
|
/* 022B6B10 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022B6B14 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6B14 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 022B6B18 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6B18 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022B6B1C */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6B1C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t21);
|
|
/* 022B6B20 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 022B6B24 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B6B28 */ cpu->f[0] = (double)(float)cpu->f[12];
|
|
/* 022B6B2C */ _t22 = cpu->r[10] + 0x00003B44u;
|
|
/* 022B6B2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B6B30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B6B34 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B6B34 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022B6B34 */ if (_t24) goto L_022B6C48; else goto L_022B6B38;
|
|
L_022B6B38: ; // 0x22b6b38
|
|
/* 022B6B38 */ _t25 = cpu->r[31] + 0x000002C2u;
|
|
/* 022B6B38 */ cpu->r[10] = rbrew_read8(cpu->mem, _t25);
|
|
/* 022B6B3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B6B40 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6B40 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B6B40 */ if (_t27) goto L_022B6B78; else goto L_022B6B44;
|
|
L_022B6B44: ; // 0x22b6b44
|
|
/* 022B6B44 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B6B48 */ cpu->r[4] = 0x00000011u;
|
|
/* 022B6B4C */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B6B50 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6B50 */ cpu->r[29] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B6B54 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 022B6B54 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B6B58 */ _t30 = cpu->r[1] + 0x00000018u;
|
|
/* 022B6B58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B6B5C */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6B5C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 022B6B60 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B6B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B6B64 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B6B64 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022B6B64 */ if (_t34) goto L_022B6B68; // else: addr-0 trap, fall-through
|
|
L_022B6B68: ; // 0x22b6b68
|
|
/* 022B6B68 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 022B6B68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B6B6C */ cpu->lr = cpu->r[0];
|
|
/* 022B6B70 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022B6B74 */ return;
|
|
L_022B6B78: ; // 0x22b6b78
|
|
/* 022B6B78 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B6B7C */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B6B80 */ _t36 = cpu->r[30] + 0x00000004u;
|
|
/* 022B6B80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B6B84 */ _t37 = cpu->r[11] + 0x00000014u;
|
|
/* 022B6B84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B6B88 */ _t38 = cpu->r[31] + 0x00000094u;
|
|
/* 022B6B88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B6B8C */ cpu->ctr = cpu->r[12];
|
|
/* 022B6B90 */ _t39 = cpu->r[11] + 0x00000004u;
|
|
/* 022B6B90 */ cpu->r[29] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022B6B94 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B6B9C */ _t40 = cpu->r[30] + 0x00000000u;
|
|
/* 022B6B9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022B6BA0 */ _t41 = cpu->r[29] + 0x0000001Cu;
|
|
/* 022B6BA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B6BA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 022B6BA8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6BA8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022B6BA8 */ if (_t43) goto L_022B6BD0; else goto L_022B6BAC;
|
|
L_022B6BAC: ; // 0x22b6bac
|
|
/* 022B6BAC */ _t44 = cpu->r[30] + 0x00000004u;
|
|
/* 022B6BAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B6BB0 */ _t45 = cpu->r[10] + 0x00000014u;
|
|
/* 022B6BB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B6BB4 */ cpu->ctr = cpu->r[0];
|
|
/* 022B6BB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6BBC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B6BC0 */ _t46 = cpu->r[30] + 0x00000000u;
|
|
/* 022B6BC0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022B6BC4 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B6BC8 */ _t47 = cpu->r[31] + 0x00000094u;
|
|
/* 022B6BC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022B6BCC */ Gambit_fn_02398850(cpu);
|
|
L_022B6BD0: ; // 0x22b6bd0
|
|
/* 022B6BD0 */ _t48 = cpu->r[31] + 0x00000094u;
|
|
/* 022B6BD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022B6BD4 */ _t49 = cpu->r[11] + 0x00000004u;
|
|
/* 022B6BD4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022B6BD8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6BDC */ Gambit_fn_027C7500(cpu);
|
|
/* 022B6BE0 */ _t50 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B6BE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022B6BE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B6BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B6BE8 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6BE8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 022B6BE8 */ if (_t52) goto L_022B6BEC; else goto L_022B6C48;
|
|
L_022B6BEC: ; // 0x22b6bec
|
|
/* 022B6BEC */ _t53 = cpu->r[30] + 0x00000008u;
|
|
/* 022B6BEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B6BF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B6BF4 */ _t54 = cpu->r[9] + 0x00000004u;
|
|
/* 022B6BF4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022B6BF8 */ Gambit_fn_027C7500(cpu);
|
|
/* 022B6BFC */ cpu->r[11] = 0x43300000u;
|
|
/* 022B6C00 */ _t55 = cpu->r[3] + 0x00000010u;
|
|
/* 022B6C00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022B6C04 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6C04 */ rbrew_write32(cpu->mem, _t56, cpu->r[11]);
|
|
/* 022B6C08 */ cpu->r[12] = cpu->r[10] ^ 0x80000000u;
|
|
/* 022B6C0C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B6C10 */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6C10 */ rbrew_write32(cpu->mem, _t57, cpu->r[12]);
|
|
/* 022B6C14 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6C14 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 022B6C18 */ _t59 = cpu->r[10] + 0x00003B38u;
|
|
/* 022B6C18 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t59);
|
|
/* 022B6C1C */ cpu->f[0] = cpu->f[13] - cpu->f[12];
|
|
/* 022B6C20 */ cpu->f[12] = (double)(float)cpu->f[0];
|
|
/* 022B6C24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[12]);
|
|
/* 022B6C28 */ /* nop */
|
|
/* 022B6C2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B6C30 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022B6C34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022B6C34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B6C38 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6C38 */ _t61 = _t60 & 0x00000001u;
|
|
/* 022B6C38 */ if (_t61) goto L_022B6C48; else goto L_022B6C3C;
|
|
L_022B6C3C: ; // 0x22b6c3c
|
|
/* 022B6C3C */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B6C40 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B6C44 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B6C48: ; // 0x22b6c48
|
|
/* 022B6C48 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6C48 */ cpu->r[29] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B6C4C */ _t63 = cpu->r[1] + 0x00000028u;
|
|
/* 022B6C4C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022B6C50 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 022B6C50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022B6C54 */ _t65 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6C54 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t65);
|
|
/* 022B6C58 */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B6C58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022B6C5C */ _t67 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B6C5C */ _t68 = _t67 & 0x00000001u;
|
|
/* 022B6C5C */ if (_t68) goto L_022B6C60; // else: addr-0 trap, fall-through
|
|
L_022B6C60: ; // 0x22b6c60
|
|
/* 022B6C60 */ _t69 = cpu->r[1] + 0x00000034u;
|
|
/* 022B6C60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022B6C64 */ cpu->lr = cpu->r[0];
|
|
/* 022B6C68 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022B6C6C */ return;
|
|
}
|
|
|
|
// fn_022B6C74 @ 0x22b6c74
|
|
void Gambit_fn_022B6C74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022B6C74: ; // 0x22b6c74
|
|
/* 022B6C74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B6C74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6C74 */ cpu->r[1] = _t0;
|
|
/* 022B6C78 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6C78 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B6C7C */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B6C80 */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B6C84 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6C84 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B6C88 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6C88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B6C8C */ _t4 = cpu->r[30] + 0x00000024u;
|
|
/* 022B6C8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B6C90 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 022B6C90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B6C94 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B6C98 */ cpu->ctr = cpu->r[0];
|
|
/* 022B6C9C */ cpu->r[3] = cpu->r[30] + 0x00000020u;
|
|
/* 022B6CA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B6CA4 */ _t6 = cpu->r[30] + 0x00000020u;
|
|
/* 022B6CA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B6CA8 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B6CAC */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022B6CAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B6CB0 */ Gambit_fn_02398850(cpu);
|
|
/* 022B6CB4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6CB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B6CB8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6CB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B6CBC */ cpu->lr = cpu->r[0];
|
|
/* 022B6CC0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6CC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B6CC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B6CC8 */ return;
|
|
}
|
|
|
|
// fn_022B6CD0 @ 0x22b6cd0
|
|
void Gambit_fn_022B6CD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76;
|
|
double _ft56, _ft57;
|
|
|
|
L_022B6CD0: ; // 0x22b6cd0
|
|
/* 022B6CD0 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B6CD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6CD0 */ cpu->r[1] = _t0;
|
|
/* 022B6CD4 */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 022B6CD4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B6CD8 */ /* nop */
|
|
/* 022B6CDC */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 022B6CDC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B6CE0 */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B6CE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B6CE4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B6CE8 */ _t4 = cpu->r[9] + 0x000037DCu;
|
|
/* 022B6CE8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B6CEC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B6CF0 */ _t5 = cpu->r[1] + 0x00000054u;
|
|
/* 022B6CF0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022B6CF4 */ _t6 = cpu->r[31] + 0x00000140u;
|
|
/* 022B6CF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B6CF8 */ _t7 = cpu->r[31] + 0x00000188u;
|
|
/* 022B6CF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B6CFC */ _t8 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6CFC */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 022B6D00 */ _t9 = cpu->r[31] + 0x00000144u;
|
|
/* 022B6D00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B6D04 */ _t10 = cpu->r[31] + 0x00000148u;
|
|
/* 022B6D04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B6D08 */ cpu->f[1] = cpu->f[31];
|
|
/* 022B6D0C */ _t11 = cpu->r[1] + 0x00000030u;
|
|
/* 022B6D0C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 022B6D10 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6D14 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 022B6D14 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 022B6D18 */ Gambit_fn_023B0DB4(cpu);
|
|
/* 022B6D1C */ _t13 = cpu->r[31] + 0x00000188u;
|
|
/* 022B6D1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B6D20 */ _t14 = cpu->r[3] + 0x0000003Au;
|
|
/* 022B6D20 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14);
|
|
/* 022B6D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B6D28 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6D28 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B6D28 */ if (_t16) goto L_022B6D58; else goto L_022B6D2C;
|
|
L_022B6D2C: ; // 0x22b6d2c
|
|
/* 022B6D2C */ _t17 = cpu->r[31] + 0x00000398u;
|
|
/* 022B6D2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B6D30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B6D34 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6D34 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022B6D34 */ if (_t19) goto L_022B6D58; else goto L_022B6D38;
|
|
L_022B6D38: ; // 0x22b6d38
|
|
/* 022B6D38 */ _t20 = cpu->r[31] + 0x000002BCu;
|
|
/* 022B6D38 */ cpu->r[9] = rbrew_read16(cpu->mem, _t20);
|
|
/* 022B6D3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B6D40 */ cpu->r[4] = 0x00000004u;
|
|
/* 022B6D44 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6D44 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022B6D44 */ if (_t22) goto L_022B6D4C; else goto L_022B6D48;
|
|
L_022B6D48: ; // 0x22b6d48
|
|
/* 022B6D48 */ cpu->r[4] = 0x00000008u;
|
|
L_022B6D4C: ; // 0x22b6d4c
|
|
/* 022B6D4C */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B6D50 */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B6D54 */ goto L_022B6EAC;
|
|
L_022B6D58: ; // 0x22b6d58
|
|
/* 022B6D58 */ _t23 = cpu->r[3] + 0x00000004u;
|
|
/* 022B6D58 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B6D5C */ _t24 = cpu->r[10] + 0x0000002Cu;
|
|
/* 022B6D5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B6D60 */ cpu->ctr = cpu->r[0];
|
|
/* 022B6D64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B6D68 */ _t25 = cpu->r[3] + 0x00000000u;
|
|
/* 022B6D68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B6D6C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B6D70 */ _t26 = cpu->r[31] + 0x00000144u;
|
|
/* 022B6D70 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B6D74 */ _t27 = cpu->r[12] + 0x00003B48u;
|
|
/* 022B6D74 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B6D78 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B6D7C */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6D7C */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022B6D80 */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 022B6D80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B6D84 */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B6D88 */ _t30 = cpu->r[12] + 0x00003B40u;
|
|
/* 022B6D88 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B6D8C */ cpu->f[9] = cpu->f[13] + cpu->f[10];
|
|
/* 022B6D90 */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 022B6D90 */ rbrew_write32(cpu->mem, _t31, cpu->r[10]);
|
|
/* 022B6D94 */ _t32 = cpu->r[3] + 0x00000008u;
|
|
/* 022B6D94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B6D98 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B6D9C */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 022B6D9C */ rbrew_write_f32(cpu->mem, _t33, cpu->f[9]);
|
|
/* 022B6DA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B6DA4 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022B6DA8 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B6DA8 */ rbrew_write32(cpu->mem, _t34, cpu->r[12]);
|
|
/* 022B6DAC */ Gambit_fn_022B5194(cpu);
|
|
/* 022B6DB0 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B6DB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B6DB4 */ _t36 = cpu->r[31] + 0x00000148u;
|
|
/* 022B6DB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B6DB8 */ /* nop */
|
|
/* 022B6DBC */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 022B6DC0 */ /* nop */
|
|
/* 022B6DC4 */ /* nop */
|
|
/* 022B6DC8 */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 022B6DC8 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 022B6DCC */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 022B6DCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B6DD0 */ /* nop */
|
|
/* 022B6DD4 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6DD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022B6DD8 */ _t40 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6DD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022B6DDC */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6DDC */ rbrew_write32(cpu->mem, _t41, cpu->r[10]);
|
|
/* 022B6DE0 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6DE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B6DE4 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6DE4 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 022B6DE8 */ cpu->f[11] = cpu->f[0] * cpu->f[0];
|
|
/* 022B6DEC */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6DEC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B6DF0 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6DF0 */ rbrew_write32(cpu->mem, _t45, cpu->r[11]);
|
|
/* 022B6DF4 */ cpu->f[12] = fma(cpu->f[8], cpu->f[8], cpu->f[11]);
|
|
/* 022B6DF8 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6DF8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022B6DFC */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[12]);
|
|
/* 022B6E00 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 022B6E04 */ _t47 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B6E04 */ _t48 = _t47 & 0x00000001u;
|
|
/* 022B6E04 */ if (_t48) goto L_022B6E08; else goto L_022B6E74;
|
|
L_022B6E08: ; // 0x22b6e08
|
|
/* 022B6E08 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B6E0C */ _t49 = cpu->r[10] + 0x000037E8u;
|
|
/* 022B6E0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B6E10 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 022B6E14 */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B6E14 */ _t51 = _t50 & 0x00000001u;
|
|
/* 022B6E14 */ if (_t51) goto L_022B6E30; else goto L_022B6E18;
|
|
L_022B6E18: ; // 0x22b6e18
|
|
/* 022B6E18 */ /* nop */
|
|
/* 022B6E1C */ /* nop */
|
|
/* 022B6E20 */ /* nop */
|
|
/* 022B6E24 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6E24 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022B6E28 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6E28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022B6E2C */ goto L_022B6E74;
|
|
L_022B6E30: ; // 0x22b6e30
|
|
/* 022B6E30 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B6E34 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B6E38 */ _t54 = cpu->r[9] + 0x000037ECu;
|
|
/* 022B6E38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022B6E3C */ _t55 = cpu->r[12] + 0x000037E4u;
|
|
/* 022B6E3C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022B6E40 */ _ft56 = sqrt(cpu->f[9]);
|
|
/* 022B6E40 */ _ft57 = (double)(int32_t)0x00000001u;
|
|
/* 022B6E40 */ cpu->f[7] = _ft57 / _ft56;
|
|
/* 022B6E44 */ cpu->f[8] = cpu->f[7] * cpu->f[7];
|
|
/* 022B6E48 */ cpu->f[10] = cpu->f[7] * cpu->f[12];
|
|
/* 022B6E4C */ cpu->f[8] = -fma(cpu->f[8], cpu->f[9], -(cpu->f[0]));
|
|
/* 022B6E50 */ cpu->f[7] = cpu->f[8] * cpu->f[10];
|
|
/* 022B6E54 */ /* nop */
|
|
/* 022B6E58 */ /* nop */
|
|
/* 022B6E5C */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6E5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B6E60 */ /* nop */
|
|
/* 022B6E64 */ /* nop */
|
|
/* 022B6E68 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6E68 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022B6E6C */ cpu->f[10] = cpu->f[0] * cpu->f[7];
|
|
/* 022B6E70 */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6E70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t60);
|
|
L_022B6E74: ; // 0x22b6e74
|
|
/* 022B6E74 */ _t61 = cpu->r[31] + 0x00000070u;
|
|
/* 022B6E74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022B6E78 */ _t62 = cpu->r[11] + 0x00000034u;
|
|
/* 022B6E78 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[8]);
|
|
/* 022B6E7C */ _t63 = cpu->r[11] + 0x00000038u;
|
|
/* 022B6E7C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 022B6E80 */ _t64 = cpu->r[11] + 0x0000003Cu;
|
|
/* 022B6E80 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[10]);
|
|
/* 022B6E84 */ _t65 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022B6E84 */ cpu->r[9] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022B6E88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B6E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B6E8C */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6E8C */ _t67 = _t66 & 0x00000001u;
|
|
/* 022B6E8C */ if (_t67) goto L_022B6EAC; else goto L_022B6E90;
|
|
L_022B6E90: ; // 0x22b6e90
|
|
/* 022B6E90 */ _t68 = cpu->r[31] + 0x000002BCu;
|
|
/* 022B6E90 */ cpu->r[0] = rbrew_read16(cpu->mem, _t68);
|
|
/* 022B6E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B6E98 */ cpu->r[4] = 0x00000004u;
|
|
/* 022B6E9C */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B6E9C */ _t70 = _t69 & 0x00000001u;
|
|
/* 022B6E9C */ if (_t70) goto L_022B6EA4; else goto L_022B6EA0;
|
|
L_022B6EA0: ; // 0x22b6ea0
|
|
/* 022B6EA0 */ cpu->r[4] = 0x00000008u;
|
|
L_022B6EA4: ; // 0x22b6ea4
|
|
/* 022B6EA4 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B6EA8 */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B6EAC: ; // 0x22b6eac
|
|
/* 022B6EAC */ _t71 = cpu->r[1] + 0x00000048u;
|
|
/* 022B6EAC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022B6EB0 */ _t72 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B6EB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022B6EB4 */ _t73 = cpu->r[1] + 0x00000040u;
|
|
/* 022B6EB4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t73);
|
|
/* 022B6EB8 */ _t74 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B6EB8 */ _t75 = _t74 & 0x00000001u;
|
|
/* 022B6EB8 */ if (_t75) goto L_022B6EBC; // else: addr-0 trap, fall-through
|
|
L_022B6EBC: ; // 0x22b6ebc
|
|
/* 022B6EBC */ _t76 = cpu->r[1] + 0x00000054u;
|
|
/* 022B6EBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022B6EC0 */ cpu->lr = cpu->r[0];
|
|
/* 022B6EC4 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B6EC8 */ return;
|
|
}
|
|
|
|
// fn_022B6ED0 @ 0x22b6ed0
|
|
void Gambit_fn_022B6ED0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022B6ED0: ; // 0x22b6ed0
|
|
/* 022B6ED0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B6ED0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6ED0 */ cpu->r[1] = _t0;
|
|
/* 022B6ED4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6ED4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B6ED8 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022B6EDC */ cpu->r[30] = cpu->r[30] + 0x00003A2Cu;
|
|
/* 022B6EE0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6EE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B6EE4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6EE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B6EE8 */ _t4 = cpu->r[30] + 0x00000024u;
|
|
/* 022B6EE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B6EEC */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 022B6EEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B6EF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B6EF4 */ cpu->ctr = cpu->r[0];
|
|
/* 022B6EF8 */ cpu->r[3] = cpu->r[30] + 0x00000020u;
|
|
/* 022B6EFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B6F00 */ _t6 = cpu->r[30] + 0x00000020u;
|
|
/* 022B6F00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B6F04 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B6F08 */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022B6F08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B6F0C */ Gambit_fn_02398850(cpu);
|
|
/* 022B6F10 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6F10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B6F14 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6F14 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B6F18 */ cpu->lr = cpu->r[0];
|
|
/* 022B6F1C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6F1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B6F20 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B6F24 */ return;
|
|
}
|
|
|
|
// fn_022B6F2C @ 0x22b6f2c
|
|
void Gambit_fn_022B6F2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022B6F2C: ; // 0x22b6f2c
|
|
/* 022B6F2C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022B6F2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B6F2C */ cpu->r[1] = _t0;
|
|
/* 022B6F30 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B6F30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B6F34 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B6F38 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 022B6F38 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B6F3C */ _t3 = cpu->r[31] + 0x00000144u;
|
|
/* 022B6F3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B6F40 */ _t4 = cpu->r[31] + 0x00000188u;
|
|
/* 022B6F40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B6F44 */ _t5 = cpu->r[1] + 0x00000030u;
|
|
/* 022B6F44 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022B6F48 */ _t6 = cpu->r[31] + 0x00000140u;
|
|
/* 022B6F48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B6F4C */ _t7 = cpu->r[31] + 0x00000148u;
|
|
/* 022B6F4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B6F50 */ _t8 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6F50 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 022B6F54 */ _t9 = cpu->r[1] + 0x00000034u;
|
|
/* 022B6F54 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022B6F58 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 022B6F58 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B6F5C */ _t11 = cpu->r[10] + 0x00000024u;
|
|
/* 022B6F5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B6F60 */ cpu->ctr = cpu->r[12];
|
|
/* 022B6F64 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B6F68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B6F6C */ _t12 = cpu->r[31] + 0x00000188u;
|
|
/* 022B6F6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B6F70 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 022B6F70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B6F74 */ _t14 = cpu->r[11] + 0x0000002Cu;
|
|
/* 022B6F74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B6F78 */ cpu->ctr = cpu->r[9];
|
|
/* 022B6F7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B6F80 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 022B6F80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B6F84 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B6F88 */ _t16 = cpu->r[12] + 0x00003B48u;
|
|
/* 022B6F88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B6F8C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022B6F8C */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B6F90 */ _t18 = cpu->r[3] + 0x00000004u;
|
|
/* 022B6F90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B6F94 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B6F98 */ _t19 = cpu->r[31] + 0x00000144u;
|
|
/* 022B6F98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B6F9C */ cpu->r[5] = 0x101F0000u;
|
|
/* 022B6FA0 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6FA0 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 022B6FA4 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B6FA8 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 022B6FA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B6FAC */ cpu->f[13] = cpu->f[0] + cpu->f[13];
|
|
/* 022B6FB0 */ _t22 = cpu->r[10] + 0x00003B40u;
|
|
/* 022B6FB0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B6FB4 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 022B6FB8 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6FB8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 022B6FBC */ cpu->r[3] = cpu->r[31];
|
|
/* 022B6FC0 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B6FC0 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 022B6FC4 */ Gambit_fn_022B5194(cpu);
|
|
/* 022B6FC8 */ _t25 = cpu->r[31] + 0x00000148u;
|
|
/* 022B6FC8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B6FCC */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022B6FCC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B6FD0 */ /* nop */
|
|
/* 022B6FD4 */ cpu->f[12] = cpu->f[10] - cpu->f[12];
|
|
/* 022B6FD8 */ /* nop */
|
|
/* 022B6FDC */ /* nop */
|
|
/* 022B6FE0 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B6FE0 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[12]);
|
|
/* 022B6FE4 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B6FE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B6FE8 */ /* nop */
|
|
/* 022B6FEC */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 022B6FEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B6FF0 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 022B6FF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B6FF4 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6FF4 */ rbrew_write32(cpu->mem, _t31, cpu->r[11]);
|
|
/* 022B6FF8 */ _t32 = cpu->r[1] + 0x00000024u;
|
|
/* 022B6FF8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B6FFC */ _t33 = cpu->r[1] + 0x00000020u;
|
|
/* 022B6FFC */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 022B7000 */ cpu->f[9] = cpu->f[12] * cpu->f[12];
|
|
/* 022B7004 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 022B7004 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B7008 */ _t35 = cpu->r[1] + 0x00000028u;
|
|
/* 022B7008 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 022B700C */ cpu->f[11] = fma(cpu->f[13], cpu->f[13], cpu->f[9]);
|
|
/* 022B7010 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 022B7010 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B7014 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B7018 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 022B701C */ _t37 = cpu->r[9] + 0x000037DCu;
|
|
/* 022B701C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B7020 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 022B7024 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B7024 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022B7024 */ if (_t39) goto L_022B7028; else goto L_022B7038;
|
|
L_022B7028: ; // 0x22b7028
|
|
/* 022B7028 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B702C */ cpu->r[4] = 0x00000010u;
|
|
/* 022B7030 */ Gambit_fn_022B7BBC(cpu);
|
|
/* 022B7034 */ goto L_022B7070;
|
|
L_022B7038: ; // 0x22b7038
|
|
/* 022B7038 */ _t40 = cpu->r[31] + 0x00000070u;
|
|
/* 022B7038 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022B703C */ _t41 = cpu->r[12] + 0x00000034u;
|
|
/* 022B703C */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
/* 022B7040 */ _t42 = cpu->r[12] + 0x00000038u;
|
|
/* 022B7040 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[12]);
|
|
/* 022B7044 */ _t43 = cpu->r[12] + 0x0000003Cu;
|
|
/* 022B7044 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[10]);
|
|
/* 022B7048 */ _t44 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022B7048 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B704C */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B704C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B7050 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7050 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022B7050 */ if (_t46) goto L_022B7070; else goto L_022B7054;
|
|
L_022B7054: ; // 0x22b7054
|
|
/* 022B7054 */ _t47 = cpu->r[31] + 0x000002BCu;
|
|
/* 022B7054 */ cpu->r[9] = rbrew_read16(cpu->mem, _t47);
|
|
/* 022B7058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B705C */ cpu->r[4] = 0x00000004u;
|
|
/* 022B7060 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7060 */ _t49 = _t48 & 0x00000001u;
|
|
/* 022B7060 */ if (_t49) goto L_022B7068; else goto L_022B7064;
|
|
L_022B7064: ; // 0x22b7064
|
|
/* 022B7064 */ cpu->r[4] = 0x00000008u;
|
|
L_022B7068: ; // 0x22b7068
|
|
/* 022B7068 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B706C */ Gambit_fn_022B7BBC(cpu);
|
|
L_022B7070: ; // 0x22b7070
|
|
/* 022B7070 */ _t50 = cpu->r[1] + 0x00000044u;
|
|
/* 022B7070 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022B7074 */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B7074 */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B7078 */ cpu->lr = cpu->r[0];
|
|
/* 022B707C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B7080 */ return;
|
|
}
|
|
|
|
// fn_022B7084 @ 0x22b7084
|
|
void Gambit_fn_022B7084(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43;
|
|
|
|
L_022B7084: ; // 0x22b7084
|
|
/* 022B7084 */ cpu->r[0] = cpu->lr;
|
|
/* 022B7088 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B708C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022B708C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022B7090 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B7094 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B7094 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022B7094 */ cpu->r[1] = _t1;
|
|
/* 022B7098 */ _t2 = cpu->r[11] + 0x000037E8u;
|
|
/* 022B7098 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022B709C */ cpu->r[5] = 0x101E0000u;
|
|
/* 022B70A0 */ _t3 = cpu->r[6] + 0x00003B80u;
|
|
/* 022B70A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B70A4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022B70A8 */ _t4 = cpu->r[5] + 0x00003A60u;
|
|
/* 022B70A8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[13]);
|
|
/* 022B70A8 */ cpu->r[5] = _t4;
|
|
/* 022B70AC */ cpu->r[7] = 0x10060000u;
|
|
/* 022B70B0 */ _t5 = cpu->r[11] + 0x00003A84u;
|
|
/* 022B70B0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[11]);
|
|
/* 022B70B0 */ cpu->r[11] = _t5;
|
|
/* 022B70B4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B70B8 */ _t6 = cpu->r[7] + 0x00003B74u;
|
|
/* 022B70B8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B70BC */ _t7 = cpu->r[12] + 0x000037D8u;
|
|
/* 022B70BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B70C0 */ _t8 = cpu->r[5] + 0x00000004u;
|
|
/* 022B70C0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[9]);
|
|
/* 022B70C4 */ _t9 = cpu->r[11] + 0x00000004u;
|
|
/* 022B70C4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[11]);
|
|
/* 022B70C8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B70CC */ _t10 = cpu->r[5] + 0x00000008u;
|
|
/* 022B70CC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 022B70D0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B70D4 */ _t11 = cpu->r[9] + 0x000037DCu;
|
|
/* 022B70D4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B70D8 */ cpu->r[9] = 0x101E0000u;
|
|
/* 022B70DC */ _t12 = cpu->r[6] + 0x00003B84u;
|
|
/* 022B70DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B70E0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B70E4 */ _t13 = cpu->r[9] + 0x00003A78u;
|
|
/* 022B70E4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 022B70E4 */ cpu->r[9] = _t13;
|
|
/* 022B70E8 */ _t14 = cpu->r[9] + 0x00000004u;
|
|
/* 022B70E8 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 022B70EC */ cpu->r[12] = 0x101E0000u;
|
|
/* 022B70F0 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 022B70F0 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 022B70F4 */ cpu->r[9] = 0x101E0000u;
|
|
/* 022B70F8 */ _t16 = cpu->r[12] + 0x00003A90u;
|
|
/* 022B70F8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 022B70F8 */ cpu->r[12] = _t16;
|
|
/* 022B70FC */ cpu->r[8] = 0x101E0000u;
|
|
/* 022B7100 */ _t17 = cpu->r[10] + 0x00003B7Cu;
|
|
/* 022B7100 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B7104 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B7108 */ _t18 = cpu->r[11] + 0x00000008u;
|
|
/* 022B7108 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 022B710C */ cpu->r[5] = 0x10060000u;
|
|
/* 022B7110 */ _t19 = cpu->r[5] + 0x00003B78u;
|
|
/* 022B7110 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B7114 */ cpu->r[10] = cpu->r[10] + 0x00003814u;
|
|
/* 022B7118 */ _t20 = cpu->r[8] + 0x00003A6Cu;
|
|
/* 022B7118 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 022B7118 */ cpu->r[8] = _t20;
|
|
/* 022B711C */ cpu->r[11] = 0x101E0000u;
|
|
/* 022B7120 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 022B7120 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[9]);
|
|
/* 022B7124 */ cpu->r[9] = cpu->r[9] + 0x00003A2Cu;
|
|
/* 022B7128 */ _t22 = cpu->r[8] + 0x00000008u;
|
|
/* 022B7128 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[10]);
|
|
/* 022B712C */ cpu->r[8] = 0x10060000u;
|
|
/* 022B7130 */ _t23 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7130 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 022B7134 */ cpu->r[8] = cpu->r[8] + 0x00003B90u;
|
|
/* 022B7138 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B713C */ _t24 = cpu->r[9] + 0x00000004u;
|
|
/* 022B713C */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 022B7140 */ cpu->r[0] = cpu->r[0] + 0x00003BACu;
|
|
/* 022B7144 */ _t25 = cpu->r[9] + 0x00000000u;
|
|
/* 022B7144 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 022B7148 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B714C */ _t26 = cpu->r[9] + 0x0000000Cu;
|
|
/* 022B714C */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 022B7150 */ cpu->r[8] = cpu->r[8] + 0x000038D4u;
|
|
/* 022B7154 */ _t27 = cpu->r[9] + 0x00000008u;
|
|
/* 022B7154 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022B7158 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022B715C */ _t28 = cpu->r[12] + 0x00000008u;
|
|
/* 022B715C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 022B7160 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B7164 */ _t29 = cpu->r[11] + 0x00003A54u;
|
|
/* 022B7164 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 022B7164 */ cpu->r[11] = _t29;
|
|
/* 022B7168 */ _t30 = cpu->r[11] + 0x00000004u;
|
|
/* 022B7168 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 022B716C */ cpu->r[0] = cpu->r[0] + 0x00007D2Cu;
|
|
/* 022B7170 */ cpu->r[3] = 0x101E0000u;
|
|
/* 022B7174 */ _t31 = cpu->r[11] + 0x00000008u;
|
|
/* 022B7174 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 022B7178 */ cpu->r[3] = cpu->r[3] + 0x00003A9Cu;
|
|
/* 022B717C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B7180 */ _t32 = cpu->r[3] + 0x00000008u;
|
|
/* 022B7180 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]);
|
|
/* 022B7184 */ cpu->r[11] = cpu->r[11] + 0x00003B88u;
|
|
/* 022B7188 */ _t33 = cpu->r[9] + 0x00000014u;
|
|
/* 022B7188 */ rbrew_write32(cpu->mem, _t33, cpu->r[10]);
|
|
/* 022B718C */ cpu->r[12] = cpu->r[12] + 0x00003BA0u;
|
|
/* 022B7190 */ _t34 = cpu->r[9] + 0x00000010u;
|
|
/* 022B7190 */ rbrew_write32(cpu->mem, _t34, cpu->r[11]);
|
|
/* 022B7194 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B7198 */ _t35 = cpu->r[3] + 0x00000010u;
|
|
/* 022B7198 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 022B719C */ cpu->r[7] = cpu->r[7] + 0x00003BB8u;
|
|
/* 022B71A0 */ _t36 = cpu->r[9] + 0x0000001Cu;
|
|
/* 022B71A0 */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 022B71A4 */ _t37 = cpu->r[9] + 0x00000018u;
|
|
/* 022B71A4 */ rbrew_write32(cpu->mem, _t37, cpu->r[12]);
|
|
/* 022B71A8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B71AC */ _t38 = cpu->r[3] + 0x00000000u;
|
|
/* 022B71AC */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 022B71B0 */ _t39 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B71B0 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 022B71B4 */ _t40 = cpu->r[9] + 0x00000024u;
|
|
/* 022B71B4 */ rbrew_write32(cpu->mem, _t40, cpu->r[10]);
|
|
/* 022B71B8 */ cpu->r[5] = cpu->r[5] + 0x00003B98u;
|
|
/* 022B71BC */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 022B71BC */ rbrew_write32(cpu->mem, _t41, cpu->r[10]);
|
|
/* 022B71C0 */ _t42 = cpu->r[9] + 0x00000020u;
|
|
/* 022B71C0 */ rbrew_write32(cpu->mem, _t42, cpu->r[5]);
|
|
/* 022B71C4 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022B71C8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022B71CC */ cpu->r[3] = cpu->r[3] + 0x000056E0u;
|
|
/* 022B71D0 */ Gambit_fn_02C83090(cpu);
|
|
/* 022B71D4 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B71D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B71D8 */ cpu->lr = cpu->r[0];
|
|
/* 022B71DC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B71E0 */ return;
|
|
}
|
|
|
|
// fn_022B7094 @ 0x22b7094
|
|
void Gambit_fn_022B7094(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022B7094: ; // 0x22b7094
|
|
/* 022B7094 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B7094 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7094 */ cpu->r[1] = _t0;
|
|
/* 022B7098 */ _t1 = cpu->r[11] + 0x000037E8u;
|
|
/* 022B7098 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022B709C */ cpu->r[5] = 0x101E0000u;
|
|
/* 022B70A0 */ _t2 = cpu->r[6] + 0x00003B80u;
|
|
/* 022B70A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022B70A4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022B70A8 */ _t3 = cpu->r[5] + 0x00003A60u;
|
|
/* 022B70A8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 022B70A8 */ cpu->r[5] = _t3;
|
|
/* 022B70AC */ cpu->r[7] = 0x10060000u;
|
|
/* 022B70B0 */ _t4 = cpu->r[11] + 0x00003A84u;
|
|
/* 022B70B0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[11]);
|
|
/* 022B70B0 */ cpu->r[11] = _t4;
|
|
/* 022B70B4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B70B8 */ _t5 = cpu->r[7] + 0x00003B74u;
|
|
/* 022B70B8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B70BC */ _t6 = cpu->r[12] + 0x000037D8u;
|
|
/* 022B70BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B70C0 */ _t7 = cpu->r[5] + 0x00000004u;
|
|
/* 022B70C0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[9]);
|
|
/* 022B70C4 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 022B70C4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[11]);
|
|
/* 022B70C8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B70CC */ _t9 = cpu->r[5] + 0x00000008u;
|
|
/* 022B70CC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 022B70D0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B70D4 */ _t10 = cpu->r[9] + 0x000037DCu;
|
|
/* 022B70D4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B70D8 */ cpu->r[9] = 0x101E0000u;
|
|
/* 022B70DC */ _t11 = cpu->r[6] + 0x00003B84u;
|
|
/* 022B70DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B70E0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B70E4 */ _t12 = cpu->r[9] + 0x00003A78u;
|
|
/* 022B70E4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 022B70E4 */ cpu->r[9] = _t12;
|
|
/* 022B70E8 */ _t13 = cpu->r[9] + 0x00000004u;
|
|
/* 022B70E8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 022B70EC */ cpu->r[12] = 0x101E0000u;
|
|
/* 022B70F0 */ _t14 = cpu->r[9] + 0x00000008u;
|
|
/* 022B70F0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 022B70F4 */ cpu->r[9] = 0x101E0000u;
|
|
/* 022B70F8 */ _t15 = cpu->r[12] + 0x00003A90u;
|
|
/* 022B70F8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[11]);
|
|
/* 022B70F8 */ cpu->r[12] = _t15;
|
|
/* 022B70FC */ cpu->r[8] = 0x101E0000u;
|
|
/* 022B7100 */ _t16 = cpu->r[10] + 0x00003B7Cu;
|
|
/* 022B7100 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B7104 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B7108 */ _t17 = cpu->r[11] + 0x00000008u;
|
|
/* 022B7108 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 022B710C */ cpu->r[5] = 0x10060000u;
|
|
/* 022B7110 */ _t18 = cpu->r[5] + 0x00003B78u;
|
|
/* 022B7110 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B7114 */ cpu->r[10] = cpu->r[10] + 0x00003814u;
|
|
/* 022B7118 */ _t19 = cpu->r[8] + 0x00003A6Cu;
|
|
/* 022B7118 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 022B7118 */ cpu->r[8] = _t19;
|
|
/* 022B711C */ cpu->r[11] = 0x101E0000u;
|
|
/* 022B7120 */ _t20 = cpu->r[8] + 0x00000004u;
|
|
/* 022B7120 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[9]);
|
|
/* 022B7124 */ cpu->r[9] = cpu->r[9] + 0x00003A2Cu;
|
|
/* 022B7128 */ _t21 = cpu->r[8] + 0x00000008u;
|
|
/* 022B7128 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[10]);
|
|
/* 022B712C */ cpu->r[8] = 0x10060000u;
|
|
/* 022B7130 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7130 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 022B7134 */ cpu->r[8] = cpu->r[8] + 0x00003B90u;
|
|
/* 022B7138 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B713C */ _t23 = cpu->r[9] + 0x00000004u;
|
|
/* 022B713C */ rbrew_write32(cpu->mem, _t23, cpu->r[10]);
|
|
/* 022B7140 */ cpu->r[0] = cpu->r[0] + 0x00003BACu;
|
|
/* 022B7144 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022B7144 */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 022B7148 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B714C */ _t25 = cpu->r[9] + 0x0000000Cu;
|
|
/* 022B714C */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 022B7150 */ cpu->r[8] = cpu->r[8] + 0x000038D4u;
|
|
/* 022B7154 */ _t26 = cpu->r[9] + 0x00000008u;
|
|
/* 022B7154 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 022B7158 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022B715C */ _t27 = cpu->r[12] + 0x00000008u;
|
|
/* 022B715C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 022B7160 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B7164 */ _t28 = cpu->r[11] + 0x00003A54u;
|
|
/* 022B7164 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 022B7164 */ cpu->r[11] = _t28;
|
|
/* 022B7168 */ _t29 = cpu->r[11] + 0x00000004u;
|
|
/* 022B7168 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 022B716C */ cpu->r[0] = cpu->r[0] + 0x00007D2Cu;
|
|
/* 022B7170 */ cpu->r[3] = 0x101E0000u;
|
|
/* 022B7174 */ _t30 = cpu->r[11] + 0x00000008u;
|
|
/* 022B7174 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 022B7178 */ cpu->r[3] = cpu->r[3] + 0x00003A9Cu;
|
|
/* 022B717C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B7180 */ _t31 = cpu->r[3] + 0x00000008u;
|
|
/* 022B7180 */ rbrew_write32(cpu->mem, _t31, cpu->r[8]);
|
|
/* 022B7184 */ cpu->r[11] = cpu->r[11] + 0x00003B88u;
|
|
/* 022B7188 */ _t32 = cpu->r[9] + 0x00000014u;
|
|
/* 022B7188 */ rbrew_write32(cpu->mem, _t32, cpu->r[10]);
|
|
/* 022B718C */ cpu->r[12] = cpu->r[12] + 0x00003BA0u;
|
|
/* 022B7190 */ _t33 = cpu->r[9] + 0x00000010u;
|
|
/* 022B7190 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]);
|
|
/* 022B7194 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B7198 */ _t34 = cpu->r[3] + 0x00000010u;
|
|
/* 022B7198 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 022B719C */ cpu->r[7] = cpu->r[7] + 0x00003BB8u;
|
|
/* 022B71A0 */ _t35 = cpu->r[9] + 0x0000001Cu;
|
|
/* 022B71A0 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 022B71A4 */ _t36 = cpu->r[9] + 0x00000018u;
|
|
/* 022B71A4 */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 022B71A8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B71AC */ _t37 = cpu->r[3] + 0x00000000u;
|
|
/* 022B71AC */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 022B71B0 */ _t38 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B71B0 */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
/* 022B71B4 */ _t39 = cpu->r[9] + 0x00000024u;
|
|
/* 022B71B4 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 022B71B8 */ cpu->r[5] = cpu->r[5] + 0x00003B98u;
|
|
/* 022B71BC */ _t40 = cpu->r[3] + 0x00000004u;
|
|
/* 022B71BC */ rbrew_write32(cpu->mem, _t40, cpu->r[10]);
|
|
/* 022B71C0 */ _t41 = cpu->r[9] + 0x00000020u;
|
|
/* 022B71C0 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 022B71C4 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022B71C8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022B71CC */ cpu->r[3] = cpu->r[3] + 0x000056E0u;
|
|
/* 022B71D0 */ Gambit_fn_02C83090(cpu);
|
|
/* 022B71D4 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B71D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B71D8 */ cpu->lr = cpu->r[0];
|
|
/* 022B71DC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B71E0 */ return;
|
|
}
|
|
|
|
// fn_022B71E4 @ 0x22b71e4
|
|
void Gambit_fn_022B71E4(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_022B71E4: ; // 0x22b71e4
|
|
/* 022B71E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B71E8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B71E8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B71E8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B71E8 */ goto L_022B71EC;
|
|
L_022B71EC: ; // 0x22b71ec
|
|
/* 022B71EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B71EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B71F0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B71F0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B71F0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B71F0 */ goto L_022B71F4;
|
|
L_022B71F4: ; // 0x22b71f4
|
|
/* 022B71F4 */ 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_022B71F8 @ 0x22b71f8
|
|
void Gambit_fn_022B71F8(CPUState* cpu) {
|
|
L_022B71F8: ; // 0x22b71f8
|
|
/* 022B71F8 */ return;
|
|
}
|
|
|
|
// fn_022B71FC @ 0x22b71fc
|
|
void Gambit_fn_022B71FC(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_022B71FC: ; // 0x22b71fc
|
|
/* 022B71FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B7200 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7200 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B7200 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B7200 */ goto L_022B7204;
|
|
L_022B7204: ; // 0x22b7204
|
|
/* 022B7204 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B7204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B7208 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7208 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B7208 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B7208 */ goto L_022B720C;
|
|
L_022B720C: ; // 0x22b720c
|
|
/* 022B720C */ 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_022B7210 @ 0x22b7210
|
|
void Gambit_fn_022B7210(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022B7210: ; // 0x22b7210
|
|
/* 022B7210 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 022B7210 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B7214 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 022B7214 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B7218 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 022B721C */ cpu->r[11] = 0x10110000u;
|
|
/* 022B7220 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 022B7220 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022B7224 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022B7224 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 022B7228 */ return;
|
|
}
|
|
|
|
// fn_022B722C @ 0x22b722c
|
|
void Gambit_fn_022B722C(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_022B722C: ; // 0x22b722c
|
|
/* 022B722C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B7230 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7230 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B7230 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B7230 */ goto L_022B7234;
|
|
L_022B7234: ; // 0x22b7234
|
|
/* 022B7234 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B7234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B7238 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7238 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B7238 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B7238 */ goto L_022B723C;
|
|
L_022B723C: ; // 0x22b723c
|
|
/* 022B723C */ 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_022B7240 @ 0x22b7240
|
|
void Gambit_fn_022B7240(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_022B7240: ; // 0x22b7240
|
|
/* 022B7240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B7244 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7244 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B7244 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B7244 */ goto L_022B7248;
|
|
L_022B7248: ; // 0x22b7248
|
|
/* 022B7248 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B7248 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B724C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B724C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B724C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B724C */ goto L_022B7250;
|
|
L_022B7250: ; // 0x22b7250
|
|
/* 022B7250 */ 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_022B7254 @ 0x22b7254
|
|
void Gambit_fn_022B7254(CPUState* cpu) {
|
|
L_022B7254: ; // 0x22b7254
|
|
/* 022B7254 */ return;
|
|
}
|
|
|
|
// fn_022B7258 @ 0x22b7258
|
|
void Gambit_fn_022B7258(CPUState* cpu) {
|
|
L_022B7258: ; // 0x22b7258
|
|
/* 022B7258 */ return;
|
|
}
|
|
|
|
// fn_022B725C @ 0x22b725c
|
|
void Gambit_fn_022B725C(CPUState* cpu) {
|
|
L_022B725C: ; // 0x22b725c
|
|
/* 022B725C */ return;
|
|
}
|
|
|
|
// fn_022B7260 @ 0x22b7260
|
|
void Gambit_fn_022B7260(CPUState* cpu) {
|
|
L_022B7260: ; // 0x22b7260
|
|
/* 022B7260 */ return;
|
|
}
|
|
|
|
// fn_022B7264 @ 0x22b7264
|
|
void Gambit_fn_022B7264(CPUState* cpu) {
|
|
L_022B7264: ; // 0x22b7264
|
|
/* 022B7264 */ return;
|
|
}
|
|
|
|
// fn_022B7268 @ 0x22b7268
|
|
void Gambit_fn_022B7268(CPUState* cpu) {
|
|
L_022B7268: ; // 0x22b7268
|
|
/* 022B7268 */ return;
|
|
}
|
|
|
|
// fn_022B726C @ 0x22b726c
|
|
void Gambit_fn_022B726C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022B726C: ; // 0x22b726c
|
|
/* 022B726C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022B726C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B7270 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B7274 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7274 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B7274 */ if (_t2) goto L_022B7280; else goto L_022B7278;
|
|
L_022B7278: ; // 0x22b7278
|
|
/* 022B7278 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 022B727C */ return;
|
|
L_022B7280: ; // 0x22b7280
|
|
/* 022B7280 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B7284 */ return;
|
|
}
|
|
|
|
// fn_022B7288 @ 0x22b7288
|
|
void Gambit_fn_022B7288(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022B7288: ; // 0x22b7288
|
|
/* 022B7288 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022B7288 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B728C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B7290 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7290 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B7290 */ if (_t2) goto L_022B729C; else goto L_022B7294;
|
|
L_022B7294: ; // 0x22b7294
|
|
/* 022B7294 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 022B7298 */ return;
|
|
L_022B729C: ; // 0x22b729c
|
|
/* 022B729C */ cpu->r[3] = 0x00000000u;
|
|
/* 022B72A0 */ return;
|
|
}
|
|
|
|
// fn_022B72A4 @ 0x22b72a4
|
|
void Gambit_fn_022B72A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B72A4: ; // 0x22b72a4
|
|
/* 022B72A4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B72A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B72A8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B72A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B72AC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B72AC */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B72AC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022B72AC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B72AC */ goto L_022B72B0;
|
|
L_022B72B0: ; // 0x22b72b0
|
|
/* 022B72B0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022B72B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B72B4 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 022B72B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B72B8 */ cpu->ctr = cpu->r[0];
|
|
/* 022B72BC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B72C0 @ 0x22b72c0
|
|
void Gambit_fn_022B72C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B72C0: ; // 0x22b72c0
|
|
/* 022B72C0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B72C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B72C4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B72C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B72C8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B72C8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B72C8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022B72C8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B72C8 */ goto L_022B72CC;
|
|
L_022B72CC: ; // 0x22b72cc
|
|
/* 022B72CC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022B72CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B72D0 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 022B72D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B72D4 */ cpu->ctr = cpu->r[0];
|
|
/* 022B72D8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B72DC @ 0x22b72dc
|
|
void Gambit_fn_022B72DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B72DC: ; // 0x22b72dc
|
|
/* 022B72DC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B72DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B72E0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B72E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B72E4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B72E4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B72E4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022B72E4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B72E4 */ goto L_022B72E8;
|
|
L_022B72E8: ; // 0x22b72e8
|
|
/* 022B72E8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022B72E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B72EC */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 022B72EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B72F0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B72F4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B72F8 @ 0x22b72f8
|
|
void Gambit_fn_022B72F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B72F8: ; // 0x22b72f8
|
|
/* 022B72F8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B72F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B72FC */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022B72FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B7300 */ cpu->ctr = cpu->r[0];
|
|
/* 022B7304 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B7308 @ 0x22b7308
|
|
void Gambit_fn_022B7308(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022B7308: ; // 0x22b7308
|
|
/* 022B7308 */ cpu->r[0] = cpu->lr;
|
|
/* 022B730C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B730C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B730C */ cpu->r[1] = _t0;
|
|
/* 022B7310 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7310 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B7314 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B7318 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7318 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B731C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B731C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B7320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022B7324 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7324 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B7324 */ if (_t5) goto L_022B7328; else goto L_022B7344;
|
|
L_022B7328: ; // 0x22b7328
|
|
/* 022B7328 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022B7328 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B732C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022B732C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B7330 */ cpu->ctr = cpu->r[0];
|
|
/* 022B7334 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7338 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B733C */ cpu->r[0] = 0x00000002u;
|
|
/* 022B7340 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B7340 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022B7344: ; // 0x22b7344
|
|
/* 022B7344 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7344 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B7348 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7348 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B734C */ cpu->lr = cpu->r[0];
|
|
/* 022B7350 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7354 */ return;
|
|
}
|
|
|
|
// fn_022B730C @ 0x22b730c
|
|
void Gambit_fn_022B730C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022B730C: ; // 0x22b730c
|
|
/* 022B730C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B730C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B730C */ cpu->r[1] = _t0;
|
|
/* 022B7310 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7310 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B7314 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B7318 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7318 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B731C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B731C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B7320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022B7324 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7324 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B7324 */ if (_t5) goto L_022B7328; else goto L_022B7344;
|
|
L_022B7328: ; // 0x22b7328
|
|
/* 022B7328 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022B7328 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B732C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022B732C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B7330 */ cpu->ctr = cpu->r[0];
|
|
/* 022B7334 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7338 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B733C */ cpu->r[0] = 0x00000002u;
|
|
/* 022B7340 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B7340 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022B7344: ; // 0x22b7344
|
|
/* 022B7344 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7344 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B7348 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7348 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B734C */ cpu->lr = cpu->r[0];
|
|
/* 022B7350 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7354 */ return;
|
|
}
|
|
|
|
// fn_022B7360 @ 0x22b7360
|
|
void Gambit_fn_022B7360(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_022B7360: ; // 0x22b7360
|
|
/* 022B7360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B7364 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7364 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B7364 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B7364 */ goto L_022B7368;
|
|
L_022B7368: ; // 0x22b7368
|
|
/* 022B7368 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B7368 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B736C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B736C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B736C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B736C */ goto L_022B7370;
|
|
L_022B7370: ; // 0x22b7370
|
|
/* 022B7370 */ 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_022B7374 @ 0x22b7374
|
|
void Gambit_fn_022B7374(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B7374: ; // 0x22b7374
|
|
/* 022B7374 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B7374 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B7378 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 022B7378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B737C */ cpu->ctr = cpu->r[0];
|
|
/* 022B7380 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B7384 @ 0x22b7384
|
|
void Gambit_fn_022B7384(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B7384: ; // 0x22b7384
|
|
/* 022B7384 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B7384 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B7388 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022B7388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B738C */ cpu->ctr = cpu->r[0];
|
|
/* 022B7390 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B7394 @ 0x22b7394
|
|
void Gambit_fn_022B7394(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B7394: ; // 0x22b7394
|
|
/* 022B7394 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B7394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B7398 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022B7398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B739C */ cpu->ctr = cpu->r[0];
|
|
/* 022B73A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B73A4 @ 0x22b73a4
|
|
void Gambit_fn_022B73A4(CPUState* cpu) {
|
|
L_022B73A4: ; // 0x22b73a4
|
|
/* 022B73A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B73A8 */ return;
|
|
}
|
|
|
|
// fn_022B73AC @ 0x22b73ac
|
|
void Gambit_fn_022B73AC(CPUState* cpu) {
|
|
L_022B73AC: ; // 0x22b73ac
|
|
/* 022B73AC */ return;
|
|
}
|
|
|
|
// fn_022B73B0 @ 0x22b73b0
|
|
void Gambit_fn_022B73B0(CPUState* cpu) {
|
|
L_022B73B0: ; // 0x22b73b0
|
|
/* 022B73B0 */ return;
|
|
}
|
|
|
|
// fn_022B73B4 @ 0x22b73b4
|
|
void Gambit_fn_022B73B4(CPUState* cpu) {
|
|
L_022B73B4: ; // 0x22b73b4
|
|
/* 022B73B4 */ return;
|
|
}
|
|
|
|
// fn_022B73B8 @ 0x22b73b8
|
|
void Gambit_fn_022B73B8(CPUState* cpu) {
|
|
L_022B73B8: ; // 0x22b73b8
|
|
/* 022B73B8 */ return;
|
|
}
|
|
|
|
// fn_022B73BC @ 0x22b73bc
|
|
void Gambit_fn_022B73BC(CPUState* cpu) {
|
|
L_022B73BC: ; // 0x22b73bc
|
|
/* 022B73BC */ return;
|
|
}
|
|
|
|
// fn_022B73C0 @ 0x22b73c0
|
|
void Gambit_fn_022B73C0(CPUState* cpu) {
|
|
L_022B73C0: ; // 0x22b73c0
|
|
/* 022B73C0 */ return;
|
|
}
|
|
|
|
// fn_022B73C4 @ 0x22b73c4
|
|
void Gambit_fn_022B73C4(CPUState* cpu) {
|
|
L_022B73C4: ; // 0x22b73c4
|
|
/* 022B73C4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B73C8 */ return;
|
|
}
|
|
|
|
// fn_022B73CC @ 0x22b73cc
|
|
void Gambit_fn_022B73CC(CPUState* cpu) {
|
|
L_022B73CC: ; // 0x22b73cc
|
|
/* 022B73CC */ cpu->r[3] = 0x00000000u;
|
|
/* 022B73D0 */ return;
|
|
}
|
|
|
|
// fn_022B73D4 @ 0x22b73d4
|
|
void Gambit_fn_022B73D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022B73D4: ; // 0x22b73d4
|
|
/* 022B73D4 */ cpu->r[0] = cpu->lr;
|
|
/* 022B73D8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B73D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B73D8 */ cpu->r[1] = _t0;
|
|
/* 022B73DC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B73DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B73E0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B73E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B73E4 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022B73E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B73E8 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022B73E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B73EC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B73F0 */ cpu->ctr = cpu->r[9];
|
|
/* 022B73F4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B73F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B73FC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B73FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B7400 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7400 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B7404 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022B7404 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B7408 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022B7408 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022B740C */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022B740C */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022B7410 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B7410 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022B7414 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B7414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7418 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B741C */ cpu->lr = cpu->r[0];
|
|
/* 022B7420 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B7424 */ return;
|
|
}
|
|
|
|
// fn_022B73D8 @ 0x22b73d8
|
|
void Gambit_fn_022B73D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022B73D8: ; // 0x22b73d8
|
|
/* 022B73D8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B73D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B73D8 */ cpu->r[1] = _t0;
|
|
/* 022B73DC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B73DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B73E0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B73E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B73E4 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022B73E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B73E8 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022B73E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B73EC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B73F0 */ cpu->ctr = cpu->r[9];
|
|
/* 022B73F4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B73F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B73FC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B73FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B7400 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7400 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B7404 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022B7404 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B7408 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022B7408 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022B740C */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022B740C */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022B7410 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B7410 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022B7414 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B7414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7418 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B741C */ cpu->lr = cpu->r[0];
|
|
/* 022B7420 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B7424 */ return;
|
|
}
|
|
|
|
// fn_022B7428 @ 0x22b7428
|
|
void Gambit_fn_022B7428(CPUState* cpu) {
|
|
L_022B7428: ; // 0x22b7428
|
|
/* 022B7428 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B742C */ return;
|
|
}
|
|
|
|
// fn_022B7430 @ 0x22b7430
|
|
void Gambit_fn_022B7430(CPUState* cpu) {
|
|
L_022B7430: ; // 0x22b7430
|
|
/* 022B7430 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B7434 */ return;
|
|
}
|
|
|
|
// fn_022B7438 @ 0x22b7438
|
|
void Gambit_fn_022B7438(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B7438: ; // 0x22b7438
|
|
/* 022B7438 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B743C */ _t0 = cpu->r[12] + 0x000037E8u;
|
|
/* 022B743C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B7440 */ return;
|
|
}
|
|
|
|
// fn_022B7444 @ 0x22b7444
|
|
void Gambit_fn_022B7444(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022B7444: ; // 0x22b7444
|
|
/* 022B7444 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022B7444 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B7448 */ _t1 = cpu->r[12] + 0x000002B4u;
|
|
/* 022B7448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B744C */ cpu->ctr = cpu->r[0];
|
|
/* 022B7450 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B7454 @ 0x22b7454
|
|
void Gambit_fn_022B7454(CPUState* cpu) {
|
|
L_022B7454: ; // 0x22b7454
|
|
/* 022B7454 */ return;
|
|
}
|
|
|
|
// fn_022B7458 @ 0x22b7458
|
|
void Gambit_fn_022B7458(CPUState* cpu) {
|
|
L_022B7458: ; // 0x22b7458
|
|
/* 022B7458 */ return;
|
|
}
|
|
|
|
// fn_022B745C @ 0x22b745c
|
|
void Gambit_fn_022B745C(CPUState* cpu) {
|
|
L_022B745C: ; // 0x22b745c
|
|
/* 022B745C */ return;
|
|
}
|
|
|
|
// fn_022B7460 @ 0x22b7460
|
|
void Gambit_fn_022B7460(CPUState* cpu) {
|
|
L_022B7460: ; // 0x22b7460
|
|
/* 022B7460 */ return;
|
|
}
|
|
|
|
// fn_022B7464 @ 0x22b7464
|
|
void Gambit_fn_022B7464(CPUState* cpu) {
|
|
L_022B7464: ; // 0x22b7464
|
|
/* 022B7464 */ return;
|
|
}
|
|
|
|
// fn_022B7468 @ 0x22b7468
|
|
void Gambit_fn_022B7468(CPUState* cpu) {
|
|
L_022B7468: ; // 0x22b7468
|
|
/* 022B7468 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B746C */ return;
|
|
}
|
|
|
|
// fn_022B7470 @ 0x22b7470
|
|
void Gambit_fn_022B7470(CPUState* cpu) {
|
|
L_022B7470: ; // 0x22b7470
|
|
/* 022B7470 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B7474 */ return;
|
|
}
|
|
|
|
// fn_022B7478 @ 0x22b7478
|
|
void Gambit_fn_022B7478(CPUState* cpu) {
|
|
L_022B7478: ; // 0x22b7478
|
|
/* 022B7478 */ cpu->r[3] = cpu->r[3] + 0x0000011Cu;
|
|
/* 022B747C */ return;
|
|
}
|
|
|
|
// fn_022B7480 @ 0x22b7480
|
|
void Gambit_fn_022B7480(CPUState* cpu) {
|
|
L_022B7480: ; // 0x22b7480
|
|
/* 022B7480 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B7484 */ return;
|
|
}
|
|
|
|
// fn_022B7488 @ 0x22b7488
|
|
void Gambit_fn_022B7488(CPUState* cpu) {
|
|
L_022B7488: ; // 0x22b7488
|
|
/* 022B7488 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B748C */ return;
|
|
}
|
|
|
|
// fn_022B7490 @ 0x22b7490
|
|
void Gambit_fn_022B7490(CPUState* cpu) {
|
|
L_022B7490: ; // 0x22b7490
|
|
/* 022B7490 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B7494 */ return;
|
|
}
|
|
|
|
// fn_022B7498 @ 0x22b7498
|
|
void Gambit_fn_022B7498(CPUState* cpu) {
|
|
L_022B7498: ; // 0x22b7498
|
|
/* 022B7498 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B749C */ return;
|
|
}
|
|
|
|
// fn_022B74A0 @ 0x22b74a0
|
|
void Gambit_fn_022B74A0(CPUState* cpu) {
|
|
L_022B74A0: ; // 0x22b74a0
|
|
/* 022B74A0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B74A4 */ return;
|
|
}
|
|
|
|
// fn_022B74A8 @ 0x22b74a8
|
|
void Gambit_fn_022B74A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B74A8: ; // 0x22b74a8
|
|
/* 022B74A8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B74AC */ _t0 = cpu->r[12] + 0x000037DCu;
|
|
/* 022B74AC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B74B0 */ return;
|
|
}
|
|
|
|
// fn_022B74B4 @ 0x22b74b4
|
|
void Gambit_fn_022B74B4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B74B4: ; // 0x22b74b4
|
|
/* 022B74B4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B74B8 */ _t0 = cpu->r[12] + 0x000037DCu;
|
|
/* 022B74B8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B74BC */ return;
|
|
}
|
|
|
|
// fn_022B74C0 @ 0x22b74c0
|
|
void Gambit_fn_022B74C0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B74C0: ; // 0x22b74c0
|
|
/* 022B74C0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B74C4 */ _t0 = cpu->r[12] + 0x000037DCu;
|
|
/* 022B74C4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B74C8 */ return;
|
|
}
|
|
|
|
// fn_022B74CC @ 0x22b74cc
|
|
void Gambit_fn_022B74CC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022B74CC: ; // 0x22b74cc
|
|
/* 022B74CC */ cpu->r[12] = 0x10060000u;
|
|
/* 022B74D0 */ _t0 = cpu->r[12] + 0x000037DCu;
|
|
/* 022B74D0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022B74D4 */ return;
|
|
}
|
|
|
|
// fn_022B74D8 @ 0x22b74d8
|
|
void Gambit_fn_022B74D8(CPUState* cpu) {
|
|
L_022B74D8: ; // 0x22b74d8
|
|
/* 022B74D8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B74DC */ return;
|
|
}
|
|
|
|
// fn_022B74E0 @ 0x22b74e0
|
|
void Gambit_fn_022B74E0(CPUState* cpu) {
|
|
L_022B74E0: ; // 0x22b74e0
|
|
/* 022B74E0 */ return;
|
|
}
|
|
|
|
// fn_022B74E4 @ 0x22b74e4
|
|
void Gambit_fn_022B74E4(CPUState* cpu) {
|
|
L_022B74E4: ; // 0x22b74e4
|
|
/* 022B74E4 */ return;
|
|
}
|
|
|
|
// fn_022B74E8 @ 0x22b74e8
|
|
void Gambit_fn_022B74E8(CPUState* cpu) {
|
|
L_022B74E8: ; // 0x22b74e8
|
|
/* 022B74E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B74EC */ return;
|
|
}
|
|
|
|
// fn_022B74F0 @ 0x22b74f0
|
|
void Gambit_fn_022B74F0(CPUState* cpu) {
|
|
L_022B74F0: ; // 0x22b74f0
|
|
/* 022B74F0 */ return;
|
|
}
|
|
|
|
// fn_022B74F4 @ 0x22b74f4
|
|
void Gambit_fn_022B74F4(CPUState* cpu) {
|
|
L_022B74F4: ; // 0x22b74f4
|
|
/* 022B74F4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B74F8 */ return;
|
|
}
|
|
|
|
// fn_022B74FC @ 0x22b74fc
|
|
void Gambit_fn_022B74FC(CPUState* cpu) {
|
|
L_022B74FC: ; // 0x22b74fc
|
|
/* 022B74FC */ cpu->r[3] = 0x00000001u;
|
|
/* 022B7500 */ return;
|
|
}
|
|
|
|
// fn_022B7504 @ 0x22b7504
|
|
void Gambit_fn_022B7504(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B7504: ; // 0x22b7504
|
|
/* 022B7504 */ cpu->r[0] = cpu->lr;
|
|
/* 022B7508 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022B7508 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022B750C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022B7510 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B7510 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022B7510 */ cpu->r[1] = _t1;
|
|
/* 022B7514 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7514 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B7514 */ if (_t3) goto L_022B7518; else goto L_022B752C;
|
|
L_022B7518: ; // 0x22b7518
|
|
/* 022B7518 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B751C */ cpu->lr = cpu->r[0];
|
|
/* 022B7520 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B7524 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B7528 */ return;
|
|
L_022B752C: ; // 0x22b752c
|
|
/* 022B752C */ Gambit_fn_022713B8(cpu);
|
|
/* 022B7530 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B7534 */ cpu->lr = cpu->r[0];
|
|
/* 022B7538 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B753C */ cpu->r[3] = 0x00000001u;
|
|
/* 022B7540 */ return;
|
|
}
|
|
|
|
// fn_022B7510 @ 0x22b7510
|
|
void Gambit_fn_022B7510(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022B7510: ; // 0x22b7510
|
|
/* 022B7510 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B7510 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7510 */ cpu->r[1] = _t0;
|
|
/* 022B7514 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7514 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B7514 */ if (_t2) goto L_022B7518; else goto L_022B752C;
|
|
L_022B7518: ; // 0x22b7518
|
|
/* 022B7518 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B751C */ cpu->lr = cpu->r[0];
|
|
/* 022B7520 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B7524 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B7528 */ return;
|
|
L_022B752C: ; // 0x22b752c
|
|
/* 022B752C */ Gambit_fn_022713B8(cpu);
|
|
/* 022B7530 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B7534 */ cpu->lr = cpu->r[0];
|
|
/* 022B7538 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B753C */ cpu->r[3] = 0x00000001u;
|
|
/* 022B7540 */ return;
|
|
}
|
|
|
|
// fn_022B7544 @ 0x22b7544
|
|
void Gambit_fn_022B7544(CPUState* cpu) {
|
|
L_022B7544: ; // 0x22b7544
|
|
/* 022B7544 */ return;
|
|
}
|
|
|
|
// fn_022B7548 @ 0x22b7548
|
|
void Gambit_fn_022B7548(CPUState* cpu) {
|
|
L_022B7548: ; // 0x22b7548
|
|
/* 022B7548 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022B754C */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022B7550 */ return;
|
|
}
|
|
|
|
// fn_022B7554 @ 0x22b7554
|
|
void Gambit_fn_022B7554(CPUState* cpu) {
|
|
L_022B7554: ; // 0x22b7554
|
|
/* 022B7554 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022B7558 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022B755C */ return;
|
|
}
|
|
|
|
// fn_022B7560 @ 0x22b7560
|
|
void Gambit_fn_022B7560(CPUState* cpu) {
|
|
L_022B7560: ; // 0x22b7560
|
|
/* 022B7560 */ return;
|
|
}
|
|
|
|
// fn_022B7564 @ 0x22b7564
|
|
void Gambit_fn_022B7564(CPUState* cpu) {
|
|
L_022B7564: ; // 0x22b7564
|
|
/* 022B7564 */ cpu->r[3] = 0x10060000u;
|
|
/* 022B7568 */ cpu->r[3] = cpu->r[3] + 0x000038E4u;
|
|
/* 022B756C */ return;
|
|
}
|
|
|
|
// fn_022B7570 @ 0x22b7570
|
|
void Gambit_fn_022B7570(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_022B7570: ; // 0x22b7570
|
|
/* 022B7570 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B7574 */ _t0 = cpu->r[9] + 0x0000019Cu;
|
|
/* 022B7574 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022B7578 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022B757C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B7580 */ cpu->r[11] = cpu->r[11] + 0x00000198u;
|
|
/* 022B7584 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7584 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B7584 */ if (_t2) goto L_022B7588; else goto L_022B75A0;
|
|
L_022B7588: ; // 0x22b7588
|
|
/* 022B7588 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B758C */ cpu->r[0] = 0x00000001u;
|
|
/* 022B7590 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B7594 */ cpu->r[9] = cpu->r[9] + 0x000038C4u;
|
|
/* 022B7598 */ _t3 = cpu->r[12] + 0x0000019Cu;
|
|
/* 022B7598 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B759C */ _t4 = cpu->r[11] + 0x00000000u;
|
|
/* 022B759C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_022B75A0: ; // 0x22b75a0
|
|
/* 022B75A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022B75A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B75A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B75A4 */ if (_t6) goto L_022B75A8; else goto L_022B75B0;
|
|
L_022B75A8: ; // 0x22b75a8
|
|
/* 022B75A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B75AC */ return;
|
|
L_022B75B0: ; // 0x22b75b0
|
|
/* 022B75B0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B75B4 */ _t7 = cpu->r[12] + 0xFFFFDAC0u;
|
|
/* 022B75B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B75B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B75BC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B75C0 */ cpu->r[12] = cpu->r[12] + 0xFFFFFBC4u;
|
|
/* 022B75C4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B75C4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B75C4 */ if (_t9) goto L_022B75C8; else goto L_022B75E0;
|
|
L_022B75C8: ; // 0x22b75c8
|
|
/* 022B75C8 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B75CC */ cpu->r[10] = 0x00000001u;
|
|
/* 022B75D0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B75D4 */ cpu->r[11] = cpu->r[11] + 0x000038B4u;
|
|
/* 022B75D8 */ _t10 = cpu->r[9] + 0xFFFFDAC0u;
|
|
/* 022B75D8 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022B75DC */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022B75DC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_022B75E0: ; // 0x22b75e0
|
|
/* 022B75E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022B75E4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B75E4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B75E4 */ if (_t13) goto L_022B75E8; else goto L_022B75F0;
|
|
L_022B75E8: ; // 0x22b75e8
|
|
/* 022B75E8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B75EC */ goto L_022B7664;
|
|
L_022B75F0: ; // 0x22b75f0
|
|
/* 022B75F0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022B75F4 */ _t14 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 022B75F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B75F4 */ cpu->r[10] = _t14;
|
|
/* 022B75F8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022B75FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B7600 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4ECu;
|
|
/* 022B7604 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7604 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B7604 */ if (_t16) goto L_022B7608; else goto L_022B761C;
|
|
L_022B7608: ; // 0x22b7608
|
|
/* 022B7608 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B760C */ cpu->r[0] = 0x00000001u;
|
|
/* 022B7610 */ cpu->r[9] = cpu->r[9] + 0x000038A4u;
|
|
/* 022B7614 */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 022B7614 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B7618 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022B7618 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_022B761C: ; // 0x22b761c
|
|
/* 022B761C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022B7620 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7620 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B7620 */ if (_t20) goto L_022B7624; else goto L_022B762C;
|
|
L_022B7624: ; // 0x22b7624
|
|
/* 022B7624 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B7628 */ goto L_022B7664;
|
|
L_022B762C: ; // 0x22b762c
|
|
/* 022B762C */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B7630 */ _t21 = cpu->r[9] + 0xFFFFD4E0u;
|
|
/* 022B7630 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B7630 */ cpu->r[9] = _t21;
|
|
/* 022B7634 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B7638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B763C */ cpu->r[12] = cpu->r[12] + 0xFFFFD4E4u;
|
|
/* 022B7640 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7640 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B7640 */ if (_t23) goto L_022B7644; else goto L_022B7658;
|
|
L_022B7644: ; // 0x22b7644
|
|
/* 022B7644 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B7648 */ cpu->r[11] = 0x00000001u;
|
|
/* 022B764C */ cpu->r[0] = cpu->r[0] + 0x000037F4u;
|
|
/* 022B7650 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022B7650 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022B7654 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 022B7654 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_022B7658: ; // 0x22b7658
|
|
/* 022B7658 */ cpu->r[9] = cpu->r[4] ^ cpu->r[12];
|
|
/* 022B765C */ cpu->r[0] = rbrew_clz32(cpu->r[9]);
|
|
/* 022B7660 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022B7664: ; // 0x22b7664
|
|
/* 022B7664 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022B7668 */ return;
|
|
}
|
|
|
|
// fn_022B766C @ 0x22b766c
|
|
void Gambit_fn_022B766C(CPUState* cpu) {
|
|
L_022B766C: ; // 0x22b766c
|
|
/* 022B766C */ return;
|
|
}
|
|
|
|
// fn_022B7670 @ 0x22b7670
|
|
void Gambit_fn_022B7670(CPUState* cpu) {
|
|
L_022B7670: ; // 0x22b7670
|
|
/* 022B7670 */ cpu->r[3] = 0x10060000u;
|
|
/* 022B7674 */ cpu->r[3] = cpu->r[3] + 0x000038F4u;
|
|
/* 022B7678 */ return;
|
|
}
|
|
|
|
// fn_022B767C @ 0x22b767c
|
|
void Gambit_fn_022B767C(CPUState* cpu) {
|
|
L_022B767C: ; // 0x22b767c
|
|
/* 022B767C */ cpu->r[3] = 0x00000000u;
|
|
/* 022B7680 */ return;
|
|
}
|
|
|
|
// fn_022B7698 @ 0x22b7698
|
|
void Gambit_fn_022B7698(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022B7698: ; // 0x22b7698
|
|
/* 022B7698 */ cpu->r[3] = cpu->r[3] + 0x0000018Cu;
|
|
/* 022B769C */ goto L_022B7CBC;
|
|
L_022B7CBC: ; // 0x22b7cbc
|
|
/* 022B7CBC */ cpu->r[0] = cpu->lr;
|
|
/* 022B7CC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B7CC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7CC0 */ cpu->r[1] = _t0;
|
|
/* 022B7CC4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7CC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B7CC8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B7CCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7CCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B7CD0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022B7CD0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B7CD4 */ cpu->r[12] = 0x00000000u;
|
|
/* 022B7CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B7CDC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022B7CDC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022B7CE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7CE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B7CE0 */ if (_t6) goto L_022B7D08; else goto L_022B7CE4;
|
|
L_022B7CE4: ; // 0x22b7ce4
|
|
/* 022B7CE4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B7CE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022B7CE8 */ /* nop */
|
|
/* 022B7CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022B7CF0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7CF0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B7CF0 */ if (_t9) goto L_022B7CF4; else goto L_022B7D08;
|
|
L_022B7CF4: ; // 0x22b7cf4
|
|
/* 022B7CF4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B7CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B7CF8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022B7CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7CFC */ cpu->ctr = cpu->r[0];
|
|
/* 022B7D00 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7D04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B7D08: ; // 0x22b7d08
|
|
/* 022B7D08 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7D0C */ Gambit_fn_022B7C34(cpu);
|
|
/* 022B7D10 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7D14 */ Gambit_fn_027FC37C(cpu);
|
|
/* 022B7D18 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7D18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B7D1C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7D1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B7D20 */ cpu->lr = cpu->r[0];
|
|
/* 022B7D24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7D28 */ return;
|
|
}
|
|
|
|
// fn_022B76A0 @ 0x22b76a0
|
|
void Gambit_fn_022B76A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B76A0: ; // 0x22b76a0
|
|
/* 022B76A0 */ cpu->r[0] = cpu->lr;
|
|
/* 022B76A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B76A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B76A4 */ cpu->r[1] = _t0;
|
|
/* 022B76A8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B76A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B76AC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B76AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B76B0 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 022B76B0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B76B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B76B8 */ /* nop */
|
|
/* 022B76BC */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B76C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B76C4 */ Gambit_fn_022B7B34(cpu);
|
|
/* 022B76C8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B76C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B76CC */ cpu->lr = cpu->r[0];
|
|
/* 022B76D0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B76D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B76D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B76D8 */ return;
|
|
}
|
|
|
|
// fn_022B76A4 @ 0x22b76a4
|
|
void Gambit_fn_022B76A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B76A4: ; // 0x22b76a4
|
|
/* 022B76A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B76A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B76A4 */ cpu->r[1] = _t0;
|
|
/* 022B76A8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B76A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B76AC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B76AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B76B0 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 022B76B0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B76B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B76B8 */ /* nop */
|
|
/* 022B76BC */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B76C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B76C4 */ Gambit_fn_022B7B34(cpu);
|
|
/* 022B76C8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B76C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B76CC */ cpu->lr = cpu->r[0];
|
|
/* 022B76D0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B76D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B76D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B76D8 */ return;
|
|
}
|
|
|
|
// fn_022B76DC @ 0x22b76dc
|
|
void Gambit_fn_022B76DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B76DC: ; // 0x22b76dc
|
|
/* 022B76DC */ cpu->r[0] = cpu->lr;
|
|
/* 022B76E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B76E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B76E0 */ cpu->r[1] = _t0;
|
|
/* 022B76E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B76E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B76E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B76EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B76EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B76F0 */ _t3 = cpu->r[31] + 0x0000019Au;
|
|
/* 022B76F0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B76F4 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B76F8 */ /* nop */
|
|
/* 022B76FC */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B7700 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B7704 */ Gambit_fn_022B7B34(cpu);
|
|
/* 022B7708 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B770C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B770C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B7710 */ cpu->lr = cpu->r[0];
|
|
/* 022B7714 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7718 */ return;
|
|
}
|
|
|
|
// fn_022B76E0 @ 0x22b76e0
|
|
void Gambit_fn_022B76E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B76E0: ; // 0x22b76e0
|
|
/* 022B76E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B76E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B76E0 */ cpu->r[1] = _t0;
|
|
/* 022B76E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B76E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B76E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B76EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B76EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B76F0 */ _t3 = cpu->r[31] + 0x0000019Au;
|
|
/* 022B76F0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B76F4 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B76F8 */ /* nop */
|
|
/* 022B76FC */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B7700 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu;
|
|
/* 022B7704 */ Gambit_fn_022B7B34(cpu);
|
|
/* 022B7708 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B770C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B770C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B7710 */ cpu->lr = cpu->r[0];
|
|
/* 022B7714 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7718 */ return;
|
|
}
|
|
|
|
// fn_022B771C @ 0x22b771c
|
|
void Gambit_fn_022B771C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104;
|
|
|
|
L_022B771C: ; // 0x22b771c
|
|
/* 022B771C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022B771C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B771C */ cpu->r[1] = _t0;
|
|
/* 022B7720 */ /* nop */
|
|
/* 022B7724 */ cpu->r[0] = cpu->lr;
|
|
/* 022B7728 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022B7728 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B772C */ cpu->r[29] = cpu->r[6];
|
|
/* 022B7730 */ cpu->r[28] = cpu->r[3];
|
|
/* 022B7734 */ cpu->r[30] = cpu->r[5];
|
|
/* 022B7738 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 022B7738 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022B773C */ cpu->r[31] = 0x101D0000u;
|
|
/* 022B7740 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 022B7740 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 022B7744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B7748 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022B7748 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 022B774C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B774C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B774C */ if (_t6) goto L_022B7790; else goto L_022B7750;
|
|
L_022B7750: ; // 0x22b7750
|
|
/* 022B7750 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022B7750 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B7754 */ Gambit_fn_02826F20(cpu);
|
|
/* 022B7758 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B7758 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B775C */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 022B775C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B7760 */ cpu->ctr = cpu->r[0];
|
|
/* 022B7764 */ cpu->r[5] = 0x00000004u;
|
|
/* 022B7768 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B776C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B7770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B7774 */ cpu->r[0] = cpu->r[27];
|
|
/* 022B7778 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B7778 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022B7778 */ if (_t11) goto L_022B7780; else goto L_022B777C;
|
|
L_022B777C: ; // 0x22b777c
|
|
/* 022B777C */ cpu->r[0] = 0x00000001u;
|
|
L_022B7780: ; // 0x22b7780
|
|
/* 022B7780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B7784 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7784 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B7784 */ if (_t13) goto L_022B7790; else goto L_022B7788;
|
|
L_022B7788: ; // 0x22b7788
|
|
/* 022B7788 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 022B7788 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 022B778C */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 022B778C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_022B7790: ; // 0x22b7790
|
|
/* 022B7790 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 022B7790 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B7794 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B7798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B779C */ cpu->r[12] = cpu->r[0];
|
|
/* 022B77A0 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B77A0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B77A0 */ if (_t18) goto L_022B77A4; else goto L_022B77C8;
|
|
L_022B77A4: ; // 0x22b77a4
|
|
/* 022B77A4 */ cpu->ctr = cpu->r[7];
|
|
/* 022B77A8 */ cpu->r[10] = 0x00000000u;
|
|
L_022B77AC: ; // 0x22b77ac
|
|
/* 022B77AC */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 022B77AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B77B0 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 022B77B0 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 022B77B4 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 022B77B8 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 022B77B8 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 022B77BC */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 022B77C0 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 022B77C0 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 022B77C4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B77C4 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B77C4 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 022B77C4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B77C4 */ if (_t25) goto L_022B77AC; else goto L_022B77C8;
|
|
L_022B77C8: ; // 0x22b77c8
|
|
/* 022B77C8 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022B77C8 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 022B77CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B77D0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B77D0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022B77D0 */ if (_t28) goto L_022B7814; else goto L_022B77D4;
|
|
L_022B77D4: ; // 0x22b77d4
|
|
/* 022B77D4 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022B77D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B77D8 */ Gambit_fn_02826F20(cpu);
|
|
/* 022B77DC */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B77DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B77E0 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 022B77E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B77E4 */ cpu->ctr = cpu->r[0];
|
|
/* 022B77E8 */ cpu->r[5] = 0x00000004u;
|
|
/* 022B77EC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B77F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B77F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B77F8 */ cpu->r[11] = cpu->r[27];
|
|
/* 022B77FC */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B77FC */ _t33 = _t32 & 0x00000001u;
|
|
/* 022B77FC */ if (_t33) goto L_022B7804; else goto L_022B7800;
|
|
L_022B7800: ; // 0x22b7800
|
|
/* 022B7800 */ cpu->r[11] = 0x00000001u;
|
|
L_022B7804: ; // 0x22b7804
|
|
/* 022B7804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B7808 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7808 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022B7808 */ if (_t35) goto L_022B7814; else goto L_022B780C;
|
|
L_022B780C: ; // 0x22b780c
|
|
/* 022B780C */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022B780C */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 022B7810 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 022B7810 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_022B7814: ; // 0x22b7814
|
|
/* 022B7814 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 022B7814 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B7818 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B781C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022B7820 */ cpu->r[12] = cpu->r[0];
|
|
/* 022B7824 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B7824 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022B7824 */ if (_t40) goto L_022B7828; else goto L_022B784C;
|
|
L_022B7828: ; // 0x22b7828
|
|
/* 022B7828 */ cpu->ctr = cpu->r[6];
|
|
/* 022B782C */ cpu->r[9] = 0x00000000u;
|
|
L_022B7830: ; // 0x22b7830
|
|
/* 022B7830 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022B7830 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B7834 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 022B7834 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 022B7838 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 022B783C */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 022B783C */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 022B7840 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 022B7844 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 022B7844 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 022B7848 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B7848 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B7848 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 022B7848 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022B7848 */ if (_t47) goto L_022B7830; else goto L_022B784C;
|
|
L_022B784C: ; // 0x22b784c
|
|
/* 022B784C */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022B784C */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 022B7850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B7854 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7854 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022B7854 */ if (_t50) goto L_022B7898; else goto L_022B7858;
|
|
L_022B7858: ; // 0x22b7858
|
|
/* 022B7858 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022B7858 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B785C */ Gambit_fn_02826F20(cpu);
|
|
/* 022B7860 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B7860 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022B7864 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 022B7864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B7868 */ cpu->ctr = cpu->r[0];
|
|
/* 022B786C */ cpu->r[5] = 0x00000004u;
|
|
/* 022B7870 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7874 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B7878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B787C */ cpu->r[10] = cpu->r[27];
|
|
/* 022B7880 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B7880 */ _t55 = _t54 & 0x00000001u;
|
|
/* 022B7880 */ if (_t55) goto L_022B7888; else goto L_022B7884;
|
|
L_022B7884: ; // 0x22b7884
|
|
/* 022B7884 */ cpu->r[10] = 0x00000001u;
|
|
L_022B7888: ; // 0x22b7888
|
|
/* 022B7888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B788C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B788C */ _t57 = _t56 & 0x00000001u;
|
|
/* 022B788C */ if (_t57) goto L_022B7898; else goto L_022B7890;
|
|
L_022B7890: ; // 0x22b7890
|
|
/* 022B7890 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 022B7890 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 022B7894 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 022B7894 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_022B7898: ; // 0x22b7898
|
|
/* 022B7898 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 022B7898 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022B789C */ cpu->r[0] = 0x00000000u;
|
|
/* 022B78A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B78A4 */ cpu->r[5] = cpu->r[0];
|
|
/* 022B78A8 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B78A8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022B78A8 */ if (_t62) goto L_022B78AC; else goto L_022B78D0;
|
|
L_022B78AC: ; // 0x22b78ac
|
|
/* 022B78AC */ cpu->ctr = cpu->r[12];
|
|
/* 022B78B0 */ cpu->r[8] = 0x00000000u;
|
|
L_022B78B4: ; // 0x22b78b4
|
|
/* 022B78B4 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 022B78B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B78B8 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 022B78B8 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 022B78BC */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 022B78C0 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 022B78C0 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 022B78C4 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 022B78C8 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 022B78C8 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 022B78CC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B78CC */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B78CC */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 022B78CC */ _t69 = _t68 & 0x00000001u;
|
|
/* 022B78CC */ if (_t69) goto L_022B78B4; else goto L_022B78D0;
|
|
L_022B78D0: ; // 0x22b78d0
|
|
/* 022B78D0 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 022B78D0 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 022B78D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022B78D8 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B78D8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022B78D8 */ if (_t72) goto L_022B79B4; else goto L_022B78DC;
|
|
L_022B78DC: ; // 0x22b78dc
|
|
/* 022B78DC */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022B78DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022B78E0 */ Gambit_fn_02826F20(cpu);
|
|
/* 022B78E4 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B78E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022B78E8 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 022B78E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022B78EC */ cpu->ctr = cpu->r[12];
|
|
/* 022B78F0 */ cpu->r[5] = 0x00000004u;
|
|
/* 022B78F4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 022B78F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B78FC */ cpu->r[24] = cpu->r[3];
|
|
/* 022B7900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022B7904 */ cpu->r[30] = cpu->r[25];
|
|
/* 022B7908 */ cpu->r[7] = 0x00000000u;
|
|
/* 022B790C */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B790C */ _t77 = _t76 & 0x00000001u;
|
|
/* 022B790C */ if (_t77) goto L_022B7914; else goto L_022B7910;
|
|
L_022B7910: ; // 0x22b7910
|
|
/* 022B7910 */ cpu->r[30] = 0x00000001u;
|
|
L_022B7914: ; // 0x22b7914
|
|
/* 022B7914 */ cpu->r[31] = 0x10110000u;
|
|
/* 022B7918 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 022B791C */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 022B791C */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 022B7920 */ cpu->r[23] = 0x00000018u;
|
|
L_022B7924: ; // 0x22b7924
|
|
/* 022B7924 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 022B7924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B7928 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7928 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022B7928 */ if (_t80) goto L_022B7998; else goto L_022B792C;
|
|
L_022B792C: ; // 0x22b792c
|
|
/* 022B792C */ cpu->r[26] = cpu->r[27];
|
|
/* 022B792C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022B7930 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7930 */ _t82 = _t81 & 0x00000001u;
|
|
/* 022B7930 */ if (_t82) goto L_022B7934; else goto L_022B7944;
|
|
L_022B7934: ; // 0x22b7934
|
|
/* 022B7934 */ cpu->r[3] = 0x00000024u;
|
|
/* 022B7938 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B793C */ cpu->r[26] = cpu->r[3];
|
|
/* 022B793C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022B7940 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7940 */ _t84 = _t83 & 0x00000001u;
|
|
/* 022B7940 */ if (_t84) goto L_022B798C; else goto L_022B7944;
|
|
L_022B7944: ; // 0x22b7944
|
|
/* 022B7944 */ cpu->r[11] = cpu->r[26];
|
|
/* 022B7944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B7948 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7948 */ _t86 = _t85 & 0x00000001u;
|
|
/* 022B7948 */ if (_t86) goto L_022B794C; else goto L_022B795C;
|
|
L_022B794C: ; // 0x22b794c
|
|
/* 022B794C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022B7950 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B7954 */ cpu->r[11] = cpu->r[3];
|
|
/* 022B7954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B7958 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7958 */ _t88 = _t87 & 0x00000001u;
|
|
/* 022B7958 */ if (_t88) goto L_022B7978; else goto L_022B795C;
|
|
L_022B795C: ; // 0x22b795c
|
|
/* 022B795C */ cpu->r[5] = 0x10060000u;
|
|
/* 022B7960 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 022B7960 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 022B7964 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 022B7968 */ cpu->r[5] = cpu->r[5] + 0x0000383Cu;
|
|
/* 022B796C */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 022B796C */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 022B7970 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 022B7970 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 022B7974 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 022B7974 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_022B7978: ; // 0x22b7978
|
|
/* 022B7978 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B797C */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 022B797C */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022B7980 */ cpu->r[6] = cpu->r[6] + 0x00003874u;
|
|
/* 022B7984 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 022B7984 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 022B7988 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 022B7988 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_022B798C: ; // 0x22b798c
|
|
/* 022B798C */ cpu->r[0] = 0x10060000u;
|
|
/* 022B7990 */ cpu->r[0] = cpu->r[0] + 0x0000388Cu;
|
|
/* 022B7994 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 022B7994 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_022B7998: ; // 0x22b7998
|
|
/* 022B7998 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 022B7998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B799C */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 022B79A0 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B79A0 */ _t98 = _t97 & 0x00000001u;
|
|
/* 022B79A0 */ if (_t98) goto L_022B79A4; else goto L_022B7924;
|
|
L_022B79A4: ; // 0x22b79a4
|
|
/* 022B79A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 022B79A8 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B79A8 */ _t100 = _t99 & 0x00000001u;
|
|
/* 022B79A8 */ if (_t100) goto L_022B79B4; else goto L_022B79AC;
|
|
L_022B79AC: ; // 0x22b79ac
|
|
/* 022B79AC */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 022B79AC */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 022B79B0 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 022B79B0 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_022B79B4: ; // 0x22b79b4
|
|
/* 022B79B4 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 022B79B4 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 022B79B8 */ /* nop */
|
|
/* 022B79BC */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 022B79BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022B79C0 */ cpu->lr = cpu->r[0];
|
|
/* 022B79C4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022B79C8 */ return;
|
|
}
|
|
|
|
// fn_022B79CC @ 0x22b79cc
|
|
void Gambit_fn_022B79CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_022B79CC: ; // 0x22b79cc
|
|
/* 022B79CC */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 022B79CC */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022B79D0 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022B79D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B79D4 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022B79D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B79D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 022B79DC */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 022B79DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B79E0 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B79E0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B79E0 */ if (_t5) goto L_022B79E4; else goto L_022B79EC;
|
|
L_022B79E4: ; // 0x22b79e4
|
|
/* 022B79E4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B79E8 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_022B79EC: ; // 0x22b79ec
|
|
/* 022B79EC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022B79EC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B79F0 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 022B79F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B79F4 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 022B79F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022B79F8 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 022B79F8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 022B79FC */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 022B79FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B7A00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 022B7A04 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022B7A04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7A08 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7A08 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B7A08 */ if (_t13) goto L_022B7A0C; else goto L_022B7A14;
|
|
L_022B7A0C: ; // 0x22b7a0c
|
|
/* 022B7A0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7A10 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_022B7A14: ; // 0x22b7a14
|
|
/* 022B7A14 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 022B7A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B7A18 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 022B7A18 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022B7A1C */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 022B7A1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B7A20 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 022B7A20 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 022B7A24 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 022B7A24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B7A28 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 022B7A28 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 022B7A2C */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 022B7A2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B7A30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 022B7A34 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 022B7A34 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B7A38 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7A38 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B7A38 */ if (_t23) goto L_022B7A3C; else goto L_022B7A44;
|
|
L_022B7A3C: ; // 0x22b7a3c
|
|
/* 022B7A3C */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7A40 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_022B7A44: ; // 0x22b7a44
|
|
/* 022B7A44 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 022B7A44 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 022B7A48 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 022B7A48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B7A4C */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7A4C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 022B7A50 */ return;
|
|
}
|
|
|
|
// fn_022B7A54 @ 0x22b7a54
|
|
void Gambit_fn_022B7A54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022B7A54: ; // 0x22b7a54
|
|
/* 022B7A54 */ cpu->r[0] = cpu->lr;
|
|
/* 022B7A58 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B7A5C */ cpu->r[7] = 0x022B0000u;
|
|
/* 022B7A60 */ cpu->r[6] = 0x022B0000u;
|
|
/* 022B7A64 */ cpu->r[10] = 0x101C0000u;
|
|
/* 022B7A68 */ cpu->r[7] = cpu->r[7] + 0x00007358u;
|
|
/* 022B7A6C */ cpu->r[6] = cpu->r[6] + 0x00007358u;
|
|
/* 022B7A70 */ cpu->r[10] = cpu->r[10] + 0x000056F0u;
|
|
/* 022B7A74 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022B7A74 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022B7A78 */ cpu->r[0] = 0x101C0000u;
|
|
/* 022B7A7C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B7A7C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022B7A7C */ cpu->r[1] = _t1;
|
|
/* 022B7A80 */ cpu->r[0] = cpu->r[0] + 0x000056ECu;
|
|
/* 022B7A84 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022B7A84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B7A88 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B7A8C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7A8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B7A90 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7A94 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7A94 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022B7A98 */ Gambit_fn_02791B10(cpu);
|
|
/* 022B7A9C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7A9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B7AA0 */ cpu->lr = cpu->r[0];
|
|
/* 022B7AA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7AA8 */ return;
|
|
}
|
|
|
|
// fn_022B7A7C @ 0x22b7a7c
|
|
void Gambit_fn_022B7A7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022B7A7C: ; // 0x22b7a7c
|
|
/* 022B7A7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B7A7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7A7C */ cpu->r[1] = _t0;
|
|
/* 022B7A80 */ cpu->r[0] = cpu->r[0] + 0x000056ECu;
|
|
/* 022B7A84 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022B7A84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B7A88 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B7A8C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7A8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B7A90 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7A94 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7A94 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 022B7A98 */ Gambit_fn_02791B10(cpu);
|
|
/* 022B7A9C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7A9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B7AA0 */ cpu->lr = cpu->r[0];
|
|
/* 022B7AA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7AA8 */ return;
|
|
}
|
|
|
|
// fn_022B7AAC @ 0x22b7aac
|
|
void Gambit_fn_022B7AAC(CPUState* 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_022B7AAC: ; // 0x22b7aac
|
|
/* 022B7AAC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B7AAC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022B7AB0 */ /* nop */
|
|
/* 022B7AB4 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 022B7AB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B7AB8 */ cpu->r[7] = cpu->r[0];
|
|
/* 022B7ABC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 022B7AC0 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 022B7AC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B7AC4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7AC4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B7AC4 */ if (_t4) goto L_022B7AC8; else goto L_022B7AE0;
|
|
L_022B7AC8: ; // 0x22b7ac8
|
|
/* 022B7AC8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7ACC */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 022B7AD0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022B7AD0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022B7AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B7AD8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7AD8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B7AD8 */ if (_t7) goto L_022B7ADC; else goto L_022B7AEC;
|
|
L_022B7ADC: ; // 0x22b7adc
|
|
/* 022B7ADC */ return;
|
|
L_022B7AE0: ; // 0x22b7ae0
|
|
/* 022B7AE0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022B7AE0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022B7AE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B7AE8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7AE8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B7AE8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B7AE8 */ goto L_022B7AEC;
|
|
L_022B7AEC: ; // 0x22b7aec
|
|
/* 022B7AEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 022B7AF0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022B7AF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7AF4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7AF4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B7AF4 */ if (_t13) goto L_022B7AF8; else goto L_022B7B00;
|
|
L_022B7AF8: ; // 0x22b7af8
|
|
/* 022B7AF8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7AFC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022B7B00: ; // 0x22b7b00
|
|
/* 022B7B00 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022B7B00 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022B7B04 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022B7B04 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022B7B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B7B0C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7B0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B7B10 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 022B7B14 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7B14 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B7B14 */ if (_t18) goto L_022B7B2C; else goto L_022B7B18;
|
|
L_022B7B18: ; // 0x22b7b18
|
|
/* 022B7B18 */ /* nop */
|
|
/* 022B7B1C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022B7B1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B7B20 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7B24 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 022B7B28 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7B28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022B7B2C: ; // 0x22b7b2c
|
|
/* 022B7B2C */ cpu->ctr = cpu->r[11];
|
|
/* 022B7B30 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B7B34 @ 0x22b7b34
|
|
void Gambit_fn_022B7B34(CPUState* 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_022B7B34: ; // 0x22b7b34
|
|
/* 022B7B34 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B7B34 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022B7B38 */ /* nop */
|
|
/* 022B7B3C */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022B7B3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B7B40 */ cpu->r[8] = cpu->r[0];
|
|
/* 022B7B44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 022B7B48 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022B7B48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B7B4C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7B4C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B7B4C */ if (_t4) goto L_022B7B50; else goto L_022B7B68;
|
|
L_022B7B50: ; // 0x22b7b50
|
|
/* 022B7B50 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7B54 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 022B7B58 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022B7B58 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022B7B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B7B60 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7B60 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B7B60 */ if (_t7) goto L_022B7B64; else goto L_022B7B74;
|
|
L_022B7B64: ; // 0x22b7b64
|
|
/* 022B7B64 */ return;
|
|
L_022B7B68: ; // 0x22b7b68
|
|
/* 022B7B68 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022B7B68 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022B7B6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B7B70 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7B70 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B7B70 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B7B70 */ goto L_022B7B74;
|
|
L_022B7B74: ; // 0x22b7b74
|
|
/* 022B7B74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 022B7B78 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022B7B78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7B7C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7B7C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B7B7C */ if (_t13) goto L_022B7B80; else goto L_022B7B88;
|
|
L_022B7B80: ; // 0x22b7b80
|
|
/* 022B7B80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7B84 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022B7B88: ; // 0x22b7b88
|
|
/* 022B7B88 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022B7B88 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022B7B8C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022B7B8C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022B7B90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B7B94 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7B94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B7B98 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 022B7B9C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7B9C */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B7B9C */ if (_t18) goto L_022B7BB4; else goto L_022B7BA0;
|
|
L_022B7BA0: ; // 0x22b7ba0
|
|
/* 022B7BA0 */ /* nop */
|
|
/* 022B7BA4 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022B7BA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B7BA8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7BAC */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 022B7BB0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7BB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022B7BB4: ; // 0x22b7bb4
|
|
/* 022B7BB4 */ cpu->ctr = cpu->r[11];
|
|
/* 022B7BB8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B7BBC @ 0x22b7bbc
|
|
void Gambit_fn_022B7BBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022B7BBC: ; // 0x22b7bbc
|
|
/* 022B7BBC */ cpu->r[0] = cpu->lr;
|
|
/* 022B7BC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B7BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7BC0 */ cpu->r[1] = _t0;
|
|
/* 022B7BC4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B7BC8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7BC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B7BCC */ cpu->r[30] = cpu->r[3];
|
|
/* 022B7BD0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7BD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B7BD4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B7BD4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022B7BD8 */ /* nop */
|
|
/* 022B7BDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 022B7BE0 */ cpu->r[31] = cpu->r[4];
|
|
/* 022B7BE4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7BE4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B7BE4 */ if (_t6) goto L_022B7BE8; else goto L_022B7BFC;
|
|
L_022B7BE8: ; // 0x22b7be8
|
|
/* 022B7BE8 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 022B7BE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B7BEC */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 022B7BEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B7BF0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B7BF4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B7BF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B7BFC: ; // 0x22b7bfc
|
|
/* 022B7BFC */ cpu->r[3] = cpu->r[30];
|
|
/* 022B7C00 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B7C04 */ Gambit_fn_022B7AAC(cpu);
|
|
/* 022B7C08 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B7C0C */ /* nop */
|
|
/* 022B7C10 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B7C14 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B7C18 */ Gambit_fn_022B7B34(cpu);
|
|
/* 022B7C1C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B7C20 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7C20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B7C24 */ cpu->lr = cpu->r[0];
|
|
/* 022B7C28 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7C28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7C2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7C30 */ return;
|
|
}
|
|
|
|
// fn_022B7BC0 @ 0x22b7bc0
|
|
void Gambit_fn_022B7BC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022B7BC0: ; // 0x22b7bc0
|
|
/* 022B7BC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B7BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7BC0 */ cpu->r[1] = _t0;
|
|
/* 022B7BC4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B7BC8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7BC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B7BCC */ cpu->r[30] = cpu->r[3];
|
|
/* 022B7BD0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7BD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B7BD4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B7BD4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022B7BD8 */ /* nop */
|
|
/* 022B7BDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 022B7BE0 */ cpu->r[31] = cpu->r[4];
|
|
/* 022B7BE4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7BE4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B7BE4 */ if (_t6) goto L_022B7BE8; else goto L_022B7BFC;
|
|
L_022B7BE8: ; // 0x22b7be8
|
|
/* 022B7BE8 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 022B7BE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B7BEC */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 022B7BEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B7BF0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B7BF4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B7BF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B7BFC: ; // 0x22b7bfc
|
|
/* 022B7BFC */ cpu->r[3] = cpu->r[30];
|
|
/* 022B7C00 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B7C04 */ Gambit_fn_022B7AAC(cpu);
|
|
/* 022B7C08 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B7C0C */ /* nop */
|
|
/* 022B7C10 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022B7C14 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B7C18 */ Gambit_fn_022B7B34(cpu);
|
|
/* 022B7C1C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B7C20 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7C20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B7C24 */ cpu->lr = cpu->r[0];
|
|
/* 022B7C28 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7C28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7C2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7C30 */ return;
|
|
}
|
|
|
|
// fn_022B7C34 @ 0x22b7c34
|
|
void Gambit_fn_022B7C34(CPUState* 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_022B7C34: ; // 0x22b7c34
|
|
/* 022B7C34 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B7C34 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022B7C38 */ /* nop */
|
|
/* 022B7C3C */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 022B7C3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B7C40 */ cpu->r[8] = cpu->r[0];
|
|
/* 022B7C44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 022B7C48 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022B7C48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B7C4C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7C4C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B7C4C */ if (_t4) goto L_022B7C50; else goto L_022B7C68;
|
|
L_022B7C50: ; // 0x22b7c50
|
|
/* 022B7C50 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7C54 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 022B7C58 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022B7C58 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022B7C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B7C60 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7C60 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B7C60 */ if (_t7) goto L_022B7C64; else goto L_022B7C74;
|
|
L_022B7C64: ; // 0x22b7c64
|
|
/* 022B7C64 */ return;
|
|
L_022B7C68: ; // 0x22b7c68
|
|
/* 022B7C68 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022B7C68 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022B7C6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B7C70 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7C70 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B7C70 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B7C70 */ goto L_022B7C74;
|
|
L_022B7C74: ; // 0x22b7c74
|
|
/* 022B7C74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 022B7C78 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022B7C78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7C7C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7C7C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B7C7C */ if (_t13) goto L_022B7C80; else goto L_022B7C88;
|
|
L_022B7C80: ; // 0x22b7c80
|
|
/* 022B7C80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7C84 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022B7C88: ; // 0x22b7c88
|
|
/* 022B7C88 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022B7C88 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022B7C8C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022B7C8C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022B7C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B7C94 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7C94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B7C98 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 022B7C9C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B7C9C */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B7C9C */ if (_t18) goto L_022B7CB4; else goto L_022B7CA0;
|
|
L_022B7CA0: ; // 0x22b7ca0
|
|
/* 022B7CA0 */ /* nop */
|
|
/* 022B7CA4 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022B7CA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B7CA8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022B7CAC */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 022B7CB0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7CB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022B7CB4: ; // 0x22b7cb4
|
|
/* 022B7CB4 */ cpu->ctr = cpu->r[11];
|
|
/* 022B7CB8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022B7CBC @ 0x22b7cbc
|
|
void Gambit_fn_022B7CBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022B7CBC: ; // 0x22b7cbc
|
|
/* 022B7CBC */ cpu->r[0] = cpu->lr;
|
|
/* 022B7CC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B7CC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7CC0 */ cpu->r[1] = _t0;
|
|
/* 022B7CC4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7CC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B7CC8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B7CCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7CCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B7CD0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022B7CD0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B7CD4 */ cpu->r[12] = 0x00000000u;
|
|
/* 022B7CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B7CDC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022B7CDC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022B7CE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7CE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B7CE0 */ if (_t6) goto L_022B7D08; else goto L_022B7CE4;
|
|
L_022B7CE4: ; // 0x22b7ce4
|
|
/* 022B7CE4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B7CE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022B7CE8 */ /* nop */
|
|
/* 022B7CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022B7CF0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7CF0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B7CF0 */ if (_t9) goto L_022B7CF4; else goto L_022B7D08;
|
|
L_022B7CF4: ; // 0x22b7cf4
|
|
/* 022B7CF4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B7CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B7CF8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022B7CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7CFC */ cpu->ctr = cpu->r[0];
|
|
/* 022B7D00 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7D04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B7D08: ; // 0x22b7d08
|
|
/* 022B7D08 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7D0C */ Gambit_fn_022B7C34(cpu);
|
|
/* 022B7D10 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7D14 */ Gambit_fn_027FC37C(cpu);
|
|
/* 022B7D18 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7D18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B7D1C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7D1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B7D20 */ cpu->lr = cpu->r[0];
|
|
/* 022B7D24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7D28 */ return;
|
|
}
|
|
|
|
// fn_022B7CC0 @ 0x22b7cc0
|
|
void Gambit_fn_022B7CC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022B7CC0: ; // 0x22b7cc0
|
|
/* 022B7CC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B7CC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7CC0 */ cpu->r[1] = _t0;
|
|
/* 022B7CC4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7CC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B7CC8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B7CCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7CCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B7CD0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022B7CD0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022B7CD4 */ cpu->r[12] = 0x00000000u;
|
|
/* 022B7CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B7CDC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022B7CDC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022B7CE0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7CE0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B7CE0 */ if (_t6) goto L_022B7D08; else goto L_022B7CE4;
|
|
L_022B7CE4: ; // 0x22b7ce4
|
|
/* 022B7CE4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B7CE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022B7CE8 */ /* nop */
|
|
/* 022B7CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022B7CF0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7CF0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B7CF0 */ if (_t9) goto L_022B7CF4; else goto L_022B7D08;
|
|
L_022B7CF4: ; // 0x22b7cf4
|
|
/* 022B7CF4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022B7CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B7CF8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022B7CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B7CFC */ cpu->ctr = cpu->r[0];
|
|
/* 022B7D00 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7D04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022B7D08: ; // 0x22b7d08
|
|
/* 022B7D08 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7D0C */ Gambit_fn_022B7C34(cpu);
|
|
/* 022B7D10 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7D14 */ Gambit_fn_027FC37C(cpu);
|
|
/* 022B7D18 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7D18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B7D1C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7D1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B7D20 */ cpu->lr = cpu->r[0];
|
|
/* 022B7D24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B7D28 */ return;
|
|
}
|
|
|
|
// fn_022B7D2C @ 0x22b7d2c
|
|
void Gambit_fn_022B7D2C(CPUState* cpu) {
|
|
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_022B7D2C: ; // 0x22b7d2c
|
|
/* 022B7D2C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022B7D2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7D2C */ cpu->r[1] = _t0;
|
|
/* 022B7D30 */ cpu->r[0] = cpu->lr;
|
|
/* 022B7D34 */ /* nop */
|
|
/* 022B7D38 */ cpu->r[30] = cpu->r[5];
|
|
/* 022B7D3C */ cpu->r[26] = cpu->r[3];
|
|
/* 022B7D40 */ cpu->r[27] = cpu->r[7];
|
|
/* 022B7D44 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B7D48 */ cpu->r[31] = cpu->r[6];
|
|
/* 022B7D4C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B7D4C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B7D50 */ cpu->r[29] = cpu->r[4];
|
|
/* 022B7D54 */ cpu->r[4] = cpu->r[27];
|
|
/* 022B7D58 */ Gambit_fn_027DB318(cpu);
|
|
/* 022B7D5C */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 022B7D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022B7D60 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7D60 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B7D60 */ if (_t3) goto L_022B7DF4; else goto L_022B7D64;
|
|
L_022B7D64: ; // 0x22b7d64
|
|
/* 022B7D64 */ cpu->r[5] = cpu->r[28];
|
|
/* 022B7D68 */ cpu->r[4] = cpu->r[29];
|
|
/* 022B7D6C */ cpu->r[3] = cpu->r[26];
|
|
/* 022B7D70 */ Gambit_fn_022B7A54(cpu);
|
|
/* 022B7D74 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B7D74 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B7D78 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 022B7D78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B7D7C */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 022B7D80 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022B7D84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022B7D88 */ cpu->r[25] = 0x00000000u;
|
|
/* 022B7D8C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7D8C */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B7D8C */ if (_t7) goto L_022B7DF4; else goto L_022B7D90;
|
|
L_022B7D90: ; // 0x22b7d90
|
|
/* 022B7D90 */ cpu->r[24] = 0x101C0000u;
|
|
L_022B7D94: ; // 0x22b7d94
|
|
/* 022B7D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B7D98 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7D98 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B7D98 */ if (_t9) goto L_022B7DB0; else goto L_022B7D9C;
|
|
L_022B7D9C: ; // 0x22b7d9c
|
|
/* 022B7D9C */ cpu->ctr = cpu->r[27];
|
|
/* 022B7DA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B7DA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B7DA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B7DAC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7DAC */ _t11 = _t10 & 0x00000001u;
|
|
/* 022B7DAC */ if (_t11) goto L_022B7DE0; else goto L_022B7DB0;
|
|
L_022B7DB0: ; // 0x22b7db0
|
|
/* 022B7DB0 */ _t12 = cpu->r[24] + 0x000056ECu;
|
|
/* 022B7DB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B7DB4 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 022B7DB8 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 022B7DB8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022B7DBC */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 022B7DBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B7DC0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B7DC4 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 022B7DC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B7DC8 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B7DCC */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 022B7DCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B7DD0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B7DD4 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 022B7DD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B7DD8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 022B7DDC */ Gambit_fn_022711B8(cpu);
|
|
L_022B7DE0: ; // 0x22b7de0
|
|
/* 022B7DE0 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 022B7DE4 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 022B7DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B7DE8 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022B7DEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022B7DF0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7DF0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B7DF0 */ if (_t20) goto L_022B7DF4; else goto L_022B7D94;
|
|
L_022B7DF4: ; // 0x22b7df4
|
|
/* 022B7DF4 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B7DF8 */ /* nop */
|
|
/* 022B7DFC */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B7DFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B7E00 */ cpu->lr = cpu->r[0];
|
|
/* 022B7E04 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022B7E08 */ return;
|
|
}
|
|
|
|
// fn_022B7E0C @ 0x22b7e0c
|
|
void Gambit_fn_022B7E0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35;
|
|
double _ft20, _ft21;
|
|
|
|
L_022B7E0C: ; // 0x22b7e0c
|
|
/* 022B7E0C */ cpu->r[0] = cpu->lr;
|
|
/* 022B7E10 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022B7E10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7E10 */ cpu->r[1] = _t0;
|
|
/* 022B7E14 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022B7E14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B7E18 */ cpu->r[9] = cpu->r[3];
|
|
/* 022B7E1C */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B7E1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B7E20 */ _t3 = cpu->r[9] + 0x00000018u;
|
|
/* 022B7E20 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B7E24 */ _t4 = cpu->r[9] + 0x0000000Cu;
|
|
/* 022B7E24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B7E28 */ /* nop */
|
|
/* 022B7E2C */ cpu->f[0] = cpu->f[8] - cpu->f[9];
|
|
/* 022B7E30 */ /* nop */
|
|
/* 022B7E34 */ /* nop */
|
|
/* 022B7E38 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 022B7E38 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022B7E3C */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 022B7E3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B7E40 */ /* nop */
|
|
/* 022B7E44 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B7E44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B7E48 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 022B7E48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B7E4C */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022B7E4C */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 022B7E50 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 022B7E50 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B7E54 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7E54 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022B7E58 */ cpu->f[9] = cpu->f[9] * cpu->f[9];
|
|
/* 022B7E5C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7E5C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B7E60 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7E60 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 022B7E64 */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[9]);
|
|
/* 022B7E68 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7E68 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B7E6C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B7E70 */ cpu->f[1] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 022B7E74 */ _t15 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022B7E74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B7E78 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B7E7C */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B7E7C */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B7E7C */ if (_t17) goto L_022B7E80; else goto L_022B7EC0;
|
|
L_022B7E80: ; // 0x22b7e80
|
|
/* 022B7E80 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B7E84 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B7E88 */ _t18 = cpu->r[10] + 0x00004030u;
|
|
/* 022B7E88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B7E8C */ _t19 = cpu->r[12] + 0x00004028u;
|
|
/* 022B7E8C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B7E90 */ _ft20 = sqrt(cpu->f[1]);
|
|
/* 022B7E90 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 022B7E90 */ cpu->f[10] = _ft21 / _ft20;
|
|
/* 022B7E94 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 022B7E98 */ cpu->f[8] = cpu->f[10] * cpu->f[12];
|
|
/* 022B7E9C */ cpu->f[11] = -fma(cpu->f[11], cpu->f[1], -(cpu->f[13]));
|
|
/* 022B7EA0 */ cpu->f[10] = cpu->f[11] * cpu->f[8];
|
|
/* 022B7EA4 */ /* nop */
|
|
/* 022B7EA8 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7EA8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B7EAC */ /* nop */
|
|
/* 022B7EB0 */ cpu->f[8] = cpu->f[8] * cpu->f[10];
|
|
/* 022B7EB4 */ /* nop */
|
|
/* 022B7EB8 */ cpu->f[1] = cpu->f[1] * cpu->f[10];
|
|
/* 022B7EBC */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7EBC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[8]);
|
|
L_022B7EC0: ; // 0x22b7ec0
|
|
/* 022B7EC0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022B7EC4 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022B7EC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B7EC8 */ cpu->r[10] = 0x101C0000u;
|
|
/* 022B7ECC */ _t25 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 022B7ECC */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B7ED0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B7ED4 */ _t26 = cpu->r[10] + 0x00001EF8u;
|
|
/* 022B7ED4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B7ED8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B7EDC */ cpu->r[4] = cpu->r[9] + 0x00000004u;
|
|
/* 022B7EE0 */ _t27 = cpu->r[31] + 0x00000004u;
|
|
/* 022B7EE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B7EE4 */ _t28 = cpu->r[12] + 0x00004094u;
|
|
/* 022B7EE4 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B7EE8 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B7EE8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022B7EE8 */ if (_t30) goto L_022B7F18; else goto L_022B7EEC;
|
|
L_022B7EEC: ; // 0x22b7eec
|
|
/* 022B7EEC */ cpu->r[5] = 0x00000000u;
|
|
/* 022B7EF0 */ cpu->f[1] = cpu->f[4];
|
|
/* 022B7EF4 */ cpu->r[8] = 0x000001FFu;
|
|
/* 022B7EF8 */ cpu->r[6] = cpu->r[5];
|
|
/* 022B7EFC */ cpu->r[10] = cpu->r[5];
|
|
/* 022B7F00 */ cpu->r[7] = 0x00000008u;
|
|
/* 022B7F04 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7F04 */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
/* 022B7F08 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022B7F0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B7F10 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 022B7F10 */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 022B7F14 */ goto L_022B7F40;
|
|
L_022B7F18: ; // 0x22b7f18
|
|
/* 022B7F18 */ cpu->f[3] = cpu->f[2];
|
|
/* 022B7F1C */ cpu->r[8] = cpu->r[9];
|
|
/* 022B7F20 */ cpu->r[9] = cpu->r[31];
|
|
/* 022B7F24 */ cpu->f[2] = cpu->f[4];
|
|
/* 022B7F28 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7F2C */ cpu->r[6] = 0x00000008u;
|
|
/* 022B7F30 */ cpu->r[7] = 0x000001FFu;
|
|
/* 022B7F34 */ Gambit_fn_0204A864(cpu);
|
|
/* 022B7F38 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B7F3C */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 022B7F3C */ rbrew_write32(cpu->mem, _t33, cpu->r[3]);
|
|
L_022B7F40: ; // 0x22b7f40
|
|
/* 022B7F40 */ cpu->r[3] = cpu->r[0];
|
|
/* 022B7F44 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B7F44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B7F48 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 022B7F48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B7F4C */ cpu->lr = cpu->r[0];
|
|
/* 022B7F50 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022B7F54 */ return;
|
|
}
|
|
|
|
// fn_022B7E10 @ 0x22b7e10
|
|
void Gambit_fn_022B7E10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35;
|
|
double _ft20, _ft21;
|
|
|
|
L_022B7E10: ; // 0x22b7e10
|
|
/* 022B7E10 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022B7E10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7E10 */ cpu->r[1] = _t0;
|
|
/* 022B7E14 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022B7E14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B7E18 */ cpu->r[9] = cpu->r[3];
|
|
/* 022B7E1C */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B7E1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B7E20 */ _t3 = cpu->r[9] + 0x00000018u;
|
|
/* 022B7E20 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B7E24 */ _t4 = cpu->r[9] + 0x0000000Cu;
|
|
/* 022B7E24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B7E28 */ /* nop */
|
|
/* 022B7E2C */ cpu->f[0] = cpu->f[8] - cpu->f[9];
|
|
/* 022B7E30 */ /* nop */
|
|
/* 022B7E34 */ /* nop */
|
|
/* 022B7E38 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 022B7E38 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022B7E3C */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 022B7E3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B7E40 */ /* nop */
|
|
/* 022B7E44 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B7E44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B7E48 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 022B7E48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B7E4C */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022B7E4C */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 022B7E50 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 022B7E50 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B7E54 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7E54 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022B7E58 */ cpu->f[9] = cpu->f[9] * cpu->f[9];
|
|
/* 022B7E5C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7E5C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B7E60 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7E60 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 022B7E64 */ cpu->f[11] = fma(cpu->f[11], cpu->f[11], cpu->f[9]);
|
|
/* 022B7E68 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7E68 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B7E6C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B7E70 */ cpu->f[1] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 022B7E74 */ _t15 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022B7E74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B7E78 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B7E7C */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B7E7C */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B7E7C */ if (_t17) goto L_022B7E80; else goto L_022B7EC0;
|
|
L_022B7E80: ; // 0x22b7e80
|
|
/* 022B7E80 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B7E84 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B7E88 */ _t18 = cpu->r[10] + 0x00004030u;
|
|
/* 022B7E88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B7E8C */ _t19 = cpu->r[12] + 0x00004028u;
|
|
/* 022B7E8C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B7E90 */ _ft20 = sqrt(cpu->f[1]);
|
|
/* 022B7E90 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 022B7E90 */ cpu->f[10] = _ft21 / _ft20;
|
|
/* 022B7E94 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 022B7E98 */ cpu->f[8] = cpu->f[10] * cpu->f[12];
|
|
/* 022B7E9C */ cpu->f[11] = -fma(cpu->f[11], cpu->f[1], -(cpu->f[13]));
|
|
/* 022B7EA0 */ cpu->f[10] = cpu->f[11] * cpu->f[8];
|
|
/* 022B7EA4 */ /* nop */
|
|
/* 022B7EA8 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7EA8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B7EAC */ /* nop */
|
|
/* 022B7EB0 */ cpu->f[8] = cpu->f[8] * cpu->f[10];
|
|
/* 022B7EB4 */ /* nop */
|
|
/* 022B7EB8 */ cpu->f[1] = cpu->f[1] * cpu->f[10];
|
|
/* 022B7EBC */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022B7EBC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[8]);
|
|
L_022B7EC0: ; // 0x22b7ec0
|
|
/* 022B7EC0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022B7EC4 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022B7EC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B7EC8 */ cpu->r[10] = 0x101C0000u;
|
|
/* 022B7ECC */ _t25 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 022B7ECC */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B7ED0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B7ED4 */ _t26 = cpu->r[10] + 0x00001EF8u;
|
|
/* 022B7ED4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B7ED8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B7EDC */ cpu->r[4] = cpu->r[9] + 0x00000004u;
|
|
/* 022B7EE0 */ _t27 = cpu->r[31] + 0x00000004u;
|
|
/* 022B7EE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B7EE4 */ _t28 = cpu->r[12] + 0x00004094u;
|
|
/* 022B7EE4 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B7EE8 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B7EE8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022B7EE8 */ if (_t30) goto L_022B7F18; else goto L_022B7EEC;
|
|
L_022B7EEC: ; // 0x22b7eec
|
|
/* 022B7EEC */ cpu->r[5] = 0x00000000u;
|
|
/* 022B7EF0 */ cpu->f[1] = cpu->f[4];
|
|
/* 022B7EF4 */ cpu->r[8] = 0x000001FFu;
|
|
/* 022B7EF8 */ cpu->r[6] = cpu->r[5];
|
|
/* 022B7EFC */ cpu->r[10] = cpu->r[5];
|
|
/* 022B7F00 */ cpu->r[7] = 0x00000008u;
|
|
/* 022B7F04 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 022B7F04 */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
/* 022B7F08 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022B7F0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B7F10 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 022B7F10 */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 022B7F14 */ goto L_022B7F40;
|
|
L_022B7F18: ; // 0x22b7f18
|
|
/* 022B7F18 */ cpu->f[3] = cpu->f[2];
|
|
/* 022B7F1C */ cpu->r[8] = cpu->r[9];
|
|
/* 022B7F20 */ cpu->r[9] = cpu->r[31];
|
|
/* 022B7F24 */ cpu->f[2] = cpu->f[4];
|
|
/* 022B7F28 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B7F2C */ cpu->r[6] = 0x00000008u;
|
|
/* 022B7F30 */ cpu->r[7] = 0x000001FFu;
|
|
/* 022B7F34 */ Gambit_fn_0204A864(cpu);
|
|
/* 022B7F38 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B7F3C */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 022B7F3C */ rbrew_write32(cpu->mem, _t33, cpu->r[3]);
|
|
L_022B7F40: ; // 0x22b7f40
|
|
/* 022B7F40 */ cpu->r[3] = cpu->r[0];
|
|
/* 022B7F44 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B7F44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B7F48 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 022B7F48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B7F4C */ cpu->lr = cpu->r[0];
|
|
/* 022B7F50 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022B7F54 */ return;
|
|
}
|
|
|
|
// fn_022B7F58 @ 0x22b7f58
|
|
void Gambit_fn_022B7F58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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, _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;
|
|
double _ft138, _ft139;
|
|
|
|
L_022B7F58: ; // 0x22b7f58
|
|
/* 022B7F58 */ _t0 = cpu->r[1] + 0xFFFFFE50u;
|
|
/* 022B7F58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B7F58 */ cpu->r[1] = _t0;
|
|
/* 022B7F5C */ /* nop */
|
|
/* 022B7F60 */ cpu->r[0] = cpu->lr;
|
|
/* 022B7F64 */ _t1 = cpu->r[1] + 0x00000190u;
|
|
/* 022B7F64 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022B7F68 */ /* nop */
|
|
/* 022B7F6C */ _t2 = cpu->r[1] + 0x00000180u;
|
|
/* 022B7F6C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 022B7F70 */ /* nop */
|
|
/* 022B7F74 */ _t3 = cpu->r[1] + 0x00000170u;
|
|
/* 022B7F74 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[28]);
|
|
/* 022B7F78 */ _t4 = cpu->r[1] + 0x00000198u;
|
|
/* 022B7F78 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 022B7F7C */ /* nop */
|
|
/* 022B7F80 */ _t5 = cpu->r[1] + 0x00000188u;
|
|
/* 022B7F80 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 022B7F84 */ _t6 = cpu->r[1] + 0x000001A0u;
|
|
/* 022B7F84 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[31]);
|
|
/* 022B7F88 */ _t7 = cpu->r[1] + 0x000001B4u;
|
|
/* 022B7F88 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022B7F8C */ /* nop */
|
|
/* 022B7F90 */ _t8 = cpu->r[1] + 0x00000178u;
|
|
/* 022B7F90 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[28]);
|
|
/* 022B7F94 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B7F98 */ _t9 = cpu->r[1] + 0x000001A8u;
|
|
/* 022B7F98 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[31]);
|
|
/* 022B7F9C */ _t10 = cpu->r[31] + 0x00000048u;
|
|
/* 022B7F9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B7FA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B7FA4 */ cpu->r[30] = cpu->r[4];
|
|
/* 022B7FA8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7FA8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022B7FA8 */ if (_t12) goto L_022B802C; else goto L_022B7FAC;
|
|
L_022B7FAC: ; // 0x22b7fac
|
|
/* 022B7FAC */ _t13 = cpu->r[3] + 0x000001DCu;
|
|
/* 022B7FAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B7FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022B7FB4 */ cpu->r[4] = cpu->r[30];
|
|
/* 022B7FB8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7FB8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022B7FB8 */ if (_t15) goto L_022B8020; else goto L_022B7FBC;
|
|
L_022B7FBC: ; // 0x22b7fbc
|
|
/* 022B7FBC */ Gambit_fn_024AE2A0(cpu);
|
|
/* 022B7FC0 */ _t16 = cpu->r[31] + 0x00000048u;
|
|
/* 022B7FC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B7FC4 */ _t17 = cpu->r[8] + 0x000001D4u;
|
|
/* 022B7FC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B7FC8 */ _t18 = cpu->r[8] + 0x000001DCu;
|
|
/* 022B7FC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B7FCC */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B7FD0 */ cpu->r[11] = cpu->r[29] + cpu->r[9];
|
|
/* 022B7FD4 */ cpu->r[27] = cpu->r[3];
|
|
/* 022B7FD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[11]);
|
|
/* 022B7FDC */ cpu->r[28] = cpu->r[8] + 0x000001D4u;
|
|
/* 022B7FE0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7FE0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B7FE0 */ if (_t20) goto L_022B8014; else goto L_022B7FE4;
|
|
L_022B7FE4: ; // 0x22b7fe4
|
|
/* 022B7FE4 */ _t21 = cpu->r[29] + 0x00000000u;
|
|
/* 022B7FE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B7FE8 */ cpu->r[4] = cpu->r[30];
|
|
/* 022B7FEC */ Gambit_fn_024AE2A0(cpu);
|
|
/* 022B7FF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B7FF4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B7FF4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B7FF4 */ if (_t23) goto L_022B7FF8; else goto L_022B802C;
|
|
L_022B7FF8: ; // 0x22b7ff8
|
|
/* 022B7FF8 */ _t24 = cpu->r[28] + 0x00000000u;
|
|
/* 022B7FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B7FFC */ _t25 = cpu->r[28] + 0x00000008u;
|
|
/* 022B7FFC */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B8000 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B8004 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 022B8008 */ cpu->r[0] = cpu->r[7] + cpu->r[0];
|
|
/* 022B800C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 022B8010 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8010 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B8010 */ if (_t27) goto L_022B8014; else goto L_022B7FE4;
|
|
L_022B8014: ; // 0x22b8014
|
|
/* 022B8014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022B8018 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8018 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022B8018 */ if (_t29) goto L_022B8534; else goto L_022B801C;
|
|
L_022B801C: ; // 0x22b801c
|
|
/* 022B801C */ goto L_022B802C;
|
|
L_022B8020: ; // 0x22b8020
|
|
/* 022B8020 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 022B8024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B8028 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8028 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022B8028 */ if (_t31) goto L_022B8534; else goto L_022B802C;
|
|
L_022B802C: ; // 0x22b802c
|
|
/* 022B802C */ cpu->r[3] = cpu->r[1] + 0x000000ECu;
|
|
/* 022B8030 */ cpu->r[4] = cpu->r[31] + 0x00000008u;
|
|
/* 022B8034 */ cpu->r[5] = 0x00000002u;
|
|
/* 022B8038 */ Gambit_fn_0200FE00(cpu);
|
|
/* 022B803C */ cpu->r[4] = cpu->r[31] + 0x00000008u;
|
|
/* 022B8040 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022B8044 */ Gambit_fn_0200D450(cpu);
|
|
/* 022B8048 */ /* nop */
|
|
/* 022B804C */ /* nop */
|
|
/* 022B8050 */ _t32 = cpu->r[30] + 0x00000008u;
|
|
/* 022B8050 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B8054 */ /* nop */
|
|
/* 022B8058 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8058 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B805C */ /* nop */
|
|
/* 022B8060 */ _t34 = cpu->r[1] + 0x00000060u;
|
|
/* 022B8060 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B8064 */ cpu->f[8] = cpu->f[11] - cpu->f[13];
|
|
/* 022B8068 */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B8068 */ cpu->r[7] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B806C */ _t36 = cpu->r[1] + 0x000000FCu;
|
|
/* 022B806C */ rbrew_write32(cpu->mem, _t36, cpu->r[9]);
|
|
/* 022B8070 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 022B8074 */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 022B8074 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[8]);
|
|
/* 022B8078 */ _t38 = cpu->r[1] + 0x00000064u;
|
|
/* 022B8078 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B807C */ cpu->r[5] = 0x00000001u;
|
|
/* 022B8080 */ _t39 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B8080 */ rbrew_write32(cpu->mem, _t39, cpu->r[7]);
|
|
/* 022B8084 */ cpu->r[4] = cpu->r[31] + 0x00000008u;
|
|
/* 022B8088 */ _t40 = cpu->r[1] + 0x00000100u;
|
|
/* 022B8088 */ rbrew_write32(cpu->mem, _t40, cpu->r[10]);
|
|
/* 022B808C */ Gambit_fn_0200FE00(cpu);
|
|
/* 022B8090 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 022B8094 */ cpu->r[4] = cpu->r[1] + 0x000000F8u;
|
|
/* 022B8098 */ cpu->r[5] = cpu->r[1] + 0x00000128u;
|
|
/* 022B809C */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B80A0 */ cpu->r[3] = cpu->r[1] + 0x00000128u;
|
|
/* 022B80A4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022B80A8 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B80AC */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B80B0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B80B4 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B80B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B80B8 */ _t42 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022B80B8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B80BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[30]);
|
|
/* 022B80C0 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B80C0 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022B80C0 */ if (_t44) goto L_022B80C4; else goto L_022B80F4;
|
|
L_022B80C4: ; // 0x22b80c4
|
|
/* 022B80C4 */ _t45 = cpu->r[1] + 0x00000030u;
|
|
/* 022B80C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022B80C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[30]);
|
|
/* 022B80CC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B80CC */ _t47 = _t46 & 0x00000001u;
|
|
/* 022B80CC */ if (_t47) goto L_022B80D0; else goto L_022B80F4;
|
|
L_022B80D0: ; // 0x22b80d0
|
|
/* 022B80D0 */ _t48 = cpu->r[1] + 0x00000034u;
|
|
/* 022B80D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022B80D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[30]);
|
|
/* 022B80D8 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B80D8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022B80D8 */ if (_t50) goto L_022B80DC; else goto L_022B80F4;
|
|
L_022B80DC: ; // 0x22b80dc
|
|
/* 022B80DC */ _t51 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B80DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B80E0 */ _t52 = cpu->r[1] + 0x00000100u;
|
|
/* 022B80E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022B80E4 */ _t53 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B80E4 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 022B80E8 */ _t54 = cpu->r[1] + 0x000000FCu;
|
|
/* 022B80E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022B80EC */ _t55 = cpu->r[1] + 0x00000034u;
|
|
/* 022B80EC */ rbrew_write32(cpu->mem, _t55, cpu->r[8]);
|
|
/* 022B80F0 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 022B80F0 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
L_022B80F4: ; // 0x22b80f4
|
|
/* 022B80F4 */ _t57 = cpu->r[1] + 0x00000028u;
|
|
/* 022B80F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022B80F8 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B80FC */ _t58 = cpu->r[31] + 0x00000044u;
|
|
/* 022B80FC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B8100 */ /* nop */
|
|
/* 022B8104 */ cpu->f[6] = cpu->f[11] * cpu->f[7];
|
|
/* 022B8108 */ _t59 = cpu->r[11] + 0x00004028u;
|
|
/* 022B8108 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022B810C */ _t60 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B810C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022B8110 */ /* nop */
|
|
/* 022B8114 */ _t61 = cpu->r[1] + 0x00000070u;
|
|
/* 022B8114 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[6]);
|
|
/* 022B8118 */ _t62 = cpu->r[1] + 0x00000070u;
|
|
/* 022B8118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B811C */ /* nop */
|
|
/* 022B8120 */ _t63 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B8120 */ cpu->r[7] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B8124 */ _t64 = cpu->r[1] + 0x00000058u;
|
|
/* 022B8124 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 022B8128 */ _t65 = cpu->r[1] + 0x00000058u;
|
|
/* 022B8128 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022B812C */ _t66 = cpu->r[1] + 0x00000068u;
|
|
/* 022B812C */ cpu->r[6] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022B8130 */ cpu->f[9] = cpu->f[0] * cpu->f[31];
|
|
/* 022B8134 */ _t67 = cpu->r[1] + 0x00000050u;
|
|
/* 022B8134 */ rbrew_write32(cpu->mem, _t67, cpu->r[6]);
|
|
/* 022B8138 */ _t68 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8138 */ rbrew_write32(cpu->mem, _t68, cpu->r[7]);
|
|
/* 022B813C */ /* nop */
|
|
/* 022B8140 */ _t69 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B8140 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[6]);
|
|
/* 022B8144 */ /* nop */
|
|
/* 022B8148 */ _t70 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B8148 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[9]);
|
|
/* 022B814C */ _t71 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B814C */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022B8150 */ /* nop */
|
|
/* 022B8154 */ _t72 = cpu->r[1] + 0x00000074u;
|
|
/* 022B8154 */ cpu->r[9] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022B8158 */ _t73 = cpu->r[1] + 0x00000078u;
|
|
/* 022B8158 */ cpu->r[10] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022B815C */ _t74 = cpu->r[1] + 0x00000044u;
|
|
/* 022B815C */ rbrew_write32(cpu->mem, _t74, cpu->r[9]);
|
|
/* 022B8160 */ _t75 = cpu->r[1] + 0x00000048u;
|
|
/* 022B8160 */ rbrew_write32(cpu->mem, _t75, cpu->r[10]);
|
|
/* 022B8164 */ /* nop */
|
|
/* 022B8168 */ /* nop */
|
|
/* 022B816C */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B816C */ rbrew_write32(cpu->mem, _t76, cpu->r[0]);
|
|
/* 022B8170 */ _t77 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8170 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 022B8174 */ /* nop */
|
|
/* 022B8178 */ /* nop */
|
|
/* 022B817C */ cpu->f[11] = cpu->f[5] + cpu->f[12];
|
|
/* 022B8180 */ _t78 = cpu->r[1] + 0x00000080u;
|
|
/* 022B8180 */ cpu->r[5] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B8184 */ _t79 = cpu->r[1] + 0x00000084u;
|
|
/* 022B8184 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022B8188 */ _t80 = cpu->r[1] + 0x00000088u;
|
|
/* 022B8188 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[11]);
|
|
/* 022B818C */ _t81 = cpu->r[1] + 0x00000088u;
|
|
/* 022B818C */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022B8190 */ /* nop */
|
|
/* 022B8194 */ _t82 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B8194 */ rbrew_write32(cpu->mem, _t82, cpu->r[6]);
|
|
/* 022B8198 */ /* nop */
|
|
/* 022B819C */ _t83 = cpu->r[1] + 0x00000098u;
|
|
/* 022B819C */ cpu->r[6] = rbrew_read32(cpu->mem, _t83);
|
|
/* 022B81A0 */ _t84 = cpu->r[1] + 0x00000038u;
|
|
/* 022B81A0 */ rbrew_write32(cpu->mem, _t84, cpu->r[5]);
|
|
/* 022B81A4 */ /* nop */
|
|
/* 022B81A8 */ _t85 = cpu->r[1] + 0x00000038u;
|
|
/* 022B81A8 */ rbrew_write32(cpu->mem, _t85, cpu->r[6]);
|
|
/* 022B81AC */ _t86 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B81AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022B81B0 */ /* nop */
|
|
/* 022B81B4 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B81B8 */ _t87 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B81B8 */ rbrew_write32(cpu->mem, _t87, cpu->r[7]);
|
|
/* 022B81BC */ /* nop */
|
|
/* 022B81C0 */ /* nop */
|
|
/* 022B81C4 */ _t88 = cpu->r[8] + 0x00004098u;
|
|
/* 022B81C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 022B81C8 */ _t89 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B81C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t89);
|
|
/* 022B81CC */ _t90 = cpu->r[1] + 0x00000040u;
|
|
/* 022B81CC */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 022B81D0 */ _t91 = cpu->r[1] + 0x00000040u;
|
|
/* 022B81D0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 022B81D4 */ _t92 = cpu->r[1] + 0x00000040u;
|
|
/* 022B81D4 */ rbrew_write32(cpu->mem, _t92, cpu->r[8]);
|
|
/* 022B81D8 */ _t93 = cpu->r[1] + 0x00000040u;
|
|
/* 022B81D8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 022B81DC */ /* nop */
|
|
/* 022B81E0 */ _t94 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B81E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 022B81E4 */ cpu->r[4] = cpu->r[1] + 0x00000134u;
|
|
/* 022B81E8 */ _t95 = cpu->r[30] + 0x00000008u;
|
|
/* 022B81E8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 022B81EC */ _t96 = cpu->r[1] + 0x00000090u;
|
|
/* 022B81EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t96);
|
|
/* 022B81F0 */ cpu->f[11] = cpu->f[12] * cpu->f[0];
|
|
/* 022B81F4 */ _t97 = cpu->r[1] + 0x00000134u;
|
|
/* 022B81F4 */ rbrew_write32(cpu->mem, _t97, cpu->r[0]);
|
|
/* 022B81F8 */ _t98 = cpu->r[1] + 0x00000138u;
|
|
/* 022B81F8 */ rbrew_write32(cpu->mem, _t98, cpu->r[7]);
|
|
/* 022B81FC */ /* nop */
|
|
/* 022B8200 */ _t99 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B8200 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[11]);
|
|
/* 022B8204 */ _t100 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B8204 */ cpu->r[5] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022B8208 */ cpu->f[7] = cpu->f[6] - cpu->f[8];
|
|
/* 022B820C */ /* nop */
|
|
/* 022B8210 */ _t101 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B8210 */ cpu->r[12] = rbrew_read32(cpu->mem, _t101);
|
|
/* 022B8214 */ _t102 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8214 */ rbrew_write32(cpu->mem, _t102, cpu->r[5]);
|
|
/* 022B8218 */ _t103 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8218 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 022B821C */ _t104 = cpu->r[1] + 0x00000094u;
|
|
/* 022B821C */ rbrew_write_f32(cpu->mem, _t104, cpu->f[7]);
|
|
/* 022B8220 */ _t105 = cpu->r[1] + 0x00000094u;
|
|
/* 022B8220 */ cpu->r[10] = rbrew_read32(cpu->mem, _t105);
|
|
/* 022B8224 */ _t106 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B8224 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022B8228 */ _t107 = cpu->r[1] + 0x00000044u;
|
|
/* 022B8228 */ rbrew_write32(cpu->mem, _t107, cpu->r[12]);
|
|
/* 022B822C */ cpu->f[7] = cpu->f[5] + cpu->f[8];
|
|
/* 022B8230 */ _t108 = cpu->r[1] + 0x00000048u;
|
|
/* 022B8230 */ rbrew_write32(cpu->mem, _t108, cpu->r[0]);
|
|
/* 022B8234 */ /* nop */
|
|
/* 022B8238 */ _t109 = cpu->r[1] + 0x0000013Cu;
|
|
/* 022B8238 */ rbrew_write32(cpu->mem, _t109, cpu->r[10]);
|
|
/* 022B823C */ /* nop */
|
|
/* 022B8240 */ _t110 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B8240 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[7]);
|
|
/* 022B8244 */ _t111 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B8244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 022B8248 */ /* nop */
|
|
/* 022B824C */ _t112 = cpu->r[1] + 0x000000B0u;
|
|
/* 022B824C */ cpu->r[8] = rbrew_read32(cpu->mem, _t112);
|
|
/* 022B8250 */ _t113 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B8250 */ cpu->r[9] = rbrew_read32(cpu->mem, _t113);
|
|
/* 022B8254 */ _t114 = cpu->r[1] + 0x00000050u;
|
|
/* 022B8254 */ rbrew_write32(cpu->mem, _t114, cpu->r[8]);
|
|
/* 022B8258 */ _t115 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8258 */ rbrew_write32(cpu->mem, _t115, cpu->r[9]);
|
|
/* 022B825C */ /* nop */
|
|
/* 022B8260 */ _t116 = cpu->r[1] + 0x00000058u;
|
|
/* 022B8260 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 022B8264 */ _t117 = cpu->r[1] + 0x00000058u;
|
|
/* 022B8264 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 022B8268 */ /* nop */
|
|
/* 022B826C */ /* nop */
|
|
/* 022B8270 */ _t118 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B8270 */ cpu->r[6] = rbrew_read32(cpu->mem, _t118);
|
|
/* 022B8274 */ cpu->f[11] = cpu->f[6] - cpu->f[12];
|
|
/* 022B8278 */ _t119 = cpu->r[1] + 0x000000BCu;
|
|
/* 022B8278 */ cpu->r[5] = rbrew_read32(cpu->mem, _t119);
|
|
/* 022B827C */ _t120 = cpu->r[1] + 0x00000144u;
|
|
/* 022B827C */ rbrew_write32(cpu->mem, _t120, cpu->r[6]);
|
|
/* 022B8280 */ _t121 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B8280 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[11]);
|
|
/* 022B8284 */ _t122 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B8284 */ cpu->r[7] = rbrew_read32(cpu->mem, _t122);
|
|
/* 022B8288 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B828C */ _t123 = cpu->r[1] + 0x00000140u;
|
|
/* 022B828C */ rbrew_write32(cpu->mem, _t123, cpu->r[5]);
|
|
/* 022B8290 */ cpu->r[5] = cpu->r[1] + 0x00000104u;
|
|
/* 022B8294 */ _t124 = cpu->r[1] + 0x00000148u;
|
|
/* 022B8294 */ rbrew_write32(cpu->mem, _t124, cpu->r[7]);
|
|
/* 022B8298 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B829C */ cpu->r[5] = cpu->r[1] + 0x00000110u;
|
|
/* 022B82A0 */ cpu->r[4] = cpu->r[1] + 0x00000140u;
|
|
/* 022B82A4 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B82A8 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B82AC */ /* nop */
|
|
/* 022B82B0 */ /* nop */
|
|
/* 022B82B4 */ _t125 = cpu->r[1] + 0x00000118u;
|
|
/* 022B82B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 022B82B8 */ /* nop */
|
|
/* 022B82BC */ _t126 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022B82BC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 022B82C0 */ /* nop */
|
|
/* 022B82C4 */ cpu->f[0] = fma(cpu->f[10], cpu->f[12], cpu->f[8]);
|
|
/* 022B82C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[30]);
|
|
/* 022B82CC */ /* nop */
|
|
/* 022B82D0 */ cpu->r[29] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B82D4 */ cpu->r[29] = cpu->r[29] ^ 0x00000001u;
|
|
/* 022B82D8 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 022B82DC */ cpu->r[4] = cpu->r[1] + 0x000000F8u;
|
|
/* 022B82E0 */ cpu->r[5] = cpu->r[1] + 0x0000011Cu;
|
|
/* 022B82E4 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B82E8 */ cpu->r[3] = cpu->r[1] + 0x0000011Cu;
|
|
/* 022B82EC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022B82F0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022B82F4 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B82F8 */ _t127 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B82F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 022B82FC */ cpu->f[8] = cpu->f[13] * cpu->f[13];
|
|
/* 022B8300 */ _t128 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8300 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 022B8304 */ cpu->f[9] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 022B8308 */ _t129 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8308 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 022B830C */ cpu->f[29] = fma(cpu->f[10], cpu->f[10], cpu->f[9]);
|
|
/* 022B8310 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[30]);
|
|
/* 022B8314 */ _t130 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8314 */ _t131 = _t130 & 0x00000001u;
|
|
/* 022B8314 */ if (_t131) goto L_022B836C; else goto L_022B8318;
|
|
L_022B8318: ; // 0x22b8318
|
|
/* 022B8318 */ /* nop */
|
|
/* 022B831C */ /* nop */
|
|
/* 022B8320 */ /* nop */
|
|
/* 022B8324 */ /* nop */
|
|
/* 022B8328 */ _t132 = cpu->r[1] + 0x000000F4u;
|
|
/* 022B8328 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 022B832C */ cpu->r[5] = cpu->r[1] + 0x0000014Cu;
|
|
/* 022B8330 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B8334 */ cpu->r[3] = cpu->r[1] + 0x000000ECu;
|
|
/* 022B8338 */ cpu->f[28] = fma(cpu->f[7], cpu->f[10], cpu->f[12]);
|
|
/* 022B833C */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B8340 */ cpu->r[3] = cpu->r[1] + 0x0000014Cu;
|
|
/* 022B8344 */ Gambit_fn_02C69350(cpu);
|
|
/* 022B8348 */ cpu->f[2] = cpu->f[28];
|
|
/* 022B834C */ Gambit_fn_02C89074(cpu);
|
|
/* 022B8350 */ _t133 = cpu->r[31] + 0x00000040u;
|
|
/* 022B8350 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 022B8354 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B8358 */ _t134 = cpu->r[10] + 0x0000409Cu;
|
|
/* 022B8358 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 022B835C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B8360 */ cpu->f[9] = cpu->f[8] * cpu->f[9];
|
|
/* 022B8364 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8364 */ _t136 = _t135 & 0x00000001u;
|
|
/* 022B8364 */ if (_t136) goto L_022B8534; else goto L_022B8368;
|
|
L_022B8368: ; // 0x22b8368
|
|
/* 022B8368 */ goto L_022B83F0;
|
|
L_022B836C: ; // 0x22b836c
|
|
/* 022B836C */ cpu->r[6] = 0x10060000u;
|
|
/* 022B8370 */ _t137 = cpu->r[6] + 0x00004030u;
|
|
/* 022B8370 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 022B8374 */ _ft138 = sqrt(cpu->f[29]);
|
|
/* 022B8374 */ _ft139 = (double)(int32_t)0x00000001u;
|
|
/* 022B8374 */ cpu->f[11] = _ft139 / _ft138;
|
|
/* 022B8378 */ cpu->f[13] = cpu->f[11] * cpu->f[11];
|
|
/* 022B837C */ cpu->f[7] = cpu->f[11] * cpu->f[31];
|
|
/* 022B8380 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[29], -(cpu->f[10]));
|
|
/* 022B8384 */ cpu->f[11] = cpu->f[13] * cpu->f[7];
|
|
/* 022B8388 */ _t140 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8388 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 022B838C */ cpu->f[29] = cpu->f[29] * cpu->f[11];
|
|
/* 022B8390 */ /* nop */
|
|
/* 022B8394 */ cpu->f[10] = cpu->f[10] * cpu->f[11];
|
|
/* 022B8398 */ /* nop */
|
|
/* 022B839C */ /* nop */
|
|
/* 022B83A0 */ /* nop */
|
|
/* 022B83A4 */ /* nop */
|
|
/* 022B83A8 */ /* nop */
|
|
/* 022B83AC */ _t141 = cpu->r[1] + 0x000000F4u;
|
|
/* 022B83AC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 022B83B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B83B4 */ cpu->r[5] = cpu->r[1] + 0x0000014Cu;
|
|
/* 022B83B8 */ cpu->r[3] = cpu->r[1] + 0x000000ECu;
|
|
/* 022B83BC */ cpu->f[28] = fma(cpu->f[7], cpu->f[10], cpu->f[12]);
|
|
/* 022B83C0 */ _t142 = cpu->r[1] + 0x00000010u;
|
|
/* 022B83C0 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[10]);
|
|
/* 022B83C4 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B83C8 */ cpu->r[3] = cpu->r[1] + 0x0000014Cu;
|
|
/* 022B83CC */ Gambit_fn_02C69350(cpu);
|
|
/* 022B83D0 */ cpu->f[2] = cpu->f[28];
|
|
/* 022B83D4 */ Gambit_fn_02C89074(cpu);
|
|
/* 022B83D8 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B83DC */ _t143 = cpu->r[31] + 0x00000040u;
|
|
/* 022B83DC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 022B83E0 */ _t144 = cpu->r[10] + 0x0000409Cu;
|
|
/* 022B83E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 022B83E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B83E8 */ cpu->f[9] = cpu->f[8] * cpu->f[9];
|
|
/* 022B83EC */ _t145 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B83EC */ _t146 = _t145 & 0x00000001u;
|
|
/* 022B83EC */ if (_t146) goto L_022B8534; else goto L_022B83F0;
|
|
L_022B83F0: ; // 0x22b83f0
|
|
/* 022B83F0 */ _t147 = cpu->r[31] + 0x0000003Cu;
|
|
/* 022B83F0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 022B83F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[7]);
|
|
/* 022B83F8 */ _t148 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B83F8 */ _t149 = _t148 & 0x00000001u;
|
|
/* 022B83F8 */ if (_t149) goto L_022B8534; else goto L_022B83FC;
|
|
L_022B83FC: ; // 0x22b83fc
|
|
/* 022B83FC */ cpu->f[9] = cpu->f[9] * cpu->f[31];
|
|
/* 022B8400 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 022B8404 */ _t150 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8404 */ _t151 = _t150 & 0x00000001u;
|
|
/* 022B8404 */ if (_t151) goto L_022B8534; else goto L_022B8408;
|
|
L_022B8408: ; // 0x22b8408
|
|
/* 022B8408 */ _t152 = cpu->r[31] + 0x00000000u;
|
|
/* 022B8408 */ cpu->r[0] = rbrew_read8(cpu->mem, _t152);
|
|
/* 022B840C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B8410 */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8410 */ _t154 = _t153 & 0x00000001u;
|
|
/* 022B8410 */ if (_t154) goto L_022B8570; else goto L_022B8414;
|
|
L_022B8414: ; // 0x22b8414
|
|
/* 022B8414 */ cpu->r[3] = cpu->r[1] + 0x00000104u;
|
|
/* 022B8418 */ cpu->r[4] = cpu->r[31] + 0x00000008u;
|
|
/* 022B841C */ cpu->r[5] = 0x00000001u;
|
|
/* 022B8420 */ Gambit_fn_0200FE00(cpu);
|
|
/* 022B8424 */ /* nop */
|
|
/* 022B8428 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B842C */ _t155 = cpu->r[31] + 0x00000038u;
|
|
/* 022B842C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 022B8430 */ _t156 = cpu->r[8] + 0x00004094u;
|
|
/* 022B8430 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t156);
|
|
/* 022B8434 */ /* nop */
|
|
/* 022B8438 */ _t157 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022B8438 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 022B843C */ /* nop */
|
|
/* 022B8440 */ _t158 = cpu->r[1] + 0x000000C8u;
|
|
/* 022B8440 */ cpu->r[9] = rbrew_read32(cpu->mem, _t158);
|
|
/* 022B8444 */ cpu->f[0] = cpu->f[7] * cpu->f[10];
|
|
/* 022B8448 */ _t159 = cpu->r[1] + 0x000000CCu;
|
|
/* 022B8448 */ cpu->r[10] = rbrew_read32(cpu->mem, _t159);
|
|
/* 022B844C */ _t160 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B844C */ rbrew_write32(cpu->mem, _t160, cpu->r[9]);
|
|
/* 022B8450 */ _t161 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B8450 */ rbrew_write_f32(cpu->mem, _t161, cpu->f[0]);
|
|
/* 022B8454 */ _t162 = cpu->r[1] + 0x000000FCu;
|
|
/* 022B8454 */ rbrew_write32(cpu->mem, _t162, cpu->r[10]);
|
|
/* 022B8458 */ /* nop */
|
|
/* 022B845C */ /* nop */
|
|
/* 022B8460 */ _t163 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8460 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 022B8464 */ /* nop */
|
|
/* 022B8468 */ _t164 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B8468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t164);
|
|
/* 022B846C */ /* nop */
|
|
/* 022B8470 */ _t165 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B8470 */ cpu->r[6] = rbrew_read32(cpu->mem, _t165);
|
|
/* 022B8474 */ _t166 = cpu->r[1] + 0x00000100u;
|
|
/* 022B8474 */ rbrew_write32(cpu->mem, _t166, cpu->r[0]);
|
|
/* 022B8478 */ _t167 = cpu->r[1] + 0x00000100u;
|
|
/* 022B8478 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 022B847C */ cpu->r[9] = 0x10060000u;
|
|
/* 022B8480 */ _t168 = cpu->r[1] + 0x00000024u;
|
|
/* 022B8480 */ rbrew_write32(cpu->mem, _t168, cpu->r[6]);
|
|
/* 022B8484 */ _t169 = cpu->r[9] + 0x000040A0u;
|
|
/* 022B8484 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 022B8488 */ cpu->f[7] = cpu->f[8] + cpu->f[9];
|
|
/* 022B848C */ _t170 = cpu->r[1] + 0x00000024u;
|
|
/* 022B848C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 022B8490 */ _t171 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8490 */ rbrew_write_f32(cpu->mem, _t171, cpu->f[13]);
|
|
/* 022B8494 */ _t172 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B8494 */ rbrew_write_f32(cpu->mem, _t172, cpu->f[7]);
|
|
/* 022B8498 */ _t173 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B8498 */ cpu->r[0] = rbrew_read32(cpu->mem, _t173);
|
|
/* 022B849C */ _t174 = cpu->r[1] + 0x00000008u;
|
|
/* 022B849C */ rbrew_write_f32(cpu->mem, _t174, cpu->f[30]);
|
|
/* 022B84A0 */ /* nop */
|
|
/* 022B84A4 */ _t175 = cpu->r[1] + 0x000000D4u;
|
|
/* 022B84A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t175);
|
|
/* 022B84A8 */ /* nop */
|
|
/* 022B84AC */ _t176 = cpu->r[30] + 0x00000008u;
|
|
/* 022B84AC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 022B84B0 */ /* nop */
|
|
/* 022B84B4 */ _t177 = cpu->r[31] + 0x00000004u;
|
|
/* 022B84B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t177);
|
|
/* 022B84B8 */ /* nop */
|
|
/* 022B84BC */ _t178 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B84BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t178);
|
|
/* 022B84C0 */ _t179 = cpu->r[1] + 0x00000028u;
|
|
/* 022B84C0 */ rbrew_write32(cpu->mem, _t179, cpu->r[0]);
|
|
/* 022B84C4 */ _t180 = cpu->r[1] + 0x00000028u;
|
|
/* 022B84C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 022B84C8 */ _t181 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B84C8 */ rbrew_write32(cpu->mem, _t181, cpu->r[10]);
|
|
/* 022B84CC */ _t182 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B84CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 022B84D0 */ _t183 = cpu->r[1] + 0x00000020u;
|
|
/* 022B84D0 */ rbrew_write32(cpu->mem, _t183, cpu->r[12]);
|
|
/* 022B84D4 */ _t184 = cpu->r[1] + 0x00000020u;
|
|
/* 022B84D4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 022B84D8 */ _t185 = cpu->r[1] + 0x000000E4u;
|
|
/* 022B84D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t185);
|
|
/* 022B84DC */ _t186 = cpu->r[1] + 0x00000030u;
|
|
/* 022B84DC */ rbrew_write_f32(cpu->mem, _t186, cpu->f[12]);
|
|
/* 022B84E0 */ _t187 = cpu->r[1] + 0x00000050u;
|
|
/* 022B84E0 */ rbrew_write32(cpu->mem, _t187, cpu->r[12]);
|
|
/* 022B84E4 */ _t188 = cpu->r[1] + 0x00000050u;
|
|
/* 022B84E4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 022B84E8 */ _t189 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B84E8 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[10]);
|
|
/* 022B84EC */ _t190 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B84EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t190);
|
|
/* 022B84F0 */ cpu->f[9] = cpu->f[9] + cpu->f[11];
|
|
/* 022B84F4 */ _t191 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B84F4 */ rbrew_write_f32(cpu->mem, _t191, cpu->f[0]);
|
|
/* 022B84F8 */ _t192 = cpu->r[1] + 0x00000054u;
|
|
/* 022B84F8 */ rbrew_write32(cpu->mem, _t192, cpu->r[0]);
|
|
/* 022B84FC */ _t193 = cpu->r[1] + 0x00000054u;
|
|
/* 022B84FC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t193);
|
|
/* 022B8500 */ _t194 = cpu->r[1] + 0x00000034u;
|
|
/* 022B8500 */ rbrew_write_f32(cpu->mem, _t194, cpu->f[9]);
|
|
/* 022B8504 */ _t195 = cpu->r[1] + 0x00000044u;
|
|
/* 022B8504 */ rbrew_write_f32(cpu->mem, _t195, cpu->f[8]);
|
|
/* 022B8508 */ _t196 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B8508 */ rbrew_write32(cpu->mem, _t196, cpu->r[9]);
|
|
/* 022B850C */ _t197 = cpu->r[1] + 0x00000010u;
|
|
/* 022B850C */ rbrew_write_f32(cpu->mem, _t197, cpu->f[30]);
|
|
/* 022B8510 */ _t198 = cpu->r[1] + 0x00000024u;
|
|
/* 022B8510 */ rbrew_write_f32(cpu->mem, _t198, cpu->f[9]);
|
|
/* 022B8514 */ _t199 = cpu->r[1] + 0x00000040u;
|
|
/* 022B8514 */ rbrew_write_f32(cpu->mem, _t199, cpu->f[7]);
|
|
/* 022B8518 */ _t200 = cpu->r[31] + 0x0000004Cu;
|
|
/* 022B8518 */ cpu->r[0] = rbrew_read8(cpu->mem, _t200);
|
|
/* 022B851C */ _t201 = cpu->r[1] + 0x00000038u;
|
|
/* 022B851C */ rbrew_write_f32(cpu->mem, _t201, cpu->f[13]);
|
|
/* 022B8520 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B8524 */ _t202 = cpu->r[1] + 0x00000048u;
|
|
/* 022B8524 */ rbrew_write8(cpu->mem, _t202, (uint8_t)cpu->r[0]);
|
|
/* 022B8528 */ Gambit_fn_022B7E0C(cpu);
|
|
/* 022B852C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B8530 */ _t203 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8530 */ _t204 = _t203 & 0x00000001u;
|
|
/* 022B8530 */ if (_t204) goto L_022B8570; else goto L_022B8534;
|
|
L_022B8534: ; // 0x22b8534
|
|
/* 022B8534 */ /* nop */
|
|
/* 022B8538 */ _t205 = cpu->r[1] + 0x00000198u;
|
|
/* 022B8538 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 022B853C */ _t206 = cpu->r[1] + 0x000001A8u;
|
|
/* 022B853C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 022B8540 */ _t207 = cpu->r[1] + 0x00000190u;
|
|
/* 022B8540 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t207);
|
|
/* 022B8544 */ _t208 = cpu->r[1] + 0x000001A0u;
|
|
/* 022B8544 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t208);
|
|
/* 022B8548 */ _t209 = cpu->r[1] + 0x00000178u;
|
|
/* 022B8548 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t209);
|
|
/* 022B854C */ _t210 = cpu->r[1] + 0x00000188u;
|
|
/* 022B854C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 022B8550 */ _t211 = cpu->r[1] + 0x00000170u;
|
|
/* 022B8550 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t211);
|
|
/* 022B8554 */ _t212 = cpu->r[1] + 0x00000180u;
|
|
/* 022B8554 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t212);
|
|
/* 022B8558 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B855C */ _t213 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B855C */ _t214 = _t213 & 0x00000001u;
|
|
/* 022B855C */ if (_t214) goto L_022B8560; // else: addr-0 trap, fall-through
|
|
L_022B8560: ; // 0x22b8560
|
|
/* 022B8560 */ _t215 = cpu->r[1] + 0x000001B4u;
|
|
/* 022B8560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t215);
|
|
/* 022B8564 */ cpu->lr = cpu->r[0];
|
|
/* 022B8568 */ cpu->r[1] = cpu->r[1] + 0x000001B0u;
|
|
/* 022B856C */ return;
|
|
L_022B8570: ; // 0x22b8570
|
|
/* 022B8570 */ /* nop */
|
|
/* 022B8574 */ _t216 = cpu->r[1] + 0x00000198u;
|
|
/* 022B8574 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 022B8578 */ _t217 = cpu->r[1] + 0x000001A8u;
|
|
/* 022B8578 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t217);
|
|
/* 022B857C */ _t218 = cpu->r[1] + 0x00000190u;
|
|
/* 022B857C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t218);
|
|
/* 022B8580 */ _t219 = cpu->r[1] + 0x000001A0u;
|
|
/* 022B8580 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t219);
|
|
/* 022B8584 */ _t220 = cpu->r[1] + 0x00000178u;
|
|
/* 022B8584 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t220);
|
|
/* 022B8588 */ _t221 = cpu->r[1] + 0x00000188u;
|
|
/* 022B8588 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 022B858C */ _t222 = cpu->r[1] + 0x00000170u;
|
|
/* 022B858C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t222);
|
|
/* 022B8590 */ _t223 = cpu->r[1] + 0x00000180u;
|
|
/* 022B8590 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t223);
|
|
/* 022B8594 */ cpu->r[3] = 0x00000001u;
|
|
/* 022B8598 */ _t224 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B8598 */ _t225 = _t224 & 0x00000001u;
|
|
/* 022B8598 */ if (_t225) goto L_022B859C; // else: addr-0 trap, fall-through
|
|
L_022B859C: ; // 0x22b859c
|
|
/* 022B859C */ _t226 = cpu->r[1] + 0x000001B4u;
|
|
/* 022B859C */ cpu->r[0] = rbrew_read32(cpu->mem, _t226);
|
|
/* 022B85A0 */ cpu->lr = cpu->r[0];
|
|
/* 022B85A4 */ cpu->r[1] = cpu->r[1] + 0x000001B0u;
|
|
/* 022B85A8 */ return;
|
|
}
|
|
|
|
// fn_022B85AC @ 0x22b85ac
|
|
void Gambit_fn_022B85AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_022B85AC: ; // 0x22b85ac
|
|
/* 022B85AC */ cpu->r[0] = cpu->lr;
|
|
/* 022B85B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B85B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B85B0 */ cpu->r[1] = _t0;
|
|
/* 022B85B4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B85B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B85B8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B85B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B85BC */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B85C0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B85C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B85C4 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B85C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B85C8 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B85C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B85CC */ cpu->r[30] = cpu->r[3];
|
|
/* 022B85D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B85D4 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B85D8 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B85DC */ cpu->r[3] = cpu->r[31];
|
|
/* 022B85E0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B85E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B85E8 */ Gambit_fn_025C5DA4(cpu);
|
|
/* 022B85EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B85F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B85F0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B85F0 */ if (_t7) goto L_022B8608; else goto L_022B85F4;
|
|
L_022B85F4: ; // 0x22b85f4
|
|
/* 022B85F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B85F8 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B85FC */ Gambit_fn_025A9D38(cpu);
|
|
/* 022B8600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B8604 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8604 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B8604 */ if (_t9) goto L_022B861C; else goto L_022B8608;
|
|
L_022B8608: ; // 0x22b8608
|
|
/* 022B8608 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B860C */ cpu->r[4] = cpu->r[31] + 0x00000244u;
|
|
/* 022B8610 */ Gambit_fn_022B7F58(cpu);
|
|
/* 022B8614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B8618 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8618 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022B8618 */ if (_t11) goto L_022B861C; else goto L_022B8620;
|
|
L_022B861C: ; // 0x22b861c
|
|
/* 022B861C */ cpu->r[31] = 0x00000000u;
|
|
L_022B8620: ; // 0x22b8620
|
|
/* 022B8620 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8620 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B8624 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B8628 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8628 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B862C */ cpu->lr = cpu->r[0];
|
|
/* 022B8630 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8630 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B8634 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B8638 */ return;
|
|
}
|
|
|
|
// fn_022B85B0 @ 0x22b85b0
|
|
void Gambit_fn_022B85B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_022B85B0: ; // 0x22b85b0
|
|
/* 022B85B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B85B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B85B0 */ cpu->r[1] = _t0;
|
|
/* 022B85B4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B85B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B85B8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B85B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B85BC */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B85C0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B85C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B85C4 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B85C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B85C8 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B85C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B85CC */ cpu->r[30] = cpu->r[3];
|
|
/* 022B85D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B85D4 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B85D8 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B85DC */ cpu->r[3] = cpu->r[31];
|
|
/* 022B85E0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B85E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B85E8 */ Gambit_fn_025C5DA4(cpu);
|
|
/* 022B85EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B85F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B85F0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B85F0 */ if (_t7) goto L_022B8608; else goto L_022B85F4;
|
|
L_022B85F4: ; // 0x22b85f4
|
|
/* 022B85F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B85F8 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B85FC */ Gambit_fn_025A9D38(cpu);
|
|
/* 022B8600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B8604 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8604 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B8604 */ if (_t9) goto L_022B861C; else goto L_022B8608;
|
|
L_022B8608: ; // 0x22b8608
|
|
/* 022B8608 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B860C */ cpu->r[4] = cpu->r[31] + 0x00000244u;
|
|
/* 022B8610 */ Gambit_fn_022B7F58(cpu);
|
|
/* 022B8614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B8618 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8618 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022B8618 */ if (_t11) goto L_022B861C; else goto L_022B8620;
|
|
L_022B861C: ; // 0x22b861c
|
|
/* 022B861C */ cpu->r[31] = 0x00000000u;
|
|
L_022B8620: ; // 0x22b8620
|
|
/* 022B8620 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8620 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B8624 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B8628 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8628 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B862C */ cpu->lr = cpu->r[0];
|
|
/* 022B8630 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8630 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B8634 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B8638 */ return;
|
|
}
|
|
|
|
// fn_022B863C @ 0x22b863c
|
|
void Gambit_fn_022B863C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022B863C: ; // 0x22b863c
|
|
/* 022B863C */ cpu->r[0] = cpu->lr;
|
|
/* 022B8640 */ cpu->r[12] = 0x101F0000u;
|
|
/* 022B8644 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B8644 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8644 */ cpu->r[1] = _t0;
|
|
/* 022B8648 */ cpu->r[12] = cpu->r[12] + 0x00006350u;
|
|
/* 022B864C */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B864C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B8650 */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8650 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B8654 */ /* nop */
|
|
/* 022B8658 */ _t3 = cpu->r[3] + 0x00000018u;
|
|
/* 022B8658 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B865C */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 022B865C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B8660 */ /* nop */
|
|
/* 022B8664 */ _t5 = cpu->r[12] + 0x00000004u;
|
|
/* 022B8664 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B8668 */ /* nop */
|
|
/* 022B866C */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 022B866C */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B8670 */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 022B8670 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B8674 */ _t8 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8674 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B8678 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8678 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022B867C */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B867C */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022B8680 */ cpu->f[9] = cpu->f[13] * cpu->f[7];
|
|
/* 022B8684 */ /* nop */
|
|
/* 022B8688 */ /* nop */
|
|
/* 022B868C */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B868C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[9]);
|
|
/* 022B8690 */ _t12 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B8690 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B8694 */ /* nop */
|
|
/* 022B8698 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 022B8698 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B869C */ /* nop */
|
|
/* 022B86A0 */ cpu->f[10] = -cpu->f[11];
|
|
/* 022B86A4 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 022B86A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B86A8 */ _t15 = cpu->r[1] + 0x00000034u;
|
|
/* 022B86A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B86AC */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 022B86AC */ rbrew_write_f32(cpu->mem, _t16, cpu->f[10]);
|
|
/* 022B86B0 */ cpu->f[8] = -cpu->f[9];
|
|
/* 022B86B4 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 022B86B4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B86B8 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 022B86B8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B86BC */ cpu->r[6] = 0x10060000u;
|
|
/* 022B86C0 */ cpu->f[12] = -cpu->f[13];
|
|
/* 022B86C4 */ _t19 = cpu->r[3] + 0x00000014u;
|
|
/* 022B86C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B86C8 */ cpu->f[10] = cpu->f[0] + cpu->f[10];
|
|
/* 022B86CC */ _t20 = cpu->r[6] + 0x0000402Cu;
|
|
/* 022B86CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B86D0 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 022B86D0 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 022B86D4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022B86D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B86D8 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 022B86D8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[10]);
|
|
/* 022B86DC */ _t24 = cpu->r[1] + 0x00000038u;
|
|
/* 022B86DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B86E0 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B86E0 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[8]);
|
|
/* 022B86E4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B86E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B86E8 */ _t27 = cpu->r[1] + 0x00000044u;
|
|
/* 022B86E8 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022B86EC */ _t28 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B86EC */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 022B86F0 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 022B86F0 */ rbrew_write32(cpu->mem, _t29, cpu->r[11]);
|
|
/* 022B86F4 */ cpu->r[9] = 0x101C0000u;
|
|
/* 022B86F8 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 022B86F8 */ rbrew_write32(cpu->mem, _t30, cpu->r[6]);
|
|
/* 022B86FC */ cpu->f[1] = cpu->f[11] + cpu->f[7];
|
|
/* 022B8700 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 022B8700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B8704 */ cpu->r[5] = 0x101E0000u;
|
|
/* 022B8708 */ _t32 = cpu->r[1] + 0x00000040u;
|
|
/* 022B8708 */ rbrew_write32(cpu->mem, _t32, cpu->r[10]);
|
|
/* 022B870C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B8710 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B8714 */ _t34 = cpu->r[5] + 0xFFFF958Cu;
|
|
/* 022B8714 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B8718 */ _t35 = cpu->r[9] + 0x00001EF8u;
|
|
/* 022B8718 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B871C */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B871C */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 022B8720 */ _t37 = cpu->r[31] + 0x00000004u;
|
|
/* 022B8720 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B8724 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8724 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022B8724 */ if (_t39) goto L_022B8760; else goto L_022B8728;
|
|
L_022B8728: ; // 0x22b8728
|
|
/* 022B8728 */ cpu->r[5] = 0x00000000u;
|
|
/* 022B872C */ cpu->f[2] = cpu->f[3];
|
|
/* 022B8730 */ cpu->r[6] = cpu->r[5];
|
|
/* 022B8734 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B8738 */ cpu->f[1] = cpu->f[7];
|
|
/* 022B873C */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B8740 */ cpu->r[10] = cpu->r[7];
|
|
/* 022B8744 */ cpu->r[8] = 0x000000FFu;
|
|
/* 022B8748 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8748 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 022B874C */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022B8750 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B8754 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 022B8754 */ rbrew_write32(cpu->mem, _t41, cpu->r[3]);
|
|
/* 022B8758 */ cpu->r[3] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022B875C */ goto L_022B8794;
|
|
L_022B8760: ; // 0x22b8760
|
|
/* 022B8760 */ cpu->r[8] = cpu->r[9];
|
|
/* 022B8764 */ cpu->f[2] = cpu->f[7];
|
|
/* 022B8768 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B876C */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B8770 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022B8774 */ _t42 = cpu->r[12] + 0x00004094u;
|
|
/* 022B8774 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B8778 */ cpu->r[9] = cpu->r[31];
|
|
/* 022B877C */ cpu->r[6] = 0x00000000u;
|
|
/* 022B8780 */ cpu->r[7] = 0x000000FFu;
|
|
/* 022B8784 */ Gambit_fn_0204A864(cpu);
|
|
/* 022B8788 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B878C */ _t43 = cpu->r[31] + 0x00000000u;
|
|
/* 022B878C */ rbrew_write32(cpu->mem, _t43, cpu->r[3]);
|
|
/* 022B8790 */ cpu->r[3] = cpu->r[0] ^ 0x00000001u;
|
|
L_022B8794: ; // 0x22b8794
|
|
/* 022B8794 */ _t44 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8794 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B8798 */ _t45 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8798 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B879C */ cpu->lr = cpu->r[0];
|
|
/* 022B87A0 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B87A4 */ return;
|
|
}
|
|
|
|
// fn_022B8644 @ 0x22b8644
|
|
void Gambit_fn_022B8644(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022B8644: ; // 0x22b8644
|
|
/* 022B8644 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B8644 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8644 */ cpu->r[1] = _t0;
|
|
/* 022B8648 */ cpu->r[12] = cpu->r[12] + 0x00006350u;
|
|
/* 022B864C */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B864C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B8650 */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8650 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B8654 */ /* nop */
|
|
/* 022B8658 */ _t3 = cpu->r[3] + 0x00000018u;
|
|
/* 022B8658 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B865C */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 022B865C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B8660 */ /* nop */
|
|
/* 022B8664 */ _t5 = cpu->r[12] + 0x00000004u;
|
|
/* 022B8664 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B8668 */ /* nop */
|
|
/* 022B866C */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 022B866C */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B8670 */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 022B8670 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B8674 */ _t8 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8674 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B8678 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8678 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022B867C */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B867C */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022B8680 */ cpu->f[9] = cpu->f[13] * cpu->f[7];
|
|
/* 022B8684 */ /* nop */
|
|
/* 022B8688 */ /* nop */
|
|
/* 022B868C */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B868C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[9]);
|
|
/* 022B8690 */ _t12 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B8690 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B8694 */ /* nop */
|
|
/* 022B8698 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 022B8698 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B869C */ /* nop */
|
|
/* 022B86A0 */ cpu->f[10] = -cpu->f[11];
|
|
/* 022B86A4 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 022B86A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B86A8 */ _t15 = cpu->r[1] + 0x00000034u;
|
|
/* 022B86A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B86AC */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 022B86AC */ rbrew_write_f32(cpu->mem, _t16, cpu->f[10]);
|
|
/* 022B86B0 */ cpu->f[8] = -cpu->f[9];
|
|
/* 022B86B4 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 022B86B4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B86B8 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 022B86B8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B86BC */ cpu->r[6] = 0x10060000u;
|
|
/* 022B86C0 */ cpu->f[12] = -cpu->f[13];
|
|
/* 022B86C4 */ _t19 = cpu->r[3] + 0x00000014u;
|
|
/* 022B86C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B86C8 */ cpu->f[10] = cpu->f[0] + cpu->f[10];
|
|
/* 022B86CC */ _t20 = cpu->r[6] + 0x0000402Cu;
|
|
/* 022B86CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B86D0 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 022B86D0 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 022B86D4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022B86D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B86D8 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 022B86D8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[10]);
|
|
/* 022B86DC */ _t24 = cpu->r[1] + 0x00000038u;
|
|
/* 022B86DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B86E0 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B86E0 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[8]);
|
|
/* 022B86E4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B86E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B86E8 */ _t27 = cpu->r[1] + 0x00000044u;
|
|
/* 022B86E8 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022B86EC */ _t28 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B86EC */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 022B86F0 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 022B86F0 */ rbrew_write32(cpu->mem, _t29, cpu->r[11]);
|
|
/* 022B86F4 */ cpu->r[9] = 0x101C0000u;
|
|
/* 022B86F8 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 022B86F8 */ rbrew_write32(cpu->mem, _t30, cpu->r[6]);
|
|
/* 022B86FC */ cpu->f[1] = cpu->f[11] + cpu->f[7];
|
|
/* 022B8700 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 022B8700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B8704 */ cpu->r[5] = 0x101E0000u;
|
|
/* 022B8708 */ _t32 = cpu->r[1] + 0x00000040u;
|
|
/* 022B8708 */ rbrew_write32(cpu->mem, _t32, cpu->r[10]);
|
|
/* 022B870C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B8710 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B8714 */ _t34 = cpu->r[5] + 0xFFFF958Cu;
|
|
/* 022B8714 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B8718 */ _t35 = cpu->r[9] + 0x00001EF8u;
|
|
/* 022B8718 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B871C */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B871C */ rbrew_write32(cpu->mem, _t36, cpu->r[12]);
|
|
/* 022B8720 */ _t37 = cpu->r[31] + 0x00000004u;
|
|
/* 022B8720 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B8724 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8724 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022B8724 */ if (_t39) goto L_022B8760; else goto L_022B8728;
|
|
L_022B8728: ; // 0x22b8728
|
|
/* 022B8728 */ cpu->r[5] = 0x00000000u;
|
|
/* 022B872C */ cpu->f[2] = cpu->f[3];
|
|
/* 022B8730 */ cpu->r[6] = cpu->r[5];
|
|
/* 022B8734 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B8738 */ cpu->f[1] = cpu->f[7];
|
|
/* 022B873C */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B8740 */ cpu->r[10] = cpu->r[7];
|
|
/* 022B8744 */ cpu->r[8] = 0x000000FFu;
|
|
/* 022B8748 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8748 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 022B874C */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022B8750 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B8754 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 022B8754 */ rbrew_write32(cpu->mem, _t41, cpu->r[3]);
|
|
/* 022B8758 */ cpu->r[3] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022B875C */ goto L_022B8794;
|
|
L_022B8760: ; // 0x22b8760
|
|
/* 022B8760 */ cpu->r[8] = cpu->r[9];
|
|
/* 022B8764 */ cpu->f[2] = cpu->f[7];
|
|
/* 022B8768 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B876C */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B8770 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022B8774 */ _t42 = cpu->r[12] + 0x00004094u;
|
|
/* 022B8774 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B8778 */ cpu->r[9] = cpu->r[31];
|
|
/* 022B877C */ cpu->r[6] = 0x00000000u;
|
|
/* 022B8780 */ cpu->r[7] = 0x000000FFu;
|
|
/* 022B8784 */ Gambit_fn_0204A864(cpu);
|
|
/* 022B8788 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B878C */ _t43 = cpu->r[31] + 0x00000000u;
|
|
/* 022B878C */ rbrew_write32(cpu->mem, _t43, cpu->r[3]);
|
|
/* 022B8790 */ cpu->r[3] = cpu->r[0] ^ 0x00000001u;
|
|
L_022B8794: ; // 0x22b8794
|
|
/* 022B8794 */ _t44 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8794 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B8798 */ _t45 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8798 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B879C */ cpu->lr = cpu->r[0];
|
|
/* 022B87A0 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B87A4 */ return;
|
|
}
|
|
|
|
// fn_022B87A8 @ 0x22b87a8
|
|
void Gambit_fn_022B87A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _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;
|
|
double _ft24, _ft25;
|
|
|
|
L_022B87A8: ; // 0x22b87a8
|
|
/* 022B87A8 */ cpu->r[0] = cpu->lr;
|
|
/* 022B87AC */ _t0 = cpu->r[1] + 0xFFFFFF38u;
|
|
/* 022B87AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B87AC */ cpu->r[1] = _t0;
|
|
/* 022B87B0 */ _t1 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B87B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B87B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B87B8 */ _t2 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B87B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B87BC */ _t3 = cpu->r[1] + 0x000000CCu;
|
|
/* 022B87BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B87C0 */ _t4 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B87C0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B87C4 */ _t5 = cpu->r[31] + 0x00000018u;
|
|
/* 022B87C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B87C8 */ /* nop */
|
|
/* 022B87CC */ cpu->f[12] = cpu->f[13] - cpu->f[7];
|
|
/* 022B87D0 */ /* nop */
|
|
/* 022B87D4 */ /* nop */
|
|
/* 022B87D8 */ _t6 = cpu->r[1] + 0x00000094u;
|
|
/* 022B87D8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 022B87DC */ _t7 = cpu->r[1] + 0x00000094u;
|
|
/* 022B87DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B87E0 */ /* nop */
|
|
/* 022B87E4 */ _t8 = cpu->r[1] + 0x00000090u;
|
|
/* 022B87E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B87E8 */ _t9 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B87E8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022B87EC */ _t10 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B87EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B87F0 */ _t11 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B87F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B87F4 */ cpu->f[8] = cpu->f[10] * cpu->f[10];
|
|
/* 022B87F8 */ _t12 = cpu->r[1] + 0x00000098u;
|
|
/* 022B87F8 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 022B87FC */ _t13 = cpu->r[1] + 0x00000098u;
|
|
/* 022B87FC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B8800 */ _t14 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B8800 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 022B8804 */ cpu->f[9] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 022B8808 */ _t15 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B8808 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B880C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B8810 */ _t16 = cpu->r[10] + 0x0000402Cu;
|
|
/* 022B8810 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B8814 */ cpu->f[8] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 022B8818 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8818 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[7]);
|
|
/* 022B881C */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B881C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 022B8820 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[12]);
|
|
/* 022B8824 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8824 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[10]);
|
|
/* 022B8828 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8828 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B8828 */ if (_t21) goto L_022B882C; else goto L_022B886C;
|
|
L_022B882C: ; // 0x22b882c
|
|
/* 022B882C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B8830 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B8834 */ _t22 = cpu->r[12] + 0x00004030u;
|
|
/* 022B8834 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B8838 */ _t23 = cpu->r[9] + 0x00004028u;
|
|
/* 022B8838 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B883C */ _ft24 = sqrt(cpu->f[8]);
|
|
/* 022B883C */ _ft25 = (double)(int32_t)0x00000001u;
|
|
/* 022B883C */ cpu->f[10] = _ft25 / _ft24;
|
|
/* 022B8840 */ cpu->f[9] = cpu->f[10] * cpu->f[10];
|
|
/* 022B8844 */ cpu->f[11] = cpu->f[10] * cpu->f[13];
|
|
/* 022B8848 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[8], -(cpu->f[0]));
|
|
/* 022B884C */ cpu->f[10] = cpu->f[9] * cpu->f[11];
|
|
/* 022B8850 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8850 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B8854 */ /* nop */
|
|
/* 022B8858 */ cpu->f[0] = cpu->f[0] * cpu->f[10];
|
|
/* 022B885C */ /* nop */
|
|
/* 022B8860 */ /* nop */
|
|
/* 022B8864 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8864 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B8868 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8868 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
L_022B886C: ; // 0x22b886c
|
|
/* 022B886C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[12]);
|
|
/* 022B8870 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8870 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022B8870 */ if (_t30) goto L_022B8874; else goto L_022B8898;
|
|
L_022B8874: ; // 0x22b8874
|
|
/* 022B8874 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 022B8878 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8878 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022B8878 */ if (_t32) goto L_022B887C; else goto L_022B8898;
|
|
L_022B887C: ; // 0x22b887c
|
|
/* 022B887C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B887C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B8880 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8880 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B8884 */ cpu->f[13] = -cpu->f[0];
|
|
/* 022B8888 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8888 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[7]);
|
|
/* 022B888C */ cpu->f[11] = cpu->f[12];
|
|
/* 022B8890 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8890 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 022B8894 */ goto L_022B88A8;
|
|
L_022B8898: ; // 0x22b8898
|
|
/* 022B8898 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8898 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B889C */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 022B889C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 022B88A0 */ cpu->f[11] = -cpu->f[8];
|
|
/* 022B88A4 */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 022B88A4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
L_022B88A8: ; // 0x22b88a8
|
|
/* 022B88A8 */ cpu->r[5] = cpu->r[1] + 0x000000B0u;
|
|
/* 022B88AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B88B0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022B88B4 */ _t40 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B88B4 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[11]);
|
|
/* 022B88B8 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B88BC */ _t41 = cpu->r[1] + 0x000000B0u;
|
|
/* 022B88BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B88C0 */ _t42 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B88C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B88C4 */ _t43 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B88C4 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 022B88C8 */ _t44 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B88C8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B88CC */ _t45 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B88CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B88D0 */ _t46 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B88D0 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 022B88D4 */ _t47 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B88D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022B88D8 */ _t48 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B88D8 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 022B88DC */ _t49 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B88DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B88E0 */ _t50 = cpu->r[1] + 0x00000084u;
|
|
/* 022B88E0 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 022B88E4 */ _t51 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B88E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022B88E8 */ _t52 = cpu->r[1] + 0x00000088u;
|
|
/* 022B88E8 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[11]);
|
|
/* 022B88EC */ _t53 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B88EC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[8]);
|
|
/* 022B88F0 */ _t54 = cpu->r[1] + 0x00000034u;
|
|
/* 022B88F0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[11]);
|
|
/* 022B88F4 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B88F4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022B88F8 */ _t56 = cpu->r[31] + 0x00000004u;
|
|
/* 022B88F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022B88FC */ _t57 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B88FC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[7]);
|
|
/* 022B8900 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B8904 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8904 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B8908 */ _t59 = cpu->r[1] + 0x00000044u;
|
|
/* 022B8908 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[13]);
|
|
/* 022B890C */ _t60 = cpu->r[1] + 0x00000038u;
|
|
/* 022B890C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[12]);
|
|
/* 022B8910 */ _t61 = cpu->r[1] + 0x00000030u;
|
|
/* 022B8910 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[10]);
|
|
/* 022B8914 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8914 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022B8918 */ _t63 = cpu->r[31] + 0x00000008u;
|
|
/* 022B8918 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022B891C */ _t64 = cpu->r[1] + 0x00000014u;
|
|
/* 022B891C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022B8920 */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8920 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022B8924 */ _t66 = cpu->r[1] + 0x00000020u;
|
|
/* 022B8924 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[13]);
|
|
/* 022B8928 */ cpu->r[4] = cpu->r[4] + 0x000040A4u;
|
|
/* 022B892C */ _t67 = cpu->r[1] + 0x00000028u;
|
|
/* 022B892C */ rbrew_write_f32(cpu->mem, _t67, cpu->f[7]);
|
|
/* 022B8930 */ _t68 = cpu->r[1] + 0x00000048u;
|
|
/* 022B8930 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[0]);
|
|
/* 022B8934 */ _t69 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8934 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022B8938 */ _t70 = cpu->r[1] + 0x00000080u;
|
|
/* 022B8938 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[9]);
|
|
/* 022B893C */ _t71 = cpu->r[1] + 0x00000040u;
|
|
/* 022B893C */ rbrew_write_f32(cpu->mem, _t71, cpu->f[8]);
|
|
/* 022B8940 */ cpu->r[5] = 0x0000013Du;
|
|
/* 022B8944 */ _t72 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B8944 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[9]);
|
|
/* 022B8948 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 022B894C */ _t73 = cpu->r[1] + 0x00000024u;
|
|
/* 022B894C */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 022B8950 */ Gambit_fn_0204C3D0(cpu);
|
|
/* 022B8954 */ _t74 = cpu->r[1] + 0x00000020u;
|
|
/* 022B8954 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022B8958 */ _t75 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B8958 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 022B895C */ _t76 = cpu->r[1] + 0x00000050u;
|
|
/* 022B895C */ rbrew_write_f32(cpu->mem, _t76, cpu->f[8]);
|
|
/* 022B8960 */ _t77 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8960 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[7]);
|
|
/* 022B8964 */ _t78 = cpu->r[1] + 0x00000044u;
|
|
/* 022B8964 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 022B8968 */ _t79 = cpu->r[1] + 0x00000038u;
|
|
/* 022B8968 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022B896C */ _t80 = cpu->r[1] + 0x00000030u;
|
|
/* 022B896C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 022B8970 */ _t81 = cpu->r[1] + 0x00000058u;
|
|
/* 022B8970 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[10]);
|
|
/* 022B8974 */ _t82 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8974 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 022B8978 */ _t83 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8978 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 022B897C */ _t84 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B897C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 022B8980 */ _t85 = cpu->r[1] + 0x00000048u;
|
|
/* 022B8980 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 022B8984 */ _t86 = cpu->r[1] + 0x00000068u;
|
|
/* 022B8984 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[10]);
|
|
/* 022B8988 */ _t87 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B8988 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[11]);
|
|
/* 022B898C */ _t88 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B898C */ rbrew_write_f32(cpu->mem, _t88, cpu->f[0]);
|
|
/* 022B8990 */ _t89 = cpu->r[1] + 0x00000040u;
|
|
/* 022B8990 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022B8994 */ _t90 = cpu->r[1] + 0x00000070u;
|
|
/* 022B8994 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[12]);
|
|
/* 022B8998 */ _t91 = cpu->r[1] + 0x00000078u;
|
|
/* 022B8998 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[0]);
|
|
/* 022B899C */ _t92 = cpu->r[1] + 0x00000034u;
|
|
/* 022B899C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 022B89A0 */ _t93 = cpu->r[1] + 0x00000024u;
|
|
/* 022B89A0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 022B89A4 */ _t94 = cpu->r[1] + 0x00000074u;
|
|
/* 022B89A4 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[13]);
|
|
/* 022B89A8 */ _t95 = cpu->r[1] + 0x00000060u;
|
|
/* 022B89A8 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[8]);
|
|
/* 022B89AC */ _t96 = cpu->r[31] + 0x00000000u;
|
|
/* 022B89AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t96);
|
|
/* 022B89B0 */ _t97 = cpu->r[1] + 0x00000064u;
|
|
/* 022B89B0 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[9]);
|
|
/* 022B89B4 */ _t98 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B89B4 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[7]);
|
|
/* 022B89B8 */ _t99 = cpu->r[12] + 0x00000000u;
|
|
/* 022B89B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022B89BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B89C0 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B89C0 */ _t101 = _t100 & 0x00000001u;
|
|
/* 022B89C0 */ if (_t101) goto L_022B8A04; else goto L_022B89C4;
|
|
L_022B89C4: ; // 0x22b89c4
|
|
/* 022B89C4 */ _t102 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B89C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 022B89C8 */ _t103 = cpu->r[12] + 0x00000004u;
|
|
/* 022B89C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t103);
|
|
/* 022B89CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 022B89D0 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B89D0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 022B89D0 */ if (_t105) goto L_022B89D4; else goto L_022B8A04;
|
|
L_022B89D4: ; // 0x22b89d4
|
|
/* 022B89D4 */ cpu->r[4] = cpu->r[30] + 0x0000007Cu;
|
|
/* 022B89D8 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 022B89DC */ Gambit_fn_02C69510(cpu);
|
|
/* 022B89E0 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B89E4 */ _t106 = cpu->r[11] + 0x00004094u;
|
|
/* 022B89E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 022B89E8 */ _t107 = cpu->r[30] + 0x0000012Cu;
|
|
/* 022B89E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022B89EC */ _t108 = cpu->r[30] + 0x00000070u;
|
|
/* 022B89EC */ rbrew_write_f32(cpu->mem, _t108, cpu->f[11]);
|
|
/* 022B89F0 */ cpu->r[11] = cpu->r[11] | 0x00000008u;
|
|
/* 022B89F4 */ _t109 = cpu->r[30] + 0x00000078u;
|
|
/* 022B89F4 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[11]);
|
|
/* 022B89F8 */ _t110 = cpu->r[30] + 0x0000012Cu;
|
|
/* 022B89F8 */ rbrew_write32(cpu->mem, _t110, cpu->r[11]);
|
|
/* 022B89FC */ _t111 = cpu->r[30] + 0x00000074u;
|
|
/* 022B89FC */ rbrew_write_f32(cpu->mem, _t111, cpu->f[11]);
|
|
/* 022B8A00 */ _t112 = cpu->r[31] + 0x00000000u;
|
|
/* 022B8A00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t112);
|
|
L_022B8A04: ; // 0x22b8a04
|
|
/* 022B8A04 */ _t113 = cpu->r[12] + 0x00000000u;
|
|
/* 022B8A04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t113);
|
|
/* 022B8A08 */ _t114 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B8A08 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 022B8A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B8A10 */ _t115 = cpu->r[31] + 0x00000020u;
|
|
/* 022B8A10 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 022B8A14 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8A14 */ _t117 = _t116 & 0x00000001u;
|
|
/* 022B8A14 */ if (_t117) goto L_022B8A3C; else goto L_022B8A18;
|
|
L_022B8A18: ; // 0x22b8a18
|
|
/* 022B8A18 */ _t118 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022B8A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 022B8A1C */ _t119 = cpu->r[12] + 0x00000004u;
|
|
/* 022B8A1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t119);
|
|
/* 022B8A20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 022B8A24 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8A24 */ _t121 = _t120 & 0x00000001u;
|
|
/* 022B8A24 */ if (_t121) goto L_022B8A28; else goto L_022B8A3C;
|
|
L_022B8A28: ; // 0x22b8a28
|
|
/* 022B8A28 */ _t122 = cpu->r[11] + 0x0000012Cu;
|
|
/* 022B8A28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t122);
|
|
/* 022B8A2C */ _t123 = cpu->r[11] + 0x000000C4u;
|
|
/* 022B8A2C */ rbrew_write_f32(cpu->mem, _t123, cpu->f[7]);
|
|
/* 022B8A30 */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 022B8A34 */ _t124 = cpu->r[11] + 0x000000C8u;
|
|
/* 022B8A34 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[11]);
|
|
/* 022B8A38 */ _t125 = cpu->r[11] + 0x0000012Cu;
|
|
/* 022B8A38 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
L_022B8A3C: ; // 0x22b8a3c
|
|
/* 022B8A3C */ _t126 = cpu->r[1] + 0x000000CCu;
|
|
/* 022B8A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 022B8A40 */ _t127 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B8A40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t127);
|
|
/* 022B8A44 */ cpu->lr = cpu->r[0];
|
|
/* 022B8A48 */ _t128 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B8A48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t128);
|
|
/* 022B8A4C */ cpu->r[1] = cpu->r[1] + 0x000000C8u;
|
|
/* 022B8A50 */ return;
|
|
}
|
|
|
|
// fn_022B87AC @ 0x22b87ac
|
|
void Gambit_fn_022B87AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _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;
|
|
double _ft24, _ft25;
|
|
|
|
L_022B87AC: ; // 0x22b87ac
|
|
/* 022B87AC */ _t0 = cpu->r[1] + 0xFFFFFF38u;
|
|
/* 022B87AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B87AC */ cpu->r[1] = _t0;
|
|
/* 022B87B0 */ _t1 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B87B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B87B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B87B8 */ _t2 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B87B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B87BC */ _t3 = cpu->r[1] + 0x000000CCu;
|
|
/* 022B87BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B87C0 */ _t4 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B87C0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B87C4 */ _t5 = cpu->r[31] + 0x00000018u;
|
|
/* 022B87C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B87C8 */ /* nop */
|
|
/* 022B87CC */ cpu->f[12] = cpu->f[13] - cpu->f[7];
|
|
/* 022B87D0 */ /* nop */
|
|
/* 022B87D4 */ /* nop */
|
|
/* 022B87D8 */ _t6 = cpu->r[1] + 0x00000094u;
|
|
/* 022B87D8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 022B87DC */ _t7 = cpu->r[1] + 0x00000094u;
|
|
/* 022B87DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B87E0 */ /* nop */
|
|
/* 022B87E4 */ _t8 = cpu->r[1] + 0x00000090u;
|
|
/* 022B87E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B87E8 */ _t9 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B87E8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022B87EC */ _t10 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B87EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B87F0 */ _t11 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B87F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B87F4 */ cpu->f[8] = cpu->f[10] * cpu->f[10];
|
|
/* 022B87F8 */ _t12 = cpu->r[1] + 0x00000098u;
|
|
/* 022B87F8 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 022B87FC */ _t13 = cpu->r[1] + 0x00000098u;
|
|
/* 022B87FC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B8800 */ _t14 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B8800 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 022B8804 */ cpu->f[9] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 022B8808 */ _t15 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B8808 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B880C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B8810 */ _t16 = cpu->r[10] + 0x0000402Cu;
|
|
/* 022B8810 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B8814 */ cpu->f[8] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 022B8818 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8818 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[7]);
|
|
/* 022B881C */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B881C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 022B8820 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[12]);
|
|
/* 022B8824 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8824 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[10]);
|
|
/* 022B8828 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8828 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B8828 */ if (_t21) goto L_022B882C; else goto L_022B886C;
|
|
L_022B882C: ; // 0x22b882c
|
|
/* 022B882C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B8830 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B8834 */ _t22 = cpu->r[12] + 0x00004030u;
|
|
/* 022B8834 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B8838 */ _t23 = cpu->r[9] + 0x00004028u;
|
|
/* 022B8838 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B883C */ _ft24 = sqrt(cpu->f[8]);
|
|
/* 022B883C */ _ft25 = (double)(int32_t)0x00000001u;
|
|
/* 022B883C */ cpu->f[10] = _ft25 / _ft24;
|
|
/* 022B8840 */ cpu->f[9] = cpu->f[10] * cpu->f[10];
|
|
/* 022B8844 */ cpu->f[11] = cpu->f[10] * cpu->f[13];
|
|
/* 022B8848 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[8], -(cpu->f[0]));
|
|
/* 022B884C */ cpu->f[10] = cpu->f[9] * cpu->f[11];
|
|
/* 022B8850 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8850 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B8854 */ /* nop */
|
|
/* 022B8858 */ cpu->f[0] = cpu->f[0] * cpu->f[10];
|
|
/* 022B885C */ /* nop */
|
|
/* 022B8860 */ /* nop */
|
|
/* 022B8864 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8864 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B8868 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8868 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
L_022B886C: ; // 0x22b886c
|
|
/* 022B886C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[12]);
|
|
/* 022B8870 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8870 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022B8870 */ if (_t30) goto L_022B8874; else goto L_022B8898;
|
|
L_022B8874: ; // 0x22b8874
|
|
/* 022B8874 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 022B8878 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8878 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022B8878 */ if (_t32) goto L_022B887C; else goto L_022B8898;
|
|
L_022B887C: ; // 0x22b887c
|
|
/* 022B887C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B887C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B8880 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8880 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B8884 */ cpu->f[13] = -cpu->f[0];
|
|
/* 022B8888 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8888 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[7]);
|
|
/* 022B888C */ cpu->f[11] = cpu->f[12];
|
|
/* 022B8890 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8890 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 022B8894 */ goto L_022B88A8;
|
|
L_022B8898: ; // 0x22b8898
|
|
/* 022B8898 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8898 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B889C */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 022B889C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 022B88A0 */ cpu->f[11] = -cpu->f[8];
|
|
/* 022B88A4 */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 022B88A4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
L_022B88A8: ; // 0x22b88a8
|
|
/* 022B88A8 */ cpu->r[5] = cpu->r[1] + 0x000000B0u;
|
|
/* 022B88AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B88B0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022B88B4 */ _t40 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B88B4 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[11]);
|
|
/* 022B88B8 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B88BC */ _t41 = cpu->r[1] + 0x000000B0u;
|
|
/* 022B88BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B88C0 */ _t42 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B88C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B88C4 */ _t43 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B88C4 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 022B88C8 */ _t44 = cpu->r[1] + 0x000000A4u;
|
|
/* 022B88C8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022B88CC */ _t45 = cpu->r[1] + 0x000000B8u;
|
|
/* 022B88CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B88D0 */ _t46 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B88D0 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 022B88D4 */ _t47 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B88D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022B88D8 */ _t48 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B88D8 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 022B88DC */ _t49 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B88DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B88E0 */ _t50 = cpu->r[1] + 0x00000084u;
|
|
/* 022B88E0 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 022B88E4 */ _t51 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B88E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022B88E8 */ _t52 = cpu->r[1] + 0x00000088u;
|
|
/* 022B88E8 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[11]);
|
|
/* 022B88EC */ _t53 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B88EC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[8]);
|
|
/* 022B88F0 */ _t54 = cpu->r[1] + 0x00000034u;
|
|
/* 022B88F0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[11]);
|
|
/* 022B88F4 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B88F4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022B88F8 */ _t56 = cpu->r[31] + 0x00000004u;
|
|
/* 022B88F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022B88FC */ _t57 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B88FC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[7]);
|
|
/* 022B8900 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B8904 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8904 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B8908 */ _t59 = cpu->r[1] + 0x00000044u;
|
|
/* 022B8908 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[13]);
|
|
/* 022B890C */ _t60 = cpu->r[1] + 0x00000038u;
|
|
/* 022B890C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[12]);
|
|
/* 022B8910 */ _t61 = cpu->r[1] + 0x00000030u;
|
|
/* 022B8910 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[10]);
|
|
/* 022B8914 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8914 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022B8918 */ _t63 = cpu->r[31] + 0x00000008u;
|
|
/* 022B8918 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022B891C */ _t64 = cpu->r[1] + 0x00000014u;
|
|
/* 022B891C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022B8920 */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8920 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022B8924 */ _t66 = cpu->r[1] + 0x00000020u;
|
|
/* 022B8924 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[13]);
|
|
/* 022B8928 */ cpu->r[4] = cpu->r[4] + 0x000040A4u;
|
|
/* 022B892C */ _t67 = cpu->r[1] + 0x00000028u;
|
|
/* 022B892C */ rbrew_write_f32(cpu->mem, _t67, cpu->f[7]);
|
|
/* 022B8930 */ _t68 = cpu->r[1] + 0x00000048u;
|
|
/* 022B8930 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[0]);
|
|
/* 022B8934 */ _t69 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8934 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022B8938 */ _t70 = cpu->r[1] + 0x00000080u;
|
|
/* 022B8938 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[9]);
|
|
/* 022B893C */ _t71 = cpu->r[1] + 0x00000040u;
|
|
/* 022B893C */ rbrew_write_f32(cpu->mem, _t71, cpu->f[8]);
|
|
/* 022B8940 */ cpu->r[5] = 0x0000013Du;
|
|
/* 022B8944 */ _t72 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B8944 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[9]);
|
|
/* 022B8948 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 022B894C */ _t73 = cpu->r[1] + 0x00000024u;
|
|
/* 022B894C */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 022B8950 */ Gambit_fn_0204C3D0(cpu);
|
|
/* 022B8954 */ _t74 = cpu->r[1] + 0x00000020u;
|
|
/* 022B8954 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022B8958 */ _t75 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B8958 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 022B895C */ _t76 = cpu->r[1] + 0x00000050u;
|
|
/* 022B895C */ rbrew_write_f32(cpu->mem, _t76, cpu->f[8]);
|
|
/* 022B8960 */ _t77 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8960 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[7]);
|
|
/* 022B8964 */ _t78 = cpu->r[1] + 0x00000044u;
|
|
/* 022B8964 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 022B8968 */ _t79 = cpu->r[1] + 0x00000038u;
|
|
/* 022B8968 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022B896C */ _t80 = cpu->r[1] + 0x00000030u;
|
|
/* 022B896C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 022B8970 */ _t81 = cpu->r[1] + 0x00000058u;
|
|
/* 022B8970 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[10]);
|
|
/* 022B8974 */ _t82 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8974 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 022B8978 */ _t83 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8978 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 022B897C */ _t84 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B897C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 022B8980 */ _t85 = cpu->r[1] + 0x00000048u;
|
|
/* 022B8980 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 022B8984 */ _t86 = cpu->r[1] + 0x00000068u;
|
|
/* 022B8984 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[10]);
|
|
/* 022B8988 */ _t87 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B8988 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[11]);
|
|
/* 022B898C */ _t88 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B898C */ rbrew_write_f32(cpu->mem, _t88, cpu->f[0]);
|
|
/* 022B8990 */ _t89 = cpu->r[1] + 0x00000040u;
|
|
/* 022B8990 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022B8994 */ _t90 = cpu->r[1] + 0x00000070u;
|
|
/* 022B8994 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[12]);
|
|
/* 022B8998 */ _t91 = cpu->r[1] + 0x00000078u;
|
|
/* 022B8998 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[0]);
|
|
/* 022B899C */ _t92 = cpu->r[1] + 0x00000034u;
|
|
/* 022B899C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 022B89A0 */ _t93 = cpu->r[1] + 0x00000024u;
|
|
/* 022B89A0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 022B89A4 */ _t94 = cpu->r[1] + 0x00000074u;
|
|
/* 022B89A4 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[13]);
|
|
/* 022B89A8 */ _t95 = cpu->r[1] + 0x00000060u;
|
|
/* 022B89A8 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[8]);
|
|
/* 022B89AC */ _t96 = cpu->r[31] + 0x00000000u;
|
|
/* 022B89AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t96);
|
|
/* 022B89B0 */ _t97 = cpu->r[1] + 0x00000064u;
|
|
/* 022B89B0 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[9]);
|
|
/* 022B89B4 */ _t98 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B89B4 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[7]);
|
|
/* 022B89B8 */ _t99 = cpu->r[12] + 0x00000000u;
|
|
/* 022B89B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022B89BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B89C0 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B89C0 */ _t101 = _t100 & 0x00000001u;
|
|
/* 022B89C0 */ if (_t101) goto L_022B8A04; else goto L_022B89C4;
|
|
L_022B89C4: ; // 0x22b89c4
|
|
/* 022B89C4 */ _t102 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022B89C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 022B89C8 */ _t103 = cpu->r[12] + 0x00000004u;
|
|
/* 022B89C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t103);
|
|
/* 022B89CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 022B89D0 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B89D0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 022B89D0 */ if (_t105) goto L_022B89D4; else goto L_022B8A04;
|
|
L_022B89D4: ; // 0x22b89d4
|
|
/* 022B89D4 */ cpu->r[4] = cpu->r[30] + 0x0000007Cu;
|
|
/* 022B89D8 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 022B89DC */ Gambit_fn_02C69510(cpu);
|
|
/* 022B89E0 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B89E4 */ _t106 = cpu->r[11] + 0x00004094u;
|
|
/* 022B89E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 022B89E8 */ _t107 = cpu->r[30] + 0x0000012Cu;
|
|
/* 022B89E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022B89EC */ _t108 = cpu->r[30] + 0x00000070u;
|
|
/* 022B89EC */ rbrew_write_f32(cpu->mem, _t108, cpu->f[11]);
|
|
/* 022B89F0 */ cpu->r[11] = cpu->r[11] | 0x00000008u;
|
|
/* 022B89F4 */ _t109 = cpu->r[30] + 0x00000078u;
|
|
/* 022B89F4 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[11]);
|
|
/* 022B89F8 */ _t110 = cpu->r[30] + 0x0000012Cu;
|
|
/* 022B89F8 */ rbrew_write32(cpu->mem, _t110, cpu->r[11]);
|
|
/* 022B89FC */ _t111 = cpu->r[30] + 0x00000074u;
|
|
/* 022B89FC */ rbrew_write_f32(cpu->mem, _t111, cpu->f[11]);
|
|
/* 022B8A00 */ _t112 = cpu->r[31] + 0x00000000u;
|
|
/* 022B8A00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t112);
|
|
L_022B8A04: ; // 0x22b8a04
|
|
/* 022B8A04 */ _t113 = cpu->r[12] + 0x00000000u;
|
|
/* 022B8A04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t113);
|
|
/* 022B8A08 */ _t114 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B8A08 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 022B8A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B8A10 */ _t115 = cpu->r[31] + 0x00000020u;
|
|
/* 022B8A10 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 022B8A14 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8A14 */ _t117 = _t116 & 0x00000001u;
|
|
/* 022B8A14 */ if (_t117) goto L_022B8A3C; else goto L_022B8A18;
|
|
L_022B8A18: ; // 0x22b8a18
|
|
/* 022B8A18 */ _t118 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022B8A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 022B8A1C */ _t119 = cpu->r[12] + 0x00000004u;
|
|
/* 022B8A1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t119);
|
|
/* 022B8A20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 022B8A24 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8A24 */ _t121 = _t120 & 0x00000001u;
|
|
/* 022B8A24 */ if (_t121) goto L_022B8A28; else goto L_022B8A3C;
|
|
L_022B8A28: ; // 0x22b8a28
|
|
/* 022B8A28 */ _t122 = cpu->r[11] + 0x0000012Cu;
|
|
/* 022B8A28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t122);
|
|
/* 022B8A2C */ _t123 = cpu->r[11] + 0x000000C4u;
|
|
/* 022B8A2C */ rbrew_write_f32(cpu->mem, _t123, cpu->f[7]);
|
|
/* 022B8A30 */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 022B8A34 */ _t124 = cpu->r[11] + 0x000000C8u;
|
|
/* 022B8A34 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[11]);
|
|
/* 022B8A38 */ _t125 = cpu->r[11] + 0x0000012Cu;
|
|
/* 022B8A38 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
L_022B8A3C: ; // 0x22b8a3c
|
|
/* 022B8A3C */ _t126 = cpu->r[1] + 0x000000CCu;
|
|
/* 022B8A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 022B8A40 */ _t127 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B8A40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t127);
|
|
/* 022B8A44 */ cpu->lr = cpu->r[0];
|
|
/* 022B8A48 */ _t128 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B8A48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t128);
|
|
/* 022B8A4C */ cpu->r[1] = cpu->r[1] + 0x000000C8u;
|
|
/* 022B8A50 */ return;
|
|
}
|
|
|
|
// fn_022B8A54 @ 0x22b8a54
|
|
void Gambit_fn_022B8A54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t28, _t29, _t30, _t31, _t32, _t33;
|
|
double _ft26, _ft27;
|
|
|
|
L_022B8A54: ; // 0x22b8a54
|
|
/* 022B8A54 */ cpu->r[12] = 0x101F0000u;
|
|
/* 022B8A58 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B8A58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8A58 */ cpu->r[1] = _t0;
|
|
/* 022B8A5C */ _t1 = cpu->r[12] + 0x00006338u;
|
|
/* 022B8A5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B8A5C */ cpu->r[12] = _t1;
|
|
/* 022B8A60 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 022B8A60 */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 022B8A64 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 022B8A64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B8A68 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022B8A68 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 022B8A6C */ _t5 = cpu->r[12] + 0x00000008u;
|
|
/* 022B8A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B8A70 */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8A70 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B8A74 */ /* nop */
|
|
/* 022B8A78 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B8A7C */ /* nop */
|
|
/* 022B8A80 */ _t7 = cpu->r[9] + 0x0000402Cu;
|
|
/* 022B8A80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B8A84 */ /* nop */
|
|
/* 022B8A88 */ _t8 = cpu->r[5] + 0x00000008u;
|
|
/* 022B8A88 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B8A8C */ _t9 = cpu->r[6] + 0x00000008u;
|
|
/* 022B8A8C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B8A90 */ /* nop */
|
|
/* 022B8A94 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8A94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B8A98 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 022B8A9C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8A9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B8AA0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8AA0 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 022B8AA4 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8AA4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[10]);
|
|
/* 022B8AA8 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B8AAC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8AAC */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 022B8AB0 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8AB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B8AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 022B8AB8 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8AB8 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B8ABC */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8ABC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B8AC0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8AC0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B8AC0 */ if (_t20) goto L_022B8B24; else goto L_022B8AC4;
|
|
L_022B8AC4: ; // 0x22b8ac4
|
|
/* 022B8AC4 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8AC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B8AC8 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 022B8ACC */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022B8AD0 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 022B8AD4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B8AD8 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8AD8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B8AD8 */ if (_t23) goto L_022B8ADC; else goto L_022B8B3C;
|
|
L_022B8ADC: ; // 0x22b8adc
|
|
/* 022B8ADC */ cpu->r[6] = 0x10060000u;
|
|
/* 022B8AE0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B8AE4 */ _t24 = cpu->r[6] + 0x00004030u;
|
|
/* 022B8AE4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B8AE8 */ _t25 = cpu->r[12] + 0x00004028u;
|
|
/* 022B8AE8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B8AEC */ _ft26 = sqrt(cpu->f[0]);
|
|
/* 022B8AEC */ _ft27 = (double)(int32_t)0x00000001u;
|
|
/* 022B8AEC */ cpu->f[10] = _ft27 / _ft26;
|
|
/* 022B8AF0 */ cpu->f[13] = cpu->f[10] * cpu->f[10];
|
|
/* 022B8AF4 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 022B8AF8 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[12]));
|
|
/* 022B8AFC */ cpu->f[10] = cpu->f[13] * cpu->f[9];
|
|
/* 022B8B00 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8B00 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B8B04 */ /* nop */
|
|
/* 022B8B08 */ cpu->f[9] = cpu->f[9] * cpu->f[10];
|
|
/* 022B8B0C */ /* nop */
|
|
/* 022B8B10 */ cpu->f[13] = cpu->f[9] * cpu->f[1];
|
|
/* 022B8B14 */ /* nop */
|
|
/* 022B8B18 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8B18 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 022B8B1C */ /* nop */
|
|
/* 022B8B20 */ goto L_022B8B50;
|
|
L_022B8B24: ; // 0x22b8b24
|
|
/* 022B8B24 */ cpu->f[10] = cpu->f[13] * cpu->f[13];
|
|
/* 022B8B28 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022B8B2C */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 022B8B30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B8B34 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8B34 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 022B8B38 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8B38 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022B8B38 */ if (_t32) goto L_022B8ADC; else goto L_022B8B3C;
|
|
L_022B8B3C: ; // 0x22b8b3c
|
|
/* 022B8B3C */ cpu->f[13] = cpu->f[9] * cpu->f[1];
|
|
/* 022B8B40 */ /* nop */
|
|
/* 022B8B44 */ /* nop */
|
|
/* 022B8B48 */ _t33 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8B48 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 022B8B4C */ /* nop */
|
|
L_022B8B50: ; // 0x22b8b50
|
|
/* 022B8B50 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B8B54 */ return;
|
|
}
|
|
|
|
// fn_022B8A58 @ 0x22b8a58
|
|
void Gambit_fn_022B8A58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t28, _t29, _t30, _t31, _t32, _t33;
|
|
double _ft26, _ft27;
|
|
|
|
L_022B8A58: ; // 0x22b8a58
|
|
/* 022B8A58 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B8A58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8A58 */ cpu->r[1] = _t0;
|
|
/* 022B8A5C */ _t1 = cpu->r[12] + 0x00006338u;
|
|
/* 022B8A5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022B8A5C */ cpu->r[12] = _t1;
|
|
/* 022B8A60 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 022B8A60 */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 022B8A64 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 022B8A64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B8A68 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022B8A68 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 022B8A6C */ _t5 = cpu->r[12] + 0x00000008u;
|
|
/* 022B8A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B8A70 */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8A70 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B8A74 */ /* nop */
|
|
/* 022B8A78 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B8A7C */ /* nop */
|
|
/* 022B8A80 */ _t7 = cpu->r[9] + 0x0000402Cu;
|
|
/* 022B8A80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B8A84 */ /* nop */
|
|
/* 022B8A88 */ _t8 = cpu->r[5] + 0x00000008u;
|
|
/* 022B8A88 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B8A8C */ _t9 = cpu->r[6] + 0x00000008u;
|
|
/* 022B8A8C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B8A90 */ /* nop */
|
|
/* 022B8A94 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8A94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B8A98 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 022B8A9C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8A9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B8AA0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8AA0 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 022B8AA4 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8AA4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[10]);
|
|
/* 022B8AA8 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B8AAC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8AAC */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 022B8AB0 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8AB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B8AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 022B8AB8 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8AB8 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B8ABC */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8ABC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B8AC0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8AC0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B8AC0 */ if (_t20) goto L_022B8B24; else goto L_022B8AC4;
|
|
L_022B8AC4: ; // 0x22b8ac4
|
|
/* 022B8AC4 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8AC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B8AC8 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 022B8ACC */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022B8AD0 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 022B8AD4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B8AD8 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8AD8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B8AD8 */ if (_t23) goto L_022B8ADC; else goto L_022B8B3C;
|
|
L_022B8ADC: ; // 0x22b8adc
|
|
/* 022B8ADC */ cpu->r[6] = 0x10060000u;
|
|
/* 022B8AE0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B8AE4 */ _t24 = cpu->r[6] + 0x00004030u;
|
|
/* 022B8AE4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B8AE8 */ _t25 = cpu->r[12] + 0x00004028u;
|
|
/* 022B8AE8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B8AEC */ _ft26 = sqrt(cpu->f[0]);
|
|
/* 022B8AEC */ _ft27 = (double)(int32_t)0x00000001u;
|
|
/* 022B8AEC */ cpu->f[10] = _ft27 / _ft26;
|
|
/* 022B8AF0 */ cpu->f[13] = cpu->f[10] * cpu->f[10];
|
|
/* 022B8AF4 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 022B8AF8 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[12]));
|
|
/* 022B8AFC */ cpu->f[10] = cpu->f[13] * cpu->f[9];
|
|
/* 022B8B00 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8B00 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B8B04 */ /* nop */
|
|
/* 022B8B08 */ cpu->f[9] = cpu->f[9] * cpu->f[10];
|
|
/* 022B8B0C */ /* nop */
|
|
/* 022B8B10 */ cpu->f[13] = cpu->f[9] * cpu->f[1];
|
|
/* 022B8B14 */ /* nop */
|
|
/* 022B8B18 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8B18 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 022B8B1C */ /* nop */
|
|
/* 022B8B20 */ goto L_022B8B50;
|
|
L_022B8B24: ; // 0x22b8b24
|
|
/* 022B8B24 */ cpu->f[10] = cpu->f[13] * cpu->f[13];
|
|
/* 022B8B28 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022B8B2C */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 022B8B30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022B8B34 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8B34 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 022B8B38 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8B38 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022B8B38 */ if (_t32) goto L_022B8ADC; else goto L_022B8B3C;
|
|
L_022B8B3C: ; // 0x22b8b3c
|
|
/* 022B8B3C */ cpu->f[13] = cpu->f[9] * cpu->f[1];
|
|
/* 022B8B40 */ /* nop */
|
|
/* 022B8B44 */ /* nop */
|
|
/* 022B8B48 */ _t33 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8B48 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 022B8B4C */ /* nop */
|
|
L_022B8B50: ; // 0x22b8b50
|
|
/* 022B8B50 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B8B54 */ return;
|
|
}
|
|
|
|
// fn_022B8B58 @ 0x22b8b58
|
|
void Gambit_fn_022B8B58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t12, _t13, _t14, _t15, _t16;
|
|
double _ft10, _ft11;
|
|
|
|
L_0204ECF0: ; // 0x204ecf0
|
|
/* 0204ECF0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0204ECF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0204ECF4 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0204ECF4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0204ECF8 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 0204ECFC */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 0204ECFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0204ED00 */ cpu->f[10] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 0204ED04 */ cpu->f[11] = cpu->f[1] * cpu->f[1];
|
|
/* 0204ED08 */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 0204ED0C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[11]);
|
|
/* 0204ED10 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0204ED10 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0204ED10 */ if (_t4) goto L_0204ED1C; else goto L_0204ED14;
|
|
L_0204ED14: ; // 0x204ed14
|
|
/* 0204ED14 */ cpu->r[3] = 0x00000000u;
|
|
/* 0204ED18 */ return;
|
|
L_0204ED1C: ; // 0x204ed1c
|
|
/* 0204ED1C */ cpu->r[12] = 0x10000000u;
|
|
/* 0204ED20 */ _t5 = cpu->r[12] + 0x00005B24u;
|
|
/* 0204ED20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0204ED24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 0204ED28 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0204ED28 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0204ED28 */ if (_t7) goto L_0204ED2C; else goto L_0204ED50;
|
|
L_0204ED2C: ; // 0x204ed2c
|
|
/* 0204ED2C */ cpu->r[12] = 0x10000000u;
|
|
/* 0204ED30 */ _t8 = cpu->r[12] + 0x00005B2Cu;
|
|
/* 0204ED30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0204ED34 */ cpu->r[12] = 0x10000000u;
|
|
/* 0204ED38 */ _t9 = cpu->r[12] + 0x00005B28u;
|
|
/* 0204ED38 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0204ED3C */ _ft10 = sqrt(cpu->f[9]);
|
|
/* 0204ED3C */ _ft11 = (double)(int32_t)0x00000001u;
|
|
/* 0204ED3C */ cpu->f[0] = _ft11 / _ft10;
|
|
/* 0204ED40 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 0204ED44 */ cpu->f[11] = cpu->f[0] * cpu->f[12];
|
|
/* 0204ED48 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[9], -(cpu->f[13]));
|
|
/* 0204ED4C */ cpu->f[0] = cpu->f[10] * cpu->f[11];
|
|
L_0204ED50: ; // 0x204ed50
|
|
/* 0204ED50 */ cpu->f[13] = cpu->f[0] * cpu->f[9];
|
|
/* 0204ED54 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 0204ED54 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0204ED58 */ cpu->f[8] = cpu->f[1] / cpu->f[13];
|
|
/* 0204ED5C */ /* nop */
|
|
/* 0204ED60 */ /* nop */
|
|
/* 0204ED64 */ cpu->f[9] = cpu->f[9] * cpu->f[8];
|
|
/* 0204ED68 */ /* nop */
|
|
/* 0204ED6C */ _t13 = cpu->r[3] + 0x00000008u;
|
|
/* 0204ED6C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[9]);
|
|
/* 0204ED70 */ cpu->r[3] = 0x00000001u;
|
|
/* 0204ED74 */ return;
|
|
L_022B8B58: ; // 0x22b8b58
|
|
/* 022B8B58 */ /* nop */
|
|
/* 022B8B5C */ /* nop */
|
|
/* 022B8B60 */ /* nop */
|
|
/* 022B8B64 */ /* nop */
|
|
/* 022B8B68 */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 022B8B68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B8B6C */ _t15 = cpu->r[5] + 0x00000008u;
|
|
/* 022B8B6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B8B70 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022B8B74 */ _t16 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8B74 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 022B8B78 */ goto L_0204ECF0;
|
|
}
|
|
|
|
// fn_022B8B7C @ 0x22b8b7c
|
|
void Gambit_fn_022B8B7C(CPUState* cpu) {
|
|
L_022B8B7C: ; // 0x22b8b7c
|
|
/* 022B8B7C */ cpu->f[0] = cpu->f[2] / cpu->f[3];
|
|
/* 022B8B80 */ cpu->f[1] = cpu->f[1] * cpu->f[0];
|
|
/* 022B8B84 */ return;
|
|
}
|
|
|
|
// fn_022B8B88 @ 0x22b8b88
|
|
void Gambit_fn_022B8B88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23;
|
|
double _ft20, _ft21;
|
|
|
|
L_022B8B88: ; // 0x22b8b88
|
|
/* 022B8B88 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B8B88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8B88 */ cpu->r[1] = _t0;
|
|
/* 022B8B8C */ _t1 = cpu->r[4] + 0x00000008u;
|
|
/* 022B8B8C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022B8B90 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 022B8B90 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022B8B94 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8B94 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[9]);
|
|
/* 022B8B98 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B8B9C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B8BA0 */ _t5 = cpu->r[11] + 0x0000402Cu;
|
|
/* 022B8BA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B8BA4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8BA4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[8]);
|
|
/* 022B8BA8 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8BA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B8BAC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8BAC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022B8BB0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8BB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B8BB4 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 022B8BB4 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022B8BB8 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 022B8BB8 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 022B8BBC */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 022B8BBC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B8BC0 */ _t13 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8BC0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 022B8BC4 */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 022B8BC8 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 022B8BC8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B8BCC */ _t15 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8BCC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B8BD0 */ cpu->f[12] = fma(cpu->f[8], cpu->f[8], cpu->f[10]);
|
|
/* 022B8BD4 */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 022B8BD8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 022B8BDC */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8BDC */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B8BDC */ if (_t17) goto L_022B8BE0; else goto L_022B8C1C;
|
|
L_022B8BE0: ; // 0x22b8be0
|
|
/* 022B8BE0 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B8BE4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B8BE8 */ _t18 = cpu->r[9] + 0x00004028u;
|
|
/* 022B8BE8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B8BEC */ _t19 = cpu->r[12] + 0x00004030u;
|
|
/* 022B8BEC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B8BF0 */ _ft20 = sqrt(cpu->f[9]);
|
|
/* 022B8BF0 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 022B8BF0 */ cpu->f[10] = _ft21 / _ft20;
|
|
/* 022B8BF4 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 022B8BF8 */ cpu->f[8] = cpu->f[10] * cpu->f[13];
|
|
/* 022B8BFC */ cpu->f[11] = -fma(cpu->f[11], cpu->f[9], -(cpu->f[12]));
|
|
/* 022B8C00 */ cpu->f[10] = cpu->f[11] * cpu->f[8];
|
|
/* 022B8C04 */ _t22 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8C04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B8C08 */ /* nop */
|
|
/* 022B8C0C */ cpu->f[0] = cpu->f[0] * cpu->f[10];
|
|
/* 022B8C10 */ /* nop */
|
|
/* 022B8C14 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8C14 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 022B8C18 */ /* nop */
|
|
L_022B8C1C: ; // 0x22b8c1c
|
|
/* 022B8C1C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B8C20 */ return;
|
|
}
|
|
|
|
// fn_022B8C24 @ 0x22b8c24
|
|
void Gambit_fn_022B8C24(CPUState* cpu) {
|
|
uint32_t _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_022B8C24: ; // 0x22b8c24
|
|
/* 022B8C24 */ cpu->r[0] = cpu->lr;
|
|
/* 022B8C28 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B8C28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8C28 */ cpu->r[1] = _t0;
|
|
/* 022B8C2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8C2C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B8C30 */ /* nop */
|
|
/* 022B8C34 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8C34 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B8C38 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B8C3C */ _t3 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022B8C3C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B8C40 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8C40 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B8C44 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 022B8C44 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B8C48 */ cpu->f[31] = cpu->f[1];
|
|
/* 022B8C4C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[0]);
|
|
/* 022B8C50 */ cpu->f[1] = cpu->f[0];
|
|
/* 022B8C54 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8C54 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B8C54 */ if (_t7) goto L_022B8C58; else goto L_022B8C64;
|
|
L_022B8C58: ; // 0x22b8c58
|
|
/* 022B8C58 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 022B8C58 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B8C5C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 022B8C60 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8C60 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B8C60 */ if (_t10) goto L_022B8C88; else goto L_022B8C64;
|
|
L_022B8C64: ; // 0x22b8c64
|
|
/* 022B8C64 */ _t11 = cpu->r[4] + 0x00000018u;
|
|
/* 022B8C64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B8C68 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8C68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B8C6C */ _t13 = cpu->r[4] + 0x00000020u;
|
|
/* 022B8C6C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B8C70 */ cpu->f[12] = cpu->f[11] * cpu->f[13];
|
|
/* 022B8C74 */ cpu->f[13] = cpu->f[9] * cpu->f[13];
|
|
/* 022B8C78 */ cpu->f[1] = fma(cpu->f[9], cpu->f[8], -(cpu->f[12]));
|
|
/* 022B8C7C */ cpu->f[2] = fma(cpu->f[11], cpu->f[8], cpu->f[13]);
|
|
/* 022B8C80 */ Gambit_fn_02C89074(cpu);
|
|
/* 022B8C84 */ goto L_022B8CB0;
|
|
L_022B8C88: ; // 0x22b8c88
|
|
/* 022B8C88 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8C88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B8C8C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B8C90 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8C90 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B8C90 */ if (_t16) goto L_022B8CB0; else goto L_022B8C94;
|
|
L_022B8C94: ; // 0x22b8c94
|
|
/* 022B8C94 */ _t17 = cpu->r[4] + 0x00000018u;
|
|
/* 022B8C94 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B8C98 */ _t18 = cpu->r[4] + 0x00000020u;
|
|
/* 022B8C98 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B8C9C */ cpu->f[12] = cpu->f[11] * cpu->f[13];
|
|
/* 022B8CA0 */ cpu->f[13] = cpu->f[9] * cpu->f[13];
|
|
/* 022B8CA4 */ cpu->f[1] = fma(cpu->f[9], cpu->f[8], -(cpu->f[12]));
|
|
/* 022B8CA8 */ cpu->f[2] = fma(cpu->f[11], cpu->f[8], cpu->f[13]);
|
|
/* 022B8CAC */ Gambit_fn_02C89074(cpu);
|
|
L_022B8CB0: ; // 0x22b8cb0
|
|
/* 022B8CB0 */ cpu->f[1] = cpu->f[1] * cpu->f[31];
|
|
/* 022B8CB4 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8CB4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B8CB8 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8CB8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 022B8CBC */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B8CBC */ _t22 = _t21 & 0x00000001u;
|
|
/* 022B8CBC */ if (_t22) goto L_022B8CC0; // else: addr-0 trap, fall-through
|
|
L_022B8CC0: ; // 0x22b8cc0
|
|
/* 022B8CC0 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8CC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B8CC4 */ cpu->lr = cpu->r[0];
|
|
/* 022B8CC8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B8CCC */ return;
|
|
}
|
|
|
|
// fn_022B8C28 @ 0x22b8c28
|
|
void Gambit_fn_022B8C28(CPUState* cpu) {
|
|
uint32_t _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_022B8C28: ; // 0x22b8c28
|
|
/* 022B8C28 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B8C28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8C28 */ cpu->r[1] = _t0;
|
|
/* 022B8C2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8C2C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B8C30 */ /* nop */
|
|
/* 022B8C34 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8C34 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B8C38 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B8C3C */ _t3 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022B8C3C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B8C40 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8C40 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B8C44 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 022B8C44 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022B8C48 */ cpu->f[31] = cpu->f[1];
|
|
/* 022B8C4C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[0]);
|
|
/* 022B8C50 */ cpu->f[1] = cpu->f[0];
|
|
/* 022B8C54 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8C54 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B8C54 */ if (_t7) goto L_022B8C58; else goto L_022B8C64;
|
|
L_022B8C58: ; // 0x22b8c58
|
|
/* 022B8C58 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 022B8C58 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B8C5C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 022B8C60 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8C60 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B8C60 */ if (_t10) goto L_022B8C88; else goto L_022B8C64;
|
|
L_022B8C64: ; // 0x22b8c64
|
|
/* 022B8C64 */ _t11 = cpu->r[4] + 0x00000018u;
|
|
/* 022B8C64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B8C68 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8C68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B8C6C */ _t13 = cpu->r[4] + 0x00000020u;
|
|
/* 022B8C6C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B8C70 */ cpu->f[12] = cpu->f[11] * cpu->f[13];
|
|
/* 022B8C74 */ cpu->f[13] = cpu->f[9] * cpu->f[13];
|
|
/* 022B8C78 */ cpu->f[1] = fma(cpu->f[9], cpu->f[8], -(cpu->f[12]));
|
|
/* 022B8C7C */ cpu->f[2] = fma(cpu->f[11], cpu->f[8], cpu->f[13]);
|
|
/* 022B8C80 */ Gambit_fn_02C89074(cpu);
|
|
/* 022B8C84 */ goto L_022B8CB0;
|
|
L_022B8C88: ; // 0x22b8c88
|
|
/* 022B8C88 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 022B8C88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B8C8C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B8C90 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8C90 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B8C90 */ if (_t16) goto L_022B8CB0; else goto L_022B8C94;
|
|
L_022B8C94: ; // 0x22b8c94
|
|
/* 022B8C94 */ _t17 = cpu->r[4] + 0x00000018u;
|
|
/* 022B8C94 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B8C98 */ _t18 = cpu->r[4] + 0x00000020u;
|
|
/* 022B8C98 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B8C9C */ cpu->f[12] = cpu->f[11] * cpu->f[13];
|
|
/* 022B8CA0 */ cpu->f[13] = cpu->f[9] * cpu->f[13];
|
|
/* 022B8CA4 */ cpu->f[1] = fma(cpu->f[9], cpu->f[8], -(cpu->f[12]));
|
|
/* 022B8CA8 */ cpu->f[2] = fma(cpu->f[11], cpu->f[8], cpu->f[13]);
|
|
/* 022B8CAC */ Gambit_fn_02C89074(cpu);
|
|
L_022B8CB0: ; // 0x22b8cb0
|
|
/* 022B8CB0 */ cpu->f[1] = cpu->f[1] * cpu->f[31];
|
|
/* 022B8CB4 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8CB4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B8CB8 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8CB8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 022B8CBC */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B8CBC */ _t22 = _t21 & 0x00000001u;
|
|
/* 022B8CBC */ if (_t22) goto L_022B8CC0; // else: addr-0 trap, fall-through
|
|
L_022B8CC0: ; // 0x22b8cc0
|
|
/* 022B8CC0 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8CC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B8CC4 */ cpu->lr = cpu->r[0];
|
|
/* 022B8CC8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B8CCC */ return;
|
|
}
|
|
|
|
// fn_022B8CD0 @ 0x22b8cd0
|
|
void Gambit_fn_022B8CD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022B8CD0: ; // 0x22b8cd0
|
|
/* 022B8CD0 */ cpu->r[0] = cpu->lr;
|
|
/* 022B8CD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B8CD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8CD4 */ cpu->r[1] = _t0;
|
|
/* 022B8CD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8CD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B8CDC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B8CE0 */ cpu->r[4] = cpu->r[31] + 0x00000018u;
|
|
/* 022B8CE4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B8CE8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8CE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B8CEC */ Gambit_fn_0204EFD8(cpu);
|
|
/* 022B8CF0 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8CF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B8CF4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8CF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B8CF8 */ _t5 = cpu->r[31] + 0x00000020u;
|
|
/* 022B8CF8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022B8CFC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8CFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B8D00 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B8D00 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 022B8D04 */ cpu->r[12] = 0x101F0000u;
|
|
/* 022B8D08 */ _t8 = cpu->r[31] + 0x00000018u;
|
|
/* 022B8D08 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022B8D0C */ _t9 = cpu->r[12] + 0x00006350u;
|
|
/* 022B8D0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B8D0C */ cpu->r[12] = _t9;
|
|
/* 022B8D10 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B8D10 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022B8D14 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 022B8D14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B8D18 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B8D1C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B8D20 */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 022B8D20 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 022B8D24 */ _t13 = cpu->r[12] + 0x00000008u;
|
|
/* 022B8D24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B8D28 */ cpu->r[4] = cpu->r[4] + 0x000040E8u;
|
|
/* 022B8D2C */ cpu->r[5] = 0x00000171u;
|
|
/* 022B8D30 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 022B8D30 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 022B8D34 */ Gambit_fn_0204D380(cpu);
|
|
/* 022B8D38 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8D38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B8D3C */ cpu->lr = cpu->r[0];
|
|
/* 022B8D40 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8D40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B8D44 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B8D48 */ return;
|
|
}
|
|
|
|
// fn_022B8CD4 @ 0x22b8cd4
|
|
void Gambit_fn_022B8CD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022B8CD4: ; // 0x22b8cd4
|
|
/* 022B8CD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B8CD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8CD4 */ cpu->r[1] = _t0;
|
|
/* 022B8CD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8CD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B8CDC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B8CE0 */ cpu->r[4] = cpu->r[31] + 0x00000018u;
|
|
/* 022B8CE4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B8CE8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8CE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B8CEC */ Gambit_fn_0204EFD8(cpu);
|
|
/* 022B8CF0 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8CF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022B8CF4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8CF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B8CF8 */ _t5 = cpu->r[31] + 0x00000020u;
|
|
/* 022B8CF8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022B8CFC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8CFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B8D00 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B8D00 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 022B8D04 */ cpu->r[12] = 0x101F0000u;
|
|
/* 022B8D08 */ _t8 = cpu->r[31] + 0x00000018u;
|
|
/* 022B8D08 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022B8D0C */ _t9 = cpu->r[12] + 0x00006350u;
|
|
/* 022B8D0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B8D0C */ cpu->r[12] = _t9;
|
|
/* 022B8D10 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B8D10 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022B8D14 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 022B8D14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B8D18 */ cpu->r[4] = 0x10060000u;
|
|
/* 022B8D1C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B8D20 */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 022B8D20 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 022B8D24 */ _t13 = cpu->r[12] + 0x00000008u;
|
|
/* 022B8D24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B8D28 */ cpu->r[4] = cpu->r[4] + 0x000040E8u;
|
|
/* 022B8D2C */ cpu->r[5] = 0x00000171u;
|
|
/* 022B8D30 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 022B8D30 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 022B8D34 */ Gambit_fn_0204D380(cpu);
|
|
/* 022B8D38 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8D38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B8D3C */ cpu->lr = cpu->r[0];
|
|
/* 022B8D40 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8D40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B8D44 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B8D48 */ return;
|
|
}
|
|
|
|
// fn_022B8D4C @ 0x22b8d4c
|
|
void Gambit_fn_022B8D4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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;
|
|
|
|
L_022B8D4C: ; // 0x22b8d4c
|
|
/* 022B8D4C */ _t0 = cpu->r[1] + 0xFFFFFE90u;
|
|
/* 022B8D4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8D4C */ cpu->r[1] = _t0;
|
|
/* 022B8D50 */ _t1 = cpu->r[1] + 0x00000150u;
|
|
/* 022B8D50 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022B8D54 */ /* nop */
|
|
/* 022B8D58 */ _t2 = cpu->r[1] + 0x00000110u;
|
|
/* 022B8D58 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[26]);
|
|
/* 022B8D5C */ _t3 = cpu->r[1] + 0x00000140u;
|
|
/* 022B8D5C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 022B8D60 */ /* nop */
|
|
/* 022B8D64 */ _t4 = cpu->r[1] + 0x00000120u;
|
|
/* 022B8D64 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[27]);
|
|
/* 022B8D68 */ /* nop */
|
|
/* 022B8D6C */ _t5 = cpu->r[1] + 0x00000118u;
|
|
/* 022B8D6C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[26]);
|
|
/* 022B8D70 */ /* nop */
|
|
/* 022B8D74 */ _t6 = cpu->r[1] + 0x00000130u;
|
|
/* 022B8D74 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[28]);
|
|
/* 022B8D78 */ _t7 = cpu->r[1] + 0x00000158u;
|
|
/* 022B8D78 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 022B8D7C */ /* nop */
|
|
/* 022B8D80 */ _t8 = cpu->r[1] + 0x00000148u;
|
|
/* 022B8D80 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 022B8D84 */ _t9 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B8D84 */ rbrew_write_f64(cpu->mem, _t9, cpu->f[23]);
|
|
/* 022B8D88 */ cpu->r[0] = cpu->lr;
|
|
/* 022B8D8C */ _t10 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B8D8C */ rbrew_write_f64(cpu->mem, _t10, cpu->f[24]);
|
|
/* 022B8D90 */ /* nop */
|
|
/* 022B8D94 */ _t11 = cpu->r[1] + 0x00000128u;
|
|
/* 022B8D94 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[27]);
|
|
/* 022B8D98 */ /* nop */
|
|
/* 022B8D9C */ _t12 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B8D9C */ rbrew_write_f32(cpu->mem, _t12, cpu->f[23]);
|
|
/* 022B8DA0 */ _t13 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B8DA0 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[24]);
|
|
/* 022B8DA4 */ _t14 = cpu->r[1] + 0x00000160u;
|
|
/* 022B8DA4 */ rbrew_write_f64(cpu->mem, _t14, cpu->f[31]);
|
|
/* 022B8DA8 */ _t15 = cpu->r[1] + 0x00000100u;
|
|
/* 022B8DA8 */ rbrew_write_f64(cpu->mem, _t15, cpu->f[25]);
|
|
/* 022B8DAC */ _t16 = cpu->r[1] + 0x00000138u;
|
|
/* 022B8DAC */ rbrew_write_f32(cpu->mem, _t16, cpu->f[28]);
|
|
/* 022B8DB0 */ /* nop */
|
|
/* 022B8DB4 */ _t17 = cpu->r[1] + 0x00000174u;
|
|
/* 022B8DB4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B8DB8 */ /* nop */
|
|
/* 022B8DBC */ _t18 = cpu->r[1] + 0x00000108u;
|
|
/* 022B8DBC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[25]);
|
|
/* 022B8DC0 */ _t19 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B8DC0 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 022B8DC4 */ _t20 = cpu->r[1] + 0x000000D4u;
|
|
/* 022B8DC4 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 022B8DC8 */ _t21 = cpu->r[1] + 0x00000168u;
|
|
/* 022B8DC8 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[31]);
|
|
/* 022B8DCC */ cpu->r[11] = 0x10060000u;
|
|
/* 022B8DD0 */ _t22 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B8DD0 */ rbrew_write32(cpu->mem, _t22, cpu->r[31]);
|
|
/* 022B8DD4 */ cpu->r[31] = cpu->r[5];
|
|
/* 022B8DD8 */ _t23 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B8DD8 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 022B8DDC */ cpu->r[29] = cpu->r[3];
|
|
/* 022B8DE0 */ cpu->f[28] = cpu->f[1];
|
|
/* 022B8DE4 */ _t24 = cpu->r[11] + 0x0000402Cu;
|
|
/* 022B8DE4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B8DE8 */ _t25 = cpu->r[31] + 0x00000008u;
|
|
/* 022B8DE8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B8DEC */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8DEC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[28]);
|
|
/* 022B8DF0 */ cpu->f[27] = cpu->f[8];
|
|
/* 022B8DF4 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8DF4 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[31]);
|
|
/* 022B8DF8 */ /* nop */
|
|
/* 022B8DFC */ cpu->f[24] = cpu->f[5];
|
|
/* 022B8E00 */ /* nop */
|
|
/* 022B8E04 */ cpu->f[30] = cpu->f[3];
|
|
/* 022B8E08 */ _t28 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8E08 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[12]);
|
|
/* 022B8E0C */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8E0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B8E10 */ /* nop */
|
|
/* 022B8E14 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8E14 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 022B8E18 */ cpu->f[25] = cpu->f[6];
|
|
/* 022B8E1C */ /* nop */
|
|
/* 022B8E20 */ _t31 = cpu->r[1] + 0x00000048u;
|
|
/* 022B8E20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B8E24 */ cpu->f[23] = cpu->f[4];
|
|
/* 022B8E28 */ _t32 = cpu->r[1] + 0x00000058u;
|
|
/* 022B8E28 */ rbrew_write32(cpu->mem, _t32, cpu->r[5]);
|
|
/* 022B8E2C */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 022B8E30 */ _t33 = cpu->r[1] + 0x00000044u;
|
|
/* 022B8E30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B8E34 */ cpu->f[29] = cpu->f[2];
|
|
/* 022B8E38 */ _t34 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8E38 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 022B8E3C */ cpu->f[26] = cpu->f[7];
|
|
/* 022B8E40 */ cpu->r[30] = cpu->r[4];
|
|
/* 022B8E44 */ _t35 = cpu->r[1] + 0x00000050u;
|
|
/* 022B8E44 */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 022B8E48 */ Gambit_fn_02043AC4(cpu);
|
|
/* 022B8E4C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B8E50 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B8E54 */ _t36 = cpu->r[10] + 0x00004094u;
|
|
/* 022B8E54 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B8E58 */ cpu->r[10] = 0x101F0000u;
|
|
/* 022B8E5C */ _t37 = cpu->r[12] + 0x00001EF8u;
|
|
/* 022B8E5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B8E60 */ _t38 = cpu->r[10] + 0x00006350u;
|
|
/* 022B8E60 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022B8E60 */ cpu->r[10] = _t38;
|
|
/* 022B8E64 */ _t39 = cpu->r[10] + 0x00000004u;
|
|
/* 022B8E64 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022B8E68 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022B8E6C */ cpu->f[8] = -cpu->f[9];
|
|
/* 022B8E70 */ _t40 = cpu->r[10] + 0x00000008u;
|
|
/* 022B8E70 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022B8E74 */ cpu->f[10] = -cpu->f[12];
|
|
/* 022B8E78 */ _t41 = cpu->r[8] + 0xFFFF958Cu;
|
|
/* 022B8E78 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B8E7C */ cpu->f[7] = -cpu->f[9];
|
|
/* 022B8E80 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8E80 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[8]);
|
|
/* 022B8E84 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8E84 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B8E88 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8E88 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[10]);
|
|
/* 022B8E8C */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8E8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B8E90 */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 022B8E90 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[7]);
|
|
/* 022B8E94 */ _t47 = cpu->r[1] + 0x00000020u;
|
|
/* 022B8E94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022B8E98 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[28], cpu->f[31]);
|
|
/* 022B8E9C */ _t48 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B8E9C */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 022B8EA0 */ _t49 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B8EA0 */ rbrew_write32(cpu->mem, _t49, cpu->r[9]);
|
|
/* 022B8EA4 */ _t50 = cpu->r[1] + 0x000000C8u;
|
|
/* 022B8EA4 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 022B8EA8 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8EA8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 022B8EA8 */ if (_t52) goto L_022B8EE8; else goto L_022B8EAC;
|
|
L_022B8EAC: ; // 0x22b8eac
|
|
/* 022B8EAC */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8EAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B8EB0 */ cpu->r[0] = cpu->r[1] + 0x00000024u;
|
|
/* 022B8EB4 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 022B8EB8 */ cpu->r[7] = 0x00000008u;
|
|
/* 022B8EBC */ cpu->r[5] = 0x00000000u;
|
|
/* 022B8EC0 */ cpu->f[1] = cpu->f[4];
|
|
/* 022B8EC4 */ cpu->r[8] = 0x000000FFu;
|
|
/* 022B8EC8 */ cpu->r[6] = cpu->r[5];
|
|
/* 022B8ECC */ cpu->r[10] = cpu->r[5];
|
|
/* 022B8ED0 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8ED0 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 022B8ED4 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022B8ED8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B8ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B8EDC */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 022B8EDC */ rbrew_write32(cpu->mem, _t55, cpu->r[3]);
|
|
/* 022B8EE0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8EE0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022B8EE0 */ if (_t57) goto L_022B8F94; else goto L_022B8EE4;
|
|
L_022B8EE4: ; // 0x22b8ee4
|
|
/* 022B8EE4 */ goto L_022B8F1C;
|
|
L_022B8EE8: ; // 0x22b8ee8
|
|
/* 022B8EE8 */ cpu->f[1] = cpu->f[28];
|
|
/* 022B8EEC */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8EEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022B8EF0 */ cpu->f[3] = cpu->f[2];
|
|
/* 022B8EF4 */ cpu->r[5] = cpu->r[1] + 0x000000C0u;
|
|
/* 022B8EF8 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 022B8EFC */ cpu->f[2] = cpu->f[4];
|
|
/* 022B8F00 */ cpu->r[6] = 0x00000008u;
|
|
/* 022B8F04 */ cpu->r[7] = 0x000000FFu;
|
|
/* 022B8F08 */ cpu->r[9] = cpu->r[1] + 0x00000024u;
|
|
/* 022B8F0C */ Gambit_fn_0204A864(cpu);
|
|
/* 022B8F10 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B8F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B8F14 */ _t59 = cpu->r[1] + 0x00000024u;
|
|
/* 022B8F14 */ rbrew_write32(cpu->mem, _t59, cpu->r[3]);
|
|
/* 022B8F18 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8F18 */ _t61 = _t60 & 0x00000001u;
|
|
/* 022B8F18 */ if (_t61) goto L_022B8F94; else goto L_022B8F1C;
|
|
L_022B8F1C: ; // 0x22b8f1c
|
|
/* 022B8F1C */ _t62 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8F1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B8F20 */ _t63 = cpu->r[9] + 0x0000015Cu;
|
|
/* 022B8F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B8F24 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 022B8F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022B8F28 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8F28 */ _t65 = _t64 & 0x00000001u;
|
|
/* 022B8F28 */ if (_t65) goto L_022B8F94; else goto L_022B8F2C;
|
|
L_022B8F2C: ; // 0x22b8f2c
|
|
/* 022B8F2C */ _t66 = cpu->r[9] + 0x00000060u;
|
|
/* 022B8F2C */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022B8F30 */ cpu->r[31] = cpu->r[9] + 0x00000060u;
|
|
/* 022B8F34 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B8F38 */ _t67 = cpu->r[1] + 0x00000034u;
|
|
/* 022B8F38 */ rbrew_write32(cpu->mem, _t67, cpu->r[8]);
|
|
/* 022B8F3C */ _t68 = cpu->r[9] + 0x00000064u;
|
|
/* 022B8F3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022B8F40 */ _t69 = cpu->r[5] + 0x00004100u;
|
|
/* 022B8F40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022B8F44 */ _t70 = cpu->r[1] + 0x00000038u;
|
|
/* 022B8F44 */ rbrew_write32(cpu->mem, _t70, cpu->r[9]);
|
|
/* 022B8F48 */ _t71 = cpu->r[31] + 0x00000008u;
|
|
/* 022B8F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022B8F4C */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8F4C */ rbrew_write_f32(cpu->mem, _t72, cpu->f[31]);
|
|
/* 022B8F50 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8F50 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 022B8F54 */ /* nop */
|
|
/* 022B8F58 */ /* nop */
|
|
/* 022B8F5C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B8F60 */ _t74 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8F60 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[31]);
|
|
/* 022B8F64 */ /* nop */
|
|
/* 022B8F68 */ _t75 = cpu->r[12] + 0x00006000u;
|
|
/* 022B8F68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022B8F6C */ /* nop */
|
|
/* 022B8F70 */ _t76 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B8F70 */ rbrew_write32(cpu->mem, _t76, cpu->r[0]);
|
|
/* 022B8F74 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022B8F78 */ _t77 = cpu->r[12] + 0x00000274u;
|
|
/* 022B8F78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022B8F7C */ _t78 = cpu->r[11] + 0x00004FACu;
|
|
/* 022B8F7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B8F80 */ cpu->r[6] = cpu->r[3] + cpu->r[11];
|
|
/* 022B8F84 */ _t79 = cpu->r[6] + 0x00000104u;
|
|
/* 022B8F84 */ cpu->r[4] = rbrew_read8(cpu->mem, _t79);
|
|
/* 022B8F88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022B8F8C */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8F8C */ _t81 = _t80 & 0x00000001u;
|
|
/* 022B8F8C */ if (_t81) goto L_022B90A4; else goto L_022B8F90;
|
|
L_022B8F90: ; // 0x22b8f90
|
|
/* 022B8F90 */ goto L_022B9010;
|
|
L_022B8F94: ; // 0x22b8f94
|
|
/* 022B8F94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B8F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B8F98 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8F98 */ _t83 = _t82 & 0x00000001u;
|
|
/* 022B8F98 */ if (_t83) goto L_022B8FB0; else goto L_022B8F9C;
|
|
L_022B8F9C: ; // 0x22b8f9c
|
|
/* 022B8F9C */ _t84 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8F9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022B8FA0 */ _t85 = cpu->r[9] + 0x0000015Cu;
|
|
/* 022B8FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 022B8FA4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 022B8FA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022B8FA8 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8FA8 */ _t87 = _t86 & 0x00000001u;
|
|
/* 022B8FA8 */ if (_t87) goto L_022B8FB0; else goto L_022B8FAC;
|
|
L_022B8FAC: ; // 0x22b8fac
|
|
/* 022B8FAC */ cpu->r[31] = cpu->r[9] + 0x000000C0u;
|
|
L_022B8FB0: ; // 0x22b8fb0
|
|
/* 022B8FB0 */ _t88 = cpu->r[31] + 0x00000000u;
|
|
/* 022B8FB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022B8FB4 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B8FB8 */ _t89 = cpu->r[1] + 0x00000034u;
|
|
/* 022B8FB8 */ rbrew_write32(cpu->mem, _t89, cpu->r[8]);
|
|
/* 022B8FBC */ _t90 = cpu->r[31] + 0x00000004u;
|
|
/* 022B8FBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022B8FC0 */ _t91 = cpu->r[5] + 0x00004100u;
|
|
/* 022B8FC0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 022B8FC4 */ _t92 = cpu->r[1] + 0x00000038u;
|
|
/* 022B8FC4 */ rbrew_write32(cpu->mem, _t92, cpu->r[9]);
|
|
/* 022B8FC8 */ _t93 = cpu->r[31] + 0x00000008u;
|
|
/* 022B8FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022B8FCC */ _t94 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8FCC */ rbrew_write_f32(cpu->mem, _t94, cpu->f[31]);
|
|
/* 022B8FD0 */ _t95 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8FD0 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[0]);
|
|
/* 022B8FD4 */ /* nop */
|
|
/* 022B8FD8 */ /* nop */
|
|
/* 022B8FDC */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B8FE0 */ _t96 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8FE0 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[31]);
|
|
/* 022B8FE4 */ /* nop */
|
|
/* 022B8FE8 */ _t97 = cpu->r[12] + 0x00006000u;
|
|
/* 022B8FE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022B8FEC */ /* nop */
|
|
/* 022B8FF0 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022B8FF4 */ _t98 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B8FF4 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 022B8FF8 */ _t99 = cpu->r[12] + 0x00000274u;
|
|
/* 022B8FF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022B8FFC */ _t100 = cpu->r[11] + 0x00004FACu;
|
|
/* 022B8FFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022B9000 */ cpu->r[6] = cpu->r[3] + cpu->r[11];
|
|
/* 022B9004 */ _t101 = cpu->r[6] + 0x00000104u;
|
|
/* 022B9004 */ cpu->r[4] = rbrew_read8(cpu->mem, _t101);
|
|
/* 022B9008 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022B900C */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B900C */ _t103 = _t102 & 0x00000001u;
|
|
/* 022B900C */ if (_t103) goto L_022B90A4; else goto L_022B9010;
|
|
L_022B9010: ; // 0x22b9010
|
|
/* 022B9010 */ cpu->r[7] = 0x101F0000u;
|
|
/* 022B9014 */ cpu->r[6] = cpu->r[1] + 0x00000034u;
|
|
/* 022B9018 */ cpu->r[7] = cpu->r[7] + 0x00006338u;
|
|
/* 022B901C */ cpu->r[5] = 0x00000001u;
|
|
/* 022B9020 */ Gambit_fn_021F000C(cpu);
|
|
/* 022B9024 */ cpu->r[28] = cpu->r[3];
|
|
/* 022B9024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022B9028 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9028 */ _t105 = _t104 & 0x00000001u;
|
|
/* 022B9028 */ if (_t105) goto L_022B90A4; else goto L_022B902C;
|
|
L_022B902C: ; // 0x22b902c
|
|
/* 022B902C */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B9030 */ Gambit_fn_021C7360(cpu);
|
|
/* 022B9034 */ _t106 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B9034 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[28]);
|
|
/* 022B9038 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B903C */ _t107 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B903C */ rbrew_write_f32(cpu->mem, _t107, cpu->f[24]);
|
|
/* 022B9040 */ cpu->r[31] = 0xFFFFFFFFu;
|
|
/* 022B9044 */ _t108 = cpu->r[12] + 0x00004104u;
|
|
/* 022B9044 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 022B9048 */ _t109 = cpu->r[1] + 0x00000060u;
|
|
/* 022B9048 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[23]);
|
|
/* 022B904C */ _t110 = cpu->r[1] + 0x00000064u;
|
|
/* 022B904C */ rbrew_write_f32(cpu->mem, _t110, cpu->f[29]);
|
|
/* 022B9050 */ _t111 = cpu->r[1] + 0x00000068u;
|
|
/* 022B9050 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[29]);
|
|
/* 022B9054 */ cpu->r[3] = 0x101D0000u;
|
|
/* 022B9058 */ _t112 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B9058 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[26]);
|
|
/* 022B905C */ _t113 = cpu->r[1] + 0x00000070u;
|
|
/* 022B905C */ rbrew_write_f32(cpu->mem, _t113, cpu->f[30]);
|
|
/* 022B9060 */ _t114 = cpu->r[1] + 0x00000040u;
|
|
/* 022B9060 */ rbrew_write32(cpu->mem, _t114, cpu->r[31]);
|
|
/* 022B9064 */ _t115 = cpu->r[1] + 0x00000078u;
|
|
/* 022B9064 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[25]);
|
|
/* 022B9068 */ _t116 = cpu->r[1] + 0x00000074u;
|
|
/* 022B9068 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[30]);
|
|
/* 022B906C */ _t117 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022B906C */ cpu->r[3] = rbrew_read32(cpu->mem, _t117);
|
|
/* 022B9070 */ _t118 = cpu->r[1] + 0x00000080u;
|
|
/* 022B9070 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[27]);
|
|
/* 022B9074 */ _t119 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B9074 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[13]);
|
|
/* 022B9078 */ Gambit_fn_02830138(cpu);
|
|
/* 022B907C */ cpu->r[4] = cpu->r[29];
|
|
/* 022B9080 */ cpu->r[5] = cpu->r[30];
|
|
/* 022B9084 */ _t120 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9084 */ rbrew_write32(cpu->mem, _t120, cpu->r[3]);
|
|
/* 022B9088 */ cpu->r[10] = cpu->r[31];
|
|
/* 022B908C */ cpu->r[9] = cpu->r[1] + 0x00000040u;
|
|
/* 022B9090 */ cpu->r[8] = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B9094 */ cpu->r[7] = cpu->r[1] + 0x00000034u;
|
|
/* 022B9098 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B909C */ cpu->r[3] = cpu->r[28];
|
|
/* 022B90A0 */ Gambit_fn_021C777C(cpu);
|
|
L_022B90A4: ; // 0x22b90a4
|
|
/* 022B90A4 */ _t121 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B90A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t121);
|
|
/* 022B90A8 */ _t122 = cpu->r[1] + 0x000000D4u;
|
|
/* 022B90A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t122);
|
|
/* 022B90AC */ _t123 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B90AC */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 022B90B0 */ _t124 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B90B0 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 022B90B4 */ _t125 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B90B4 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t125);
|
|
/* 022B90B8 */ _t126 = cpu->r[1] + 0x00000108u;
|
|
/* 022B90B8 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 022B90BC */ _t127 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B90BC */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t127);
|
|
/* 022B90C0 */ _t128 = cpu->r[1] + 0x00000100u;
|
|
/* 022B90C0 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t128);
|
|
/* 022B90C4 */ _t129 = cpu->r[1] + 0x00000118u;
|
|
/* 022B90C4 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 022B90C8 */ _t130 = cpu->r[1] + 0x00000128u;
|
|
/* 022B90C8 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 022B90CC */ _t131 = cpu->r[1] + 0x00000110u;
|
|
/* 022B90CC */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t131);
|
|
/* 022B90D0 */ _t132 = cpu->r[1] + 0x00000120u;
|
|
/* 022B90D0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t132);
|
|
/* 022B90D4 */ _t133 = cpu->r[1] + 0x00000138u;
|
|
/* 022B90D4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 022B90D8 */ _t134 = cpu->r[1] + 0x00000148u;
|
|
/* 022B90D8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 022B90DC */ _t135 = cpu->r[1] + 0x00000130u;
|
|
/* 022B90DC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t135);
|
|
/* 022B90E0 */ _t136 = cpu->r[1] + 0x00000140u;
|
|
/* 022B90E0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t136);
|
|
/* 022B90E4 */ _t137 = cpu->r[1] + 0x00000168u;
|
|
/* 022B90E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 022B90E8 */ _t138 = cpu->r[1] + 0x00000158u;
|
|
/* 022B90E8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 022B90EC */ _t139 = cpu->r[1] + 0x00000160u;
|
|
/* 022B90EC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 022B90F0 */ _t140 = cpu->r[1] + 0x00000150u;
|
|
/* 022B90F0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t140);
|
|
/* 022B90F4 */ _t141 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B90F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t141);
|
|
/* 022B90F8 */ _t142 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B90F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t142);
|
|
/* 022B90FC */ _t143 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B90FC */ _t144 = _t143 & 0x00000001u;
|
|
/* 022B90FC */ if (_t144) goto L_022B9100; // else: addr-0 trap, fall-through
|
|
L_022B9100: ; // 0x22b9100
|
|
/* 022B9100 */ _t145 = cpu->r[1] + 0x00000174u;
|
|
/* 022B9100 */ cpu->r[0] = rbrew_read32(cpu->mem, _t145);
|
|
/* 022B9104 */ cpu->lr = cpu->r[0];
|
|
/* 022B9108 */ cpu->r[1] = cpu->r[1] + 0x00000170u;
|
|
/* 022B910C */ return;
|
|
}
|
|
|
|
// fn_022B9110 @ 0x22b9110
|
|
void Gambit_fn_022B9110(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146;
|
|
|
|
L_022B8D4C: ; // 0x22b8d4c
|
|
/* 022B8D4C */ _t0 = cpu->r[1] + 0xFFFFFE90u;
|
|
/* 022B8D4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B8D4C */ cpu->r[1] = _t0;
|
|
/* 022B8D50 */ _t1 = cpu->r[1] + 0x00000150u;
|
|
/* 022B8D50 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022B8D54 */ /* nop */
|
|
/* 022B8D58 */ _t2 = cpu->r[1] + 0x00000110u;
|
|
/* 022B8D58 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[26]);
|
|
/* 022B8D5C */ _t3 = cpu->r[1] + 0x00000140u;
|
|
/* 022B8D5C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 022B8D60 */ /* nop */
|
|
/* 022B8D64 */ _t4 = cpu->r[1] + 0x00000120u;
|
|
/* 022B8D64 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[27]);
|
|
/* 022B8D68 */ /* nop */
|
|
/* 022B8D6C */ _t5 = cpu->r[1] + 0x00000118u;
|
|
/* 022B8D6C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[26]);
|
|
/* 022B8D70 */ /* nop */
|
|
/* 022B8D74 */ _t6 = cpu->r[1] + 0x00000130u;
|
|
/* 022B8D74 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[28]);
|
|
/* 022B8D78 */ _t7 = cpu->r[1] + 0x00000158u;
|
|
/* 022B8D78 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 022B8D7C */ /* nop */
|
|
/* 022B8D80 */ _t8 = cpu->r[1] + 0x00000148u;
|
|
/* 022B8D80 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 022B8D84 */ _t9 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B8D84 */ rbrew_write_f64(cpu->mem, _t9, cpu->f[23]);
|
|
/* 022B8D88 */ cpu->r[0] = cpu->lr;
|
|
/* 022B8D8C */ _t10 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B8D8C */ rbrew_write_f64(cpu->mem, _t10, cpu->f[24]);
|
|
/* 022B8D90 */ /* nop */
|
|
/* 022B8D94 */ _t11 = cpu->r[1] + 0x00000128u;
|
|
/* 022B8D94 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[27]);
|
|
/* 022B8D98 */ /* nop */
|
|
/* 022B8D9C */ _t12 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B8D9C */ rbrew_write_f32(cpu->mem, _t12, cpu->f[23]);
|
|
/* 022B8DA0 */ _t13 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B8DA0 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[24]);
|
|
/* 022B8DA4 */ _t14 = cpu->r[1] + 0x00000160u;
|
|
/* 022B8DA4 */ rbrew_write_f64(cpu->mem, _t14, cpu->f[31]);
|
|
/* 022B8DA8 */ _t15 = cpu->r[1] + 0x00000100u;
|
|
/* 022B8DA8 */ rbrew_write_f64(cpu->mem, _t15, cpu->f[25]);
|
|
/* 022B8DAC */ _t16 = cpu->r[1] + 0x00000138u;
|
|
/* 022B8DAC */ rbrew_write_f32(cpu->mem, _t16, cpu->f[28]);
|
|
/* 022B8DB0 */ /* nop */
|
|
/* 022B8DB4 */ _t17 = cpu->r[1] + 0x00000174u;
|
|
/* 022B8DB4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B8DB8 */ /* nop */
|
|
/* 022B8DBC */ _t18 = cpu->r[1] + 0x00000108u;
|
|
/* 022B8DBC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[25]);
|
|
/* 022B8DC0 */ _t19 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B8DC0 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 022B8DC4 */ _t20 = cpu->r[1] + 0x000000D4u;
|
|
/* 022B8DC4 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 022B8DC8 */ _t21 = cpu->r[1] + 0x00000168u;
|
|
/* 022B8DC8 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[31]);
|
|
/* 022B8DCC */ cpu->r[11] = 0x10060000u;
|
|
/* 022B8DD0 */ _t22 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B8DD0 */ rbrew_write32(cpu->mem, _t22, cpu->r[31]);
|
|
/* 022B8DD4 */ cpu->r[31] = cpu->r[5];
|
|
/* 022B8DD8 */ _t23 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B8DD8 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 022B8DDC */ cpu->r[29] = cpu->r[3];
|
|
/* 022B8DE0 */ cpu->f[28] = cpu->f[1];
|
|
/* 022B8DE4 */ _t24 = cpu->r[11] + 0x0000402Cu;
|
|
/* 022B8DE4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B8DE8 */ _t25 = cpu->r[31] + 0x00000008u;
|
|
/* 022B8DE8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B8DEC */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8DEC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[28]);
|
|
/* 022B8DF0 */ cpu->f[27] = cpu->f[8];
|
|
/* 022B8DF4 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8DF4 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[31]);
|
|
/* 022B8DF8 */ /* nop */
|
|
/* 022B8DFC */ cpu->f[24] = cpu->f[5];
|
|
/* 022B8E00 */ /* nop */
|
|
/* 022B8E04 */ cpu->f[30] = cpu->f[3];
|
|
/* 022B8E08 */ _t28 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8E08 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[12]);
|
|
/* 022B8E0C */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B8E0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B8E10 */ /* nop */
|
|
/* 022B8E14 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8E14 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 022B8E18 */ cpu->f[25] = cpu->f[6];
|
|
/* 022B8E1C */ /* nop */
|
|
/* 022B8E20 */ _t31 = cpu->r[1] + 0x00000048u;
|
|
/* 022B8E20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B8E24 */ cpu->f[23] = cpu->f[4];
|
|
/* 022B8E28 */ _t32 = cpu->r[1] + 0x00000058u;
|
|
/* 022B8E28 */ rbrew_write32(cpu->mem, _t32, cpu->r[5]);
|
|
/* 022B8E2C */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 022B8E30 */ _t33 = cpu->r[1] + 0x00000044u;
|
|
/* 022B8E30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B8E34 */ cpu->f[29] = cpu->f[2];
|
|
/* 022B8E38 */ _t34 = cpu->r[1] + 0x00000054u;
|
|
/* 022B8E38 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 022B8E3C */ cpu->f[26] = cpu->f[7];
|
|
/* 022B8E40 */ cpu->r[30] = cpu->r[4];
|
|
/* 022B8E44 */ _t35 = cpu->r[1] + 0x00000050u;
|
|
/* 022B8E44 */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 022B8E48 */ Gambit_fn_02043AC4(cpu);
|
|
/* 022B8E4C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B8E50 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B8E54 */ _t36 = cpu->r[10] + 0x00004094u;
|
|
/* 022B8E54 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B8E58 */ cpu->r[10] = 0x101F0000u;
|
|
/* 022B8E5C */ _t37 = cpu->r[12] + 0x00001EF8u;
|
|
/* 022B8E5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B8E60 */ _t38 = cpu->r[10] + 0x00006350u;
|
|
/* 022B8E60 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022B8E60 */ cpu->r[10] = _t38;
|
|
/* 022B8E64 */ _t39 = cpu->r[10] + 0x00000004u;
|
|
/* 022B8E64 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022B8E68 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022B8E6C */ cpu->f[8] = -cpu->f[9];
|
|
/* 022B8E70 */ _t40 = cpu->r[10] + 0x00000008u;
|
|
/* 022B8E70 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022B8E74 */ cpu->f[10] = -cpu->f[12];
|
|
/* 022B8E78 */ _t41 = cpu->r[8] + 0xFFFF958Cu;
|
|
/* 022B8E78 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B8E7C */ cpu->f[7] = -cpu->f[9];
|
|
/* 022B8E80 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8E80 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[8]);
|
|
/* 022B8E84 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 022B8E84 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B8E88 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8E88 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[10]);
|
|
/* 022B8E8C */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B8E8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B8E90 */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 022B8E90 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[7]);
|
|
/* 022B8E94 */ _t47 = cpu->r[1] + 0x00000020u;
|
|
/* 022B8E94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022B8E98 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[28], cpu->f[31]);
|
|
/* 022B8E9C */ _t48 = cpu->r[1] + 0x000000C4u;
|
|
/* 022B8E9C */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 022B8EA0 */ _t49 = cpu->r[1] + 0x000000C0u;
|
|
/* 022B8EA0 */ rbrew_write32(cpu->mem, _t49, cpu->r[9]);
|
|
/* 022B8EA4 */ _t50 = cpu->r[1] + 0x000000C8u;
|
|
/* 022B8EA4 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 022B8EA8 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B8EA8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 022B8EA8 */ if (_t52) goto L_022B8EE8; else goto L_022B8EAC;
|
|
L_022B8EAC: ; // 0x22b8eac
|
|
/* 022B8EAC */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8EAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B8EB0 */ cpu->r[0] = cpu->r[1] + 0x00000024u;
|
|
/* 022B8EB4 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 022B8EB8 */ cpu->r[7] = 0x00000008u;
|
|
/* 022B8EBC */ cpu->r[5] = 0x00000000u;
|
|
/* 022B8EC0 */ cpu->f[1] = cpu->f[4];
|
|
/* 022B8EC4 */ cpu->r[8] = 0x000000FFu;
|
|
/* 022B8EC8 */ cpu->r[6] = cpu->r[5];
|
|
/* 022B8ECC */ cpu->r[10] = cpu->r[5];
|
|
/* 022B8ED0 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 022B8ED0 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 022B8ED4 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022B8ED8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B8ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B8EDC */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 022B8EDC */ rbrew_write32(cpu->mem, _t55, cpu->r[3]);
|
|
/* 022B8EE0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8EE0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022B8EE0 */ if (_t57) goto L_022B8F94; else goto L_022B8EE4;
|
|
L_022B8EE4: ; // 0x22b8ee4
|
|
/* 022B8EE4 */ goto L_022B8F1C;
|
|
L_022B8EE8: ; // 0x22b8ee8
|
|
/* 022B8EE8 */ cpu->f[1] = cpu->f[28];
|
|
/* 022B8EEC */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8EEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022B8EF0 */ cpu->f[3] = cpu->f[2];
|
|
/* 022B8EF4 */ cpu->r[5] = cpu->r[1] + 0x000000C0u;
|
|
/* 022B8EF8 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 022B8EFC */ cpu->f[2] = cpu->f[4];
|
|
/* 022B8F00 */ cpu->r[6] = 0x00000008u;
|
|
/* 022B8F04 */ cpu->r[7] = 0x000000FFu;
|
|
/* 022B8F08 */ cpu->r[9] = cpu->r[1] + 0x00000024u;
|
|
/* 022B8F0C */ Gambit_fn_0204A864(cpu);
|
|
/* 022B8F10 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B8F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B8F14 */ _t59 = cpu->r[1] + 0x00000024u;
|
|
/* 022B8F14 */ rbrew_write32(cpu->mem, _t59, cpu->r[3]);
|
|
/* 022B8F18 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8F18 */ _t61 = _t60 & 0x00000001u;
|
|
/* 022B8F18 */ if (_t61) goto L_022B8F94; else goto L_022B8F1C;
|
|
L_022B8F1C: ; // 0x22b8f1c
|
|
/* 022B8F1C */ _t62 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8F1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B8F20 */ _t63 = cpu->r[9] + 0x0000015Cu;
|
|
/* 022B8F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B8F24 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 022B8F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022B8F28 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8F28 */ _t65 = _t64 & 0x00000001u;
|
|
/* 022B8F28 */ if (_t65) goto L_022B8F94; else goto L_022B8F2C;
|
|
L_022B8F2C: ; // 0x22b8f2c
|
|
/* 022B8F2C */ _t66 = cpu->r[9] + 0x00000060u;
|
|
/* 022B8F2C */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022B8F30 */ cpu->r[31] = cpu->r[9] + 0x00000060u;
|
|
/* 022B8F34 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B8F38 */ _t67 = cpu->r[1] + 0x00000034u;
|
|
/* 022B8F38 */ rbrew_write32(cpu->mem, _t67, cpu->r[8]);
|
|
/* 022B8F3C */ _t68 = cpu->r[9] + 0x00000064u;
|
|
/* 022B8F3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022B8F40 */ _t69 = cpu->r[5] + 0x00004100u;
|
|
/* 022B8F40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022B8F44 */ _t70 = cpu->r[1] + 0x00000038u;
|
|
/* 022B8F44 */ rbrew_write32(cpu->mem, _t70, cpu->r[9]);
|
|
/* 022B8F48 */ _t71 = cpu->r[31] + 0x00000008u;
|
|
/* 022B8F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022B8F4C */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8F4C */ rbrew_write_f32(cpu->mem, _t72, cpu->f[31]);
|
|
/* 022B8F50 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8F50 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 022B8F54 */ /* nop */
|
|
/* 022B8F58 */ /* nop */
|
|
/* 022B8F5C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B8F60 */ _t74 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8F60 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[31]);
|
|
/* 022B8F64 */ /* nop */
|
|
/* 022B8F68 */ _t75 = cpu->r[12] + 0x00006000u;
|
|
/* 022B8F68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022B8F6C */ /* nop */
|
|
/* 022B8F70 */ _t76 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B8F70 */ rbrew_write32(cpu->mem, _t76, cpu->r[0]);
|
|
/* 022B8F74 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022B8F78 */ _t77 = cpu->r[12] + 0x00000274u;
|
|
/* 022B8F78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022B8F7C */ _t78 = cpu->r[11] + 0x00004FACu;
|
|
/* 022B8F7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B8F80 */ cpu->r[6] = cpu->r[3] + cpu->r[11];
|
|
/* 022B8F84 */ _t79 = cpu->r[6] + 0x00000104u;
|
|
/* 022B8F84 */ cpu->r[4] = rbrew_read8(cpu->mem, _t79);
|
|
/* 022B8F88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022B8F8C */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8F8C */ _t81 = _t80 & 0x00000001u;
|
|
/* 022B8F8C */ if (_t81) goto L_022B90A4; else goto L_022B8F90;
|
|
L_022B8F90: ; // 0x22b8f90
|
|
/* 022B8F90 */ goto L_022B9010;
|
|
L_022B8F94: ; // 0x22b8f94
|
|
/* 022B8F94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B8F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B8F98 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8F98 */ _t83 = _t82 & 0x00000001u;
|
|
/* 022B8F98 */ if (_t83) goto L_022B8FB0; else goto L_022B8F9C;
|
|
L_022B8F9C: ; // 0x22b8f9c
|
|
/* 022B8F9C */ _t84 = cpu->r[1] + 0x00000028u;
|
|
/* 022B8F9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022B8FA0 */ _t85 = cpu->r[9] + 0x0000015Cu;
|
|
/* 022B8FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 022B8FA4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 022B8FA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022B8FA8 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B8FA8 */ _t87 = _t86 & 0x00000001u;
|
|
/* 022B8FA8 */ if (_t87) goto L_022B8FB0; else goto L_022B8FAC;
|
|
L_022B8FAC: ; // 0x22b8fac
|
|
/* 022B8FAC */ cpu->r[31] = cpu->r[9] + 0x000000C0u;
|
|
L_022B8FB0: ; // 0x22b8fb0
|
|
/* 022B8FB0 */ _t88 = cpu->r[31] + 0x00000000u;
|
|
/* 022B8FB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022B8FB4 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B8FB8 */ _t89 = cpu->r[1] + 0x00000034u;
|
|
/* 022B8FB8 */ rbrew_write32(cpu->mem, _t89, cpu->r[8]);
|
|
/* 022B8FBC */ _t90 = cpu->r[31] + 0x00000004u;
|
|
/* 022B8FBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022B8FC0 */ _t91 = cpu->r[5] + 0x00004100u;
|
|
/* 022B8FC0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 022B8FC4 */ _t92 = cpu->r[1] + 0x00000038u;
|
|
/* 022B8FC4 */ rbrew_write32(cpu->mem, _t92, cpu->r[9]);
|
|
/* 022B8FC8 */ _t93 = cpu->r[31] + 0x00000008u;
|
|
/* 022B8FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022B8FCC */ _t94 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B8FCC */ rbrew_write_f32(cpu->mem, _t94, cpu->f[31]);
|
|
/* 022B8FD0 */ _t95 = cpu->r[1] + 0x00000010u;
|
|
/* 022B8FD0 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[0]);
|
|
/* 022B8FD4 */ /* nop */
|
|
/* 022B8FD8 */ /* nop */
|
|
/* 022B8FDC */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B8FE0 */ _t96 = cpu->r[1] + 0x00000014u;
|
|
/* 022B8FE0 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[31]);
|
|
/* 022B8FE4 */ /* nop */
|
|
/* 022B8FE8 */ _t97 = cpu->r[12] + 0x00006000u;
|
|
/* 022B8FE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022B8FEC */ /* nop */
|
|
/* 022B8FF0 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022B8FF4 */ _t98 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B8FF4 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 022B8FF8 */ _t99 = cpu->r[12] + 0x00000274u;
|
|
/* 022B8FF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022B8FFC */ _t100 = cpu->r[11] + 0x00004FACu;
|
|
/* 022B8FFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022B9000 */ cpu->r[6] = cpu->r[3] + cpu->r[11];
|
|
/* 022B9004 */ _t101 = cpu->r[6] + 0x00000104u;
|
|
/* 022B9004 */ cpu->r[4] = rbrew_read8(cpu->mem, _t101);
|
|
/* 022B9008 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022B900C */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B900C */ _t103 = _t102 & 0x00000001u;
|
|
/* 022B900C */ if (_t103) goto L_022B90A4; else goto L_022B9010;
|
|
L_022B9010: ; // 0x22b9010
|
|
/* 022B9010 */ cpu->r[7] = 0x101F0000u;
|
|
/* 022B9014 */ cpu->r[6] = cpu->r[1] + 0x00000034u;
|
|
/* 022B9018 */ cpu->r[7] = cpu->r[7] + 0x00006338u;
|
|
/* 022B901C */ cpu->r[5] = 0x00000001u;
|
|
/* 022B9020 */ Gambit_fn_021F000C(cpu);
|
|
/* 022B9024 */ cpu->r[28] = cpu->r[3];
|
|
/* 022B9024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022B9028 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9028 */ _t105 = _t104 & 0x00000001u;
|
|
/* 022B9028 */ if (_t105) goto L_022B90A4; else goto L_022B902C;
|
|
L_022B902C: ; // 0x22b902c
|
|
/* 022B902C */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B9030 */ Gambit_fn_021C7360(cpu);
|
|
/* 022B9034 */ _t106 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B9034 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[28]);
|
|
/* 022B9038 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B903C */ _t107 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022B903C */ rbrew_write_f32(cpu->mem, _t107, cpu->f[24]);
|
|
/* 022B9040 */ cpu->r[31] = 0xFFFFFFFFu;
|
|
/* 022B9044 */ _t108 = cpu->r[12] + 0x00004104u;
|
|
/* 022B9044 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 022B9048 */ _t109 = cpu->r[1] + 0x00000060u;
|
|
/* 022B9048 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[23]);
|
|
/* 022B904C */ _t110 = cpu->r[1] + 0x00000064u;
|
|
/* 022B904C */ rbrew_write_f32(cpu->mem, _t110, cpu->f[29]);
|
|
/* 022B9050 */ _t111 = cpu->r[1] + 0x00000068u;
|
|
/* 022B9050 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[29]);
|
|
/* 022B9054 */ cpu->r[3] = 0x101D0000u;
|
|
/* 022B9058 */ _t112 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B9058 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[26]);
|
|
/* 022B905C */ _t113 = cpu->r[1] + 0x00000070u;
|
|
/* 022B905C */ rbrew_write_f32(cpu->mem, _t113, cpu->f[30]);
|
|
/* 022B9060 */ _t114 = cpu->r[1] + 0x00000040u;
|
|
/* 022B9060 */ rbrew_write32(cpu->mem, _t114, cpu->r[31]);
|
|
/* 022B9064 */ _t115 = cpu->r[1] + 0x00000078u;
|
|
/* 022B9064 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[25]);
|
|
/* 022B9068 */ _t116 = cpu->r[1] + 0x00000074u;
|
|
/* 022B9068 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[30]);
|
|
/* 022B906C */ _t117 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022B906C */ cpu->r[3] = rbrew_read32(cpu->mem, _t117);
|
|
/* 022B9070 */ _t118 = cpu->r[1] + 0x00000080u;
|
|
/* 022B9070 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[27]);
|
|
/* 022B9074 */ _t119 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B9074 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[13]);
|
|
/* 022B9078 */ Gambit_fn_02830138(cpu);
|
|
/* 022B907C */ cpu->r[4] = cpu->r[29];
|
|
/* 022B9080 */ cpu->r[5] = cpu->r[30];
|
|
/* 022B9084 */ _t120 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9084 */ rbrew_write32(cpu->mem, _t120, cpu->r[3]);
|
|
/* 022B9088 */ cpu->r[10] = cpu->r[31];
|
|
/* 022B908C */ cpu->r[9] = cpu->r[1] + 0x00000040u;
|
|
/* 022B9090 */ cpu->r[8] = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B9094 */ cpu->r[7] = cpu->r[1] + 0x00000034u;
|
|
/* 022B9098 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B909C */ cpu->r[3] = cpu->r[28];
|
|
/* 022B90A0 */ Gambit_fn_021C777C(cpu);
|
|
L_022B90A4: ; // 0x22b90a4
|
|
/* 022B90A4 */ _t121 = cpu->r[1] + 0x000000D0u;
|
|
/* 022B90A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t121);
|
|
/* 022B90A8 */ _t122 = cpu->r[1] + 0x000000D4u;
|
|
/* 022B90A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t122);
|
|
/* 022B90AC */ _t123 = cpu->r[1] + 0x000000F8u;
|
|
/* 022B90AC */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 022B90B0 */ _t124 = cpu->r[1] + 0x000000E8u;
|
|
/* 022B90B0 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 022B90B4 */ _t125 = cpu->r[1] + 0x000000F0u;
|
|
/* 022B90B4 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t125);
|
|
/* 022B90B8 */ _t126 = cpu->r[1] + 0x00000108u;
|
|
/* 022B90B8 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 022B90BC */ _t127 = cpu->r[1] + 0x000000E0u;
|
|
/* 022B90BC */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t127);
|
|
/* 022B90C0 */ _t128 = cpu->r[1] + 0x00000100u;
|
|
/* 022B90C0 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t128);
|
|
/* 022B90C4 */ _t129 = cpu->r[1] + 0x00000118u;
|
|
/* 022B90C4 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 022B90C8 */ _t130 = cpu->r[1] + 0x00000128u;
|
|
/* 022B90C8 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 022B90CC */ _t131 = cpu->r[1] + 0x00000110u;
|
|
/* 022B90CC */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t131);
|
|
/* 022B90D0 */ _t132 = cpu->r[1] + 0x00000120u;
|
|
/* 022B90D0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t132);
|
|
/* 022B90D4 */ _t133 = cpu->r[1] + 0x00000138u;
|
|
/* 022B90D4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 022B90D8 */ _t134 = cpu->r[1] + 0x00000148u;
|
|
/* 022B90D8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 022B90DC */ _t135 = cpu->r[1] + 0x00000130u;
|
|
/* 022B90DC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t135);
|
|
/* 022B90E0 */ _t136 = cpu->r[1] + 0x00000140u;
|
|
/* 022B90E0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t136);
|
|
/* 022B90E4 */ _t137 = cpu->r[1] + 0x00000168u;
|
|
/* 022B90E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 022B90E8 */ _t138 = cpu->r[1] + 0x00000158u;
|
|
/* 022B90E8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 022B90EC */ _t139 = cpu->r[1] + 0x00000160u;
|
|
/* 022B90EC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 022B90F0 */ _t140 = cpu->r[1] + 0x00000150u;
|
|
/* 022B90F0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t140);
|
|
/* 022B90F4 */ _t141 = cpu->r[1] + 0x000000DCu;
|
|
/* 022B90F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t141);
|
|
/* 022B90F8 */ _t142 = cpu->r[1] + 0x000000D8u;
|
|
/* 022B90F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t142);
|
|
/* 022B90FC */ _t143 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B90FC */ _t144 = _t143 & 0x00000001u;
|
|
/* 022B90FC */ if (_t144) goto L_022B9100; // else: addr-0 trap, fall-through
|
|
L_022B9100: ; // 0x22b9100
|
|
/* 022B9100 */ _t145 = cpu->r[1] + 0x00000174u;
|
|
/* 022B9100 */ cpu->r[0] = rbrew_read32(cpu->mem, _t145);
|
|
/* 022B9104 */ cpu->lr = cpu->r[0];
|
|
/* 022B9108 */ cpu->r[1] = cpu->r[1] + 0x00000170u;
|
|
/* 022B910C */ return;
|
|
L_022B9110: ; // 0x22b9110
|
|
/* 022B9110 */ cpu->f[3] = cpu->f[2];
|
|
/* 022B9114 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B9118 */ cpu->f[2] = cpu->f[1];
|
|
/* 022B911C */ _t146 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022B911C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 022B9120 */ cpu->f[4] = cpu->f[1];
|
|
/* 022B9124 */ cpu->f[7] = cpu->f[6];
|
|
/* 022B9128 */ cpu->f[5] = cpu->f[3];
|
|
/* 022B912C */ cpu->f[8] = cpu->f[6];
|
|
/* 022B9130 */ goto L_022B8D4C;
|
|
}
|
|
|
|
// fn_022B9134 @ 0x22b9134
|
|
void Gambit_fn_022B9134(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_022B9134: ; // 0x22b9134
|
|
/* 022B9134 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 022B9134 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B9134 */ cpu->r[1] = _t0;
|
|
/* 022B9138 */ _t1 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B9138 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B913C */ cpu->r[0] = cpu->lr;
|
|
/* 022B9140 */ _t2 = cpu->r[1] + 0x00000080u;
|
|
/* 022B9140 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 022B9144 */ /* nop */
|
|
/* 022B9148 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 022B9148 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022B914C */ /* nop */
|
|
/* 022B9150 */ _t4 = cpu->r[1] + 0x00000088u;
|
|
/* 022B9150 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 022B9154 */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 022B9154 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 022B9158 */ _t6 = cpu->r[1] + 0x00000078u;
|
|
/* 022B9158 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 022B915C */ _t7 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B915C */ rbrew_write_f64(cpu->mem, _t7, cpu->f[31]);
|
|
/* 022B9160 */ _t8 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B9160 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022B9164 */ /* nop */
|
|
/* 022B9168 */ _t9 = cpu->r[1] + 0x00000098u;
|
|
/* 022B9168 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 022B916C */ cpu->r[11] = 0x101C0000u;
|
|
/* 022B9170 */ _t10 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B9170 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 022B9174 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B9178 */ _t11 = cpu->r[11] + 0x00006000u;
|
|
/* 022B9178 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B917C */ _t12 = cpu->r[12] + 0x00004FACu;
|
|
/* 022B917C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B9180 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B9184 */ _t13 = cpu->r[11] + 0x00000274u;
|
|
/* 022B9184 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B9188 */ cpu->r[10] = cpu->r[3] + cpu->r[12];
|
|
/* 022B918C */ cpu->f[31] = cpu->f[1];
|
|
/* 022B9190 */ _t14 = cpu->r[10] + 0x00000104u;
|
|
/* 022B9190 */ cpu->r[4] = rbrew_read8(cpu->mem, _t14);
|
|
/* 022B9194 */ cpu->f[30] = cpu->f[3];
|
|
/* 022B9198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022B919C */ cpu->f[29] = cpu->f[2];
|
|
/* 022B91A0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B91A0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B91A0 */ if (_t16) goto L_022B9240; else goto L_022B91A4;
|
|
L_022B91A4: ; // 0x22b91a4
|
|
/* 022B91A4 */ cpu->r[7] = 0x101F0000u;
|
|
/* 022B91A8 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B91AC */ cpu->r[7] = cpu->r[7] + 0x00006338u;
|
|
/* 022B91B0 */ cpu->r[6] = cpu->r[30];
|
|
/* 022B91B4 */ Gambit_fn_021F000C(cpu);
|
|
/* 022B91B8 */ cpu->r[29] = cpu->r[3];
|
|
/* 022B91B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B91BC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B91BC */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B91BC */ if (_t18) goto L_022B9240; else goto L_022B91C0;
|
|
L_022B91C0: ; // 0x22b91c0
|
|
/* 022B91C0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 022B91C4 */ Gambit_fn_021C7360(cpu);
|
|
/* 022B91C8 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B91C8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[31]);
|
|
/* 022B91CC */ cpu->r[7] = 0x10060000u;
|
|
/* 022B91D0 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 022B91D0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[30]);
|
|
/* 022B91D4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B91D8 */ _t21 = cpu->r[7] + 0x00004104u;
|
|
/* 022B91D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B91DC */ _t22 = cpu->r[9] + 0x0000402Cu;
|
|
/* 022B91DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B91E0 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022B91E0 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[30]);
|
|
/* 022B91E4 */ _t24 = cpu->r[1] + 0x00000048u;
|
|
/* 022B91E4 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 022B91E8 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 022B91E8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[31]);
|
|
/* 022B91EC */ cpu->r[3] = 0x101D0000u;
|
|
/* 022B91F0 */ _t26 = cpu->r[1] + 0x00000040u;
|
|
/* 022B91F0 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 022B91F4 */ _t27 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022B91F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B91F8 */ _t28 = cpu->r[1] + 0x00000050u;
|
|
/* 022B91F8 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[31]);
|
|
/* 022B91FC */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B91FC */ rbrew_write_f32(cpu->mem, _t29, cpu->f[29]);
|
|
/* 022B9200 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 022B9200 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[30]);
|
|
/* 022B9204 */ cpu->r[31] = 0xFFFFFFFFu;
|
|
/* 022B9208 */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 022B9208 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[31]);
|
|
/* 022B920C */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B920C */ rbrew_write32(cpu->mem, _t32, cpu->r[31]);
|
|
/* 022B9210 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9210 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 022B9214 */ Gambit_fn_02830138(cpu);
|
|
/* 022B9218 */ cpu->r[7] = cpu->r[30];
|
|
/* 022B921C */ cpu->r[5] = 0x00000001u;
|
|
/* 022B9220 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9220 */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 022B9224 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B9228 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B922C */ cpu->r[10] = cpu->r[31];
|
|
/* 022B9230 */ cpu->r[6] = cpu->r[4];
|
|
/* 022B9234 */ cpu->r[8] = cpu->r[1] + 0x00000010u;
|
|
/* 022B9238 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B923C */ Gambit_fn_021C777C(cpu);
|
|
L_022B9240: ; // 0x22b9240
|
|
/* 022B9240 */ _t35 = cpu->r[1] + 0x00000074u;
|
|
/* 022B9240 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B9244 */ _t36 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B9244 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B9248 */ _t37 = cpu->r[1] + 0x00000088u;
|
|
/* 022B9248 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B924C */ _t38 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B924C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t38);
|
|
/* 022B9250 */ _t39 = cpu->r[1] + 0x00000098u;
|
|
/* 022B9250 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022B9254 */ _t40 = cpu->r[1] + 0x00000080u;
|
|
/* 022B9254 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t40);
|
|
/* 022B9258 */ _t41 = cpu->r[1] + 0x00000090u;
|
|
/* 022B9258 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 022B925C */ _t42 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022B925C */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B9260 */ _t43 = cpu->r[1] + 0x00000078u;
|
|
/* 022B9260 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B9264 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B9264 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022B9264 */ if (_t45) goto L_022B9268; // else: addr-0 trap, fall-through
|
|
L_022B9268: ; // 0x22b9268
|
|
/* 022B9268 */ _t46 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B9268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022B926C */ cpu->lr = cpu->r[0];
|
|
/* 022B9270 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 022B9274 */ return;
|
|
}
|
|
|
|
// fn_022B9278 @ 0x22b9278
|
|
void Gambit_fn_022B9278(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
double _ft23, _ft24;
|
|
|
|
L_022B9278: ; // 0x22b9278
|
|
/* 022B9278 */ cpu->r[0] = cpu->lr;
|
|
/* 022B927C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022B927C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B927C */ cpu->r[1] = _t0;
|
|
/* 022B9280 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B9280 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B9284 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 022B9284 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B9288 */ /* nop */
|
|
/* 022B928C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B9290 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9290 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022B9294 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022B9298 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 022B9298 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B929C */ _t5 = cpu->r[3] + 0x00000E14u;
|
|
/* 022B929C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B92A0 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B92A4 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 022B92A8 */ Gambit_fn_02014444(cpu);
|
|
/* 022B92AC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022B92B0 */ Gambit_fn_0200EF78(cpu);
|
|
/* 022B92B4 */ /* nop */
|
|
/* 022B92B8 */ /* nop */
|
|
/* 022B92BC */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 022B92BC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B92C0 */ /* nop */
|
|
/* 022B92C4 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 022B92C4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B92C8 */ /* nop */
|
|
/* 022B92CC */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 022B92CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B92D0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B92D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B92D4 */ cpu->f[0] = cpu->f[9] - cpu->f[10];
|
|
/* 022B92D8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B92D8 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 022B92DC */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B92DC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B92E0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022B92E0 */ rbrew_write32(cpu->mem, _t12, cpu->r[6]);
|
|
/* 022B92E4 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B92E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B92E8 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 022B92EC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B92EC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 022B92F0 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B92F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B92F4 */ cpu->f[12] = fma(cpu->f[8], cpu->f[8], cpu->f[11]);
|
|
/* 022B92F8 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 022B92F8 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 022B92FC */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022B92FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B9300 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B9304 */ cpu->f[11] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 022B9308 */ _t18 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022B9308 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B930C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B9310 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022B9314 */ _t19 = cpu->r[11] + 0x00004028u;
|
|
/* 022B9314 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B9318 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9318 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B9318 */ if (_t21) goto L_022B931C; else goto L_022B9350;
|
|
L_022B931C: ; // 0x22b931c
|
|
/* 022B931C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B9320 */ _t22 = cpu->r[10] + 0x00004030u;
|
|
/* 022B9320 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B9324 */ _ft23 = sqrt(cpu->f[11]);
|
|
/* 022B9324 */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 022B9324 */ cpu->f[10] = _ft24 / _ft23;
|
|
/* 022B9328 */ cpu->f[12] = cpu->f[10] * cpu->f[10];
|
|
/* 022B932C */ cpu->f[8] = cpu->f[10] * cpu->f[31];
|
|
/* 022B9330 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[11], -(cpu->f[13]));
|
|
/* 022B9334 */ cpu->f[10] = cpu->f[12] * cpu->f[8];
|
|
/* 022B9338 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9338 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B933C */ /* nop */
|
|
/* 022B9340 */ cpu->f[13] = cpu->f[13] * cpu->f[10];
|
|
/* 022B9344 */ /* nop */
|
|
/* 022B9348 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9348 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 022B934C */ /* nop */
|
|
L_022B9350: ; // 0x22b9350
|
|
/* 022B9350 */ _t27 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B9350 */ cpu->r[0] = rbrew_read8(cpu->mem, _t27);
|
|
/* 022B9354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B9358 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9358 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022B9358 */ if (_t29) goto L_022B938C; else goto L_022B935C;
|
|
L_022B935C: ; // 0x22b935c
|
|
/* 022B935C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9360 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 022B9364 */ Gambit_fn_0204E7A8(cpu);
|
|
/* 022B9368 */ _t30 = cpu->r[31] + 0x00000018u;
|
|
/* 022B9368 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B936C */ cpu->r[7] = 0x10060000u;
|
|
/* 022B9370 */ cpu->f[11] = cpu->f[0] * cpu->f[31];
|
|
/* 022B9374 */ _t31 = cpu->r[7] + 0x0000409Cu;
|
|
/* 022B9374 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B9378 */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 022B937C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 022B9380 */ /* nop */
|
|
/* 022B9384 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B9388 */ goto L_022B93D0;
|
|
L_022B938C: ; // 0x22b938c
|
|
/* 022B938C */ _t32 = cpu->r[1] + 0x00000020u;
|
|
/* 022B938C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B9390 */ _t33 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9390 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B9394 */ cpu->f[9] = cpu->f[0] * cpu->f[13];
|
|
/* 022B9398 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9398 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B939C */ cpu->f[10] = cpu->f[12] * cpu->f[13];
|
|
/* 022B93A0 */ cpu->f[1] = fma(cpu->f[12], cpu->f[8], -(cpu->f[9]));
|
|
/* 022B93A4 */ cpu->f[2] = fma(cpu->f[0], cpu->f[8], cpu->f[10]);
|
|
/* 022B93A8 */ Gambit_fn_02C89074(cpu);
|
|
/* 022B93AC */ _t35 = cpu->r[31] + 0x00000018u;
|
|
/* 022B93AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B93B0 */ cpu->f[1] = fabs(cpu->f[1]);
|
|
/* 022B93B4 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B93B8 */ cpu->f[11] = cpu->f[0] * cpu->f[31];
|
|
/* 022B93BC */ _t36 = cpu->r[7] + 0x0000409Cu;
|
|
/* 022B93BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B93C0 */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 022B93C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 022B93C8 */ /* nop */
|
|
/* 022B93CC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
L_022B93D0: ; // 0x22b93d0
|
|
/* 022B93D0 */ _t37 = cpu->r[1] + 0x00000038u;
|
|
/* 022B93D0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B93D4 */ _t38 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B93D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B93D8 */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 022B93D8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 022B93DC */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B93DC */ _t41 = _t40 & 0x00000001u;
|
|
/* 022B93DC */ if (_t41) goto L_022B93E0; // else: addr-0 trap, fall-through
|
|
L_022B93E0: ; // 0x22b93e0
|
|
/* 022B93E0 */ _t42 = cpu->r[1] + 0x00000044u;
|
|
/* 022B93E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B93E4 */ cpu->lr = cpu->r[0];
|
|
/* 022B93E8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B93EC */ return;
|
|
}
|
|
|
|
// fn_022B927C @ 0x22b927c
|
|
void Gambit_fn_022B927C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
double _ft23, _ft24;
|
|
|
|
L_022B927C: ; // 0x22b927c
|
|
/* 022B927C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022B927C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B927C */ cpu->r[1] = _t0;
|
|
/* 022B9280 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B9280 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B9284 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 022B9284 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B9288 */ /* nop */
|
|
/* 022B928C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B9290 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9290 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022B9294 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022B9298 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 022B9298 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B929C */ _t5 = cpu->r[3] + 0x00000E14u;
|
|
/* 022B929C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B92A0 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B92A4 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 022B92A8 */ Gambit_fn_02014444(cpu);
|
|
/* 022B92AC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022B92B0 */ Gambit_fn_0200EF78(cpu);
|
|
/* 022B92B4 */ /* nop */
|
|
/* 022B92B8 */ /* nop */
|
|
/* 022B92BC */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 022B92BC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B92C0 */ /* nop */
|
|
/* 022B92C4 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 022B92C4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B92C8 */ /* nop */
|
|
/* 022B92CC */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 022B92CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B92D0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B92D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B92D4 */ cpu->f[0] = cpu->f[9] - cpu->f[10];
|
|
/* 022B92D8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B92D8 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 022B92DC */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B92DC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022B92E0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022B92E0 */ rbrew_write32(cpu->mem, _t12, cpu->r[6]);
|
|
/* 022B92E4 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B92E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B92E8 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 022B92EC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B92EC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 022B92F0 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B92F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B92F4 */ cpu->f[12] = fma(cpu->f[8], cpu->f[8], cpu->f[11]);
|
|
/* 022B92F8 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 022B92F8 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 022B92FC */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022B92FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B9300 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B9304 */ cpu->f[11] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 022B9308 */ _t18 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022B9308 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B930C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B9310 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022B9314 */ _t19 = cpu->r[11] + 0x00004028u;
|
|
/* 022B9314 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B9318 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9318 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B9318 */ if (_t21) goto L_022B931C; else goto L_022B9350;
|
|
L_022B931C: ; // 0x22b931c
|
|
/* 022B931C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B9320 */ _t22 = cpu->r[10] + 0x00004030u;
|
|
/* 022B9320 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B9324 */ _ft23 = sqrt(cpu->f[11]);
|
|
/* 022B9324 */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 022B9324 */ cpu->f[10] = _ft24 / _ft23;
|
|
/* 022B9328 */ cpu->f[12] = cpu->f[10] * cpu->f[10];
|
|
/* 022B932C */ cpu->f[8] = cpu->f[10] * cpu->f[31];
|
|
/* 022B9330 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[11], -(cpu->f[13]));
|
|
/* 022B9334 */ cpu->f[10] = cpu->f[12] * cpu->f[8];
|
|
/* 022B9338 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9338 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B933C */ /* nop */
|
|
/* 022B9340 */ cpu->f[13] = cpu->f[13] * cpu->f[10];
|
|
/* 022B9344 */ /* nop */
|
|
/* 022B9348 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9348 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 022B934C */ /* nop */
|
|
L_022B9350: ; // 0x22b9350
|
|
/* 022B9350 */ _t27 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B9350 */ cpu->r[0] = rbrew_read8(cpu->mem, _t27);
|
|
/* 022B9354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B9358 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9358 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022B9358 */ if (_t29) goto L_022B938C; else goto L_022B935C;
|
|
L_022B935C: ; // 0x22b935c
|
|
/* 022B935C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9360 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 022B9364 */ Gambit_fn_0204E7A8(cpu);
|
|
/* 022B9368 */ _t30 = cpu->r[31] + 0x00000018u;
|
|
/* 022B9368 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B936C */ cpu->r[7] = 0x10060000u;
|
|
/* 022B9370 */ cpu->f[11] = cpu->f[0] * cpu->f[31];
|
|
/* 022B9374 */ _t31 = cpu->r[7] + 0x0000409Cu;
|
|
/* 022B9374 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B9378 */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 022B937C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 022B9380 */ /* nop */
|
|
/* 022B9384 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B9388 */ goto L_022B93D0;
|
|
L_022B938C: ; // 0x22b938c
|
|
/* 022B938C */ _t32 = cpu->r[1] + 0x00000020u;
|
|
/* 022B938C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B9390 */ _t33 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9390 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B9394 */ cpu->f[9] = cpu->f[0] * cpu->f[13];
|
|
/* 022B9398 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9398 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B939C */ cpu->f[10] = cpu->f[12] * cpu->f[13];
|
|
/* 022B93A0 */ cpu->f[1] = fma(cpu->f[12], cpu->f[8], -(cpu->f[9]));
|
|
/* 022B93A4 */ cpu->f[2] = fma(cpu->f[0], cpu->f[8], cpu->f[10]);
|
|
/* 022B93A8 */ Gambit_fn_02C89074(cpu);
|
|
/* 022B93AC */ _t35 = cpu->r[31] + 0x00000018u;
|
|
/* 022B93AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B93B0 */ cpu->f[1] = fabs(cpu->f[1]);
|
|
/* 022B93B4 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B93B8 */ cpu->f[11] = cpu->f[0] * cpu->f[31];
|
|
/* 022B93BC */ _t36 = cpu->r[7] + 0x0000409Cu;
|
|
/* 022B93BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B93C0 */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 022B93C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 022B93C8 */ /* nop */
|
|
/* 022B93CC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
L_022B93D0: ; // 0x22b93d0
|
|
/* 022B93D0 */ _t37 = cpu->r[1] + 0x00000038u;
|
|
/* 022B93D0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B93D4 */ _t38 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B93D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022B93D8 */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 022B93D8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 022B93DC */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B93DC */ _t41 = _t40 & 0x00000001u;
|
|
/* 022B93DC */ if (_t41) goto L_022B93E0; // else: addr-0 trap, fall-through
|
|
L_022B93E0: ; // 0x22b93e0
|
|
/* 022B93E0 */ _t42 = cpu->r[1] + 0x00000044u;
|
|
/* 022B93E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B93E4 */ cpu->lr = cpu->r[0];
|
|
/* 022B93E8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B93EC */ return;
|
|
}
|
|
|
|
// fn_022B93F0 @ 0x22b93f0
|
|
void Gambit_fn_022B93F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _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_022B93F0: ; // 0x22b93f0
|
|
/* 022B93F0 */ cpu->r[0] = cpu->lr;
|
|
/* 022B93F4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022B93F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B93F4 */ cpu->r[1] = _t0;
|
|
/* 022B93F8 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 022B93F8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B93FC */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B93FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B9400 */ /* nop */
|
|
/* 022B9404 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9404 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022B9408 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9408 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022B940C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B9410 */ _t5 = cpu->r[1] + 0x00000044u;
|
|
/* 022B9410 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022B9414 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 022B9414 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B9418 */ _t7 = cpu->r[12] + 0x00000268u;
|
|
/* 022B9418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B941C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B9420 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B9424 */ cpu->f[31] = cpu->f[1];
|
|
/* 022B9428 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B942C */ cpu->r[4] = cpu->r[3];
|
|
/* 022B9430 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B9434 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B9438 */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 022B9438 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B943C */ _t9 = cpu->r[30] + 0x00000008u;
|
|
/* 022B943C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B9440 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9440 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 022B9444 */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 022B9444 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B9448 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9448 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 022B944C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B944C */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 022B9450 */ _t14 = cpu->r[3] + 0x00000244u;
|
|
/* 022B9450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B9454 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9454 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022B9458 */ _t16 = cpu->r[3] + 0x00000248u;
|
|
/* 022B9458 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B945C */ cpu->r[0] = 0x00000000u;
|
|
/* 022B9460 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 022B9460 */ rbrew_write32(cpu->mem, _t17, cpu->r[7]);
|
|
/* 022B9464 */ _t18 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B9464 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B9468 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 022B9468 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
/* 022B946C */ cpu->r[9] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9470 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9470 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 022B9474 */ cpu->r[3] = cpu->r[9];
|
|
/* 022B9478 */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 022B9478 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[31]);
|
|
/* 022B947C */ Gambit_fn_022B9278(cpu);
|
|
/* 022B9480 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9480 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B9484 */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9484 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B9488 */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 022B9488 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 022B948C */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B948C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B9490 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B9490 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B9490 */ if (_t27) goto L_022B9494; // else: addr-0 trap, fall-through
|
|
L_022B9494: ; // 0x22b9494
|
|
/* 022B9494 */ _t28 = cpu->r[1] + 0x00000044u;
|
|
/* 022B9494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B9498 */ cpu->lr = cpu->r[0];
|
|
/* 022B949C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B94A0 */ return;
|
|
}
|
|
|
|
// fn_022B93F4 @ 0x22b93f4
|
|
void Gambit_fn_022B93F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _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_022B93F4: ; // 0x22b93f4
|
|
/* 022B93F4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022B93F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B93F4 */ cpu->r[1] = _t0;
|
|
/* 022B93F8 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 022B93F8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B93FC */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B93FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B9400 */ /* nop */
|
|
/* 022B9404 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9404 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022B9408 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9408 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022B940C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B9410 */ _t5 = cpu->r[1] + 0x00000044u;
|
|
/* 022B9410 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022B9414 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 022B9414 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B9418 */ _t7 = cpu->r[12] + 0x00000268u;
|
|
/* 022B9418 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B941C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B9420 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B9424 */ cpu->f[31] = cpu->f[1];
|
|
/* 022B9428 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B942C */ cpu->r[4] = cpu->r[3];
|
|
/* 022B9430 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B9434 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B9438 */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 022B9438 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B943C */ _t9 = cpu->r[30] + 0x00000008u;
|
|
/* 022B943C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B9440 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9440 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 022B9444 */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 022B9444 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B9448 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9448 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 022B944C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B944C */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 022B9450 */ _t14 = cpu->r[3] + 0x00000244u;
|
|
/* 022B9450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B9454 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9454 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022B9458 */ _t16 = cpu->r[3] + 0x00000248u;
|
|
/* 022B9458 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B945C */ cpu->r[0] = 0x00000000u;
|
|
/* 022B9460 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 022B9460 */ rbrew_write32(cpu->mem, _t17, cpu->r[7]);
|
|
/* 022B9464 */ _t18 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B9464 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B9468 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 022B9468 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
/* 022B946C */ cpu->r[9] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9470 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9470 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 022B9474 */ cpu->r[3] = cpu->r[9];
|
|
/* 022B9478 */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 022B9478 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[31]);
|
|
/* 022B947C */ Gambit_fn_022B9278(cpu);
|
|
/* 022B9480 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9480 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B9484 */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9484 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B9488 */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 022B9488 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 022B948C */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B948C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B9490 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B9490 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B9490 */ if (_t27) goto L_022B9494; // else: addr-0 trap, fall-through
|
|
L_022B9494: ; // 0x22b9494
|
|
/* 022B9494 */ _t28 = cpu->r[1] + 0x00000044u;
|
|
/* 022B9494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B9498 */ cpu->lr = cpu->r[0];
|
|
/* 022B949C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B94A0 */ return;
|
|
}
|
|
|
|
// fn_022B94A4 @ 0x22b94a4
|
|
void Gambit_fn_022B94A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _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;
|
|
double _ft31, _ft32, _ft54, _ft55, _ft64, _ft65;
|
|
|
|
L_022B94A4: ; // 0x22b94a4
|
|
/* 022B94A4 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 022B94A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B94A4 */ cpu->r[1] = _t0;
|
|
/* 022B94A8 */ _t1 = cpu->r[1] + 0x00000090u;
|
|
/* 022B94A8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022B94AC */ cpu->r[0] = cpu->lr;
|
|
/* 022B94B0 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 022B94B0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 022B94B4 */ /* nop */
|
|
/* 022B94B8 */ _t3 = cpu->r[1] + 0x00000070u;
|
|
/* 022B94B8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[28]);
|
|
/* 022B94BC */ /* nop */
|
|
/* 022B94C0 */ _t4 = cpu->r[1] + 0x00000068u;
|
|
/* 022B94C0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[27]);
|
|
/* 022B94C4 */ /* nop */
|
|
/* 022B94C8 */ _t5 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B94C8 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022B94CC */ _t6 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B94CC */ rbrew_write_f64(cpu->mem, _t6, cpu->f[31]);
|
|
/* 022B94D0 */ _t7 = cpu->r[1] + 0x00000080u;
|
|
/* 022B94D0 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[29]);
|
|
/* 022B94D4 */ /* nop */
|
|
/* 022B94D8 */ _t8 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B94D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022B94DC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B94E0 */ _t9 = cpu->r[1] + 0x00000078u;
|
|
/* 022B94E0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[28]);
|
|
/* 022B94E4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022B94E8 */ _t10 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B94E8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 022B94EC */ _t11 = cpu->r[1] + 0x00000098u;
|
|
/* 022B94EC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[30]);
|
|
/* 022B94F0 */ /* nop */
|
|
/* 022B94F4 */ _t12 = cpu->r[1] + 0x00000088u;
|
|
/* 022B94F4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[29]);
|
|
/* 022B94F8 */ _t13 = cpu->r[3] + 0x00000E14u;
|
|
/* 022B94F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B94FC */ cpu->r[4] = 0x00000000u;
|
|
/* 022B9500 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 022B9504 */ Gambit_fn_02014444(cpu);
|
|
/* 022B9508 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 022B950C */ Gambit_fn_0200EF78(cpu);
|
|
/* 022B9510 */ _t14 = cpu->r[31] + 0x00000018u;
|
|
/* 022B9510 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B9514 */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B9514 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022B9518 */ /* nop */
|
|
/* 022B951C */ cpu->f[9] = cpu->f[11] - cpu->f[13];
|
|
/* 022B9520 */ /* nop */
|
|
/* 022B9524 */ /* nop */
|
|
/* 022B9528 */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9528 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[9]);
|
|
/* 022B952C */ _t17 = cpu->r[1] + 0x00000028u;
|
|
/* 022B952C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B9530 */ /* nop */
|
|
/* 022B9534 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 022B9534 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B9538 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 022B9538 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B953C */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 022B953C */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 022B9540 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 022B9540 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B9544 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9544 */ rbrew_write32(cpu->mem, _t22, cpu->r[9]);
|
|
/* 022B9548 */ cpu->f[9] = cpu->f[11] * cpu->f[11];
|
|
/* 022B954C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022B954C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B9550 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9550 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 022B9554 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B9558 */ cpu->f[11] = fma(cpu->f[27], cpu->f[27], cpu->f[9]);
|
|
/* 022B955C */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B955C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B9560 */ _t26 = cpu->r[11] + 0x0000402Cu;
|
|
/* 022B9560 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B9564 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B9568 */ cpu->f[10] = fma(cpu->f[31], cpu->f[31], cpu->f[11]);
|
|
/* 022B956C */ _t27 = cpu->r[10] + 0x00004028u;
|
|
/* 022B956C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B9570 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B9574 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[29]);
|
|
/* 022B9578 */ _t28 = cpu->r[9] + 0x00004030u;
|
|
/* 022B9578 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B957C */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B957C */ _t30 = _t29 & 0x00000001u;
|
|
/* 022B957C */ if (_t30) goto L_022B9580; else goto L_022B95B0;
|
|
L_022B9580: ; // 0x22b9580
|
|
/* 022B9580 */ _ft31 = sqrt(cpu->f[10]);
|
|
/* 022B9580 */ _ft32 = (double)(int32_t)0x00000001u;
|
|
/* 022B9580 */ cpu->f[12] = _ft32 / _ft31;
|
|
/* 022B9584 */ cpu->f[0] = cpu->f[12] * cpu->f[12];
|
|
/* 022B9588 */ cpu->f[7] = cpu->f[12] * cpu->f[28];
|
|
/* 022B958C */ cpu->f[0] = -fma(cpu->f[0], cpu->f[10], -(cpu->f[30]));
|
|
/* 022B9590 */ cpu->f[12] = cpu->f[0] * cpu->f[7];
|
|
/* 022B9594 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9594 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022B9598 */ /* nop */
|
|
/* 022B959C */ cpu->f[31] = cpu->f[31] * cpu->f[12];
|
|
/* 022B95A0 */ /* nop */
|
|
/* 022B95A4 */ /* nop */
|
|
/* 022B95A8 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 022B95A8 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B95AC */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B95AC */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
L_022B95B0: ; // 0x22b95b0
|
|
/* 022B95B0 */ _t36 = cpu->r[1] + 0x00000044u;
|
|
/* 022B95B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B95B4 */ _t37 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B95B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B95B8 */ cpu->f[0] = cpu->f[12] * cpu->f[31];
|
|
/* 022B95BC */ cpu->f[9] = cpu->f[10] * cpu->f[31];
|
|
/* 022B95C0 */ cpu->f[1] = fma(cpu->f[10], cpu->f[27], -(cpu->f[0]));
|
|
/* 022B95C4 */ cpu->f[2] = fma(cpu->f[12], cpu->f[27], cpu->f[9]);
|
|
/* 022B95C8 */ Gambit_fn_02C89074(cpu);
|
|
/* 022B95CC */ _t38 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022B95CC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022B95D0 */ cpu->f[8] = fabs(cpu->f[1]);
|
|
/* 022B95D4 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B95D8 */ cpu->f[13] = cpu->f[7] * cpu->f[28];
|
|
/* 022B95DC */ _t39 = cpu->r[8] + 0x0000409Cu;
|
|
/* 022B95DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022B95E0 */ cpu->f[11] = cpu->f[13] * cpu->f[0];
|
|
/* 022B95E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[11]);
|
|
/* 022B95E8 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B95E8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 022B95E8 */ if (_t41) goto L_022B95EC; else goto L_022B960C;
|
|
L_022B95EC: ; // 0x22b95ec
|
|
/* 022B95EC */ cpu->f[9] = cpu->f[31] * cpu->f[31];
|
|
/* 022B95F0 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B95F0 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[29]);
|
|
/* 022B95F4 */ cpu->f[10] = fma(cpu->f[27], cpu->f[27], cpu->f[9]);
|
|
/* 022B95F8 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 022B95F8 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[27]);
|
|
/* 022B95FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[29]);
|
|
/* 022B9600 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9600 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[31]);
|
|
/* 022B9604 */ _t45 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9604 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022B9604 */ if (_t46) goto L_022B9608; else goto L_022B9678;
|
|
L_022B9608: ; // 0x22b9608
|
|
/* 022B9608 */ goto L_022B964C;
|
|
L_022B960C: ; // 0x22b960c
|
|
/* 022B960C */ cpu->r[10] = 0x10060000u;
|
|
/* 022B9610 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B9614 */ _t47 = cpu->r[10] + 0x00004108u;
|
|
/* 022B9614 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022B9618 */ _t48 = cpu->r[8] + 0x00004094u;
|
|
/* 022B9618 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022B961C */ /* nop */
|
|
/* 022B9620 */ cpu->f[1] = cpu->f[8] * cpu->f[11];
|
|
/* 022B9624 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9628 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 022B962C */ Gambit_fn_0204EFD8(cpu);
|
|
/* 022B9630 */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9630 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B9634 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9634 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B9638 */ cpu->f[9] = cpu->f[31] * cpu->f[31];
|
|
/* 022B963C */ cpu->f[10] = fma(cpu->f[27], cpu->f[27], cpu->f[9]);
|
|
/* 022B9640 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[29]);
|
|
/* 022B9644 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9644 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[29]);
|
|
/* 022B9648 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9648 */ _t53 = _t52 & 0x00000001u;
|
|
/* 022B9648 */ if (_t53) goto L_022B964C; else goto L_022B9678;
|
|
L_022B964C: ; // 0x22b964c
|
|
/* 022B964C */ _ft54 = sqrt(cpu->f[10]);
|
|
/* 022B964C */ _ft55 = (double)(int32_t)0x00000001u;
|
|
/* 022B964C */ cpu->f[12] = _ft55 / _ft54;
|
|
/* 022B9650 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 022B9654 */ cpu->f[7] = cpu->f[12] * cpu->f[28];
|
|
/* 022B9658 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[30]));
|
|
/* 022B965C */ cpu->f[12] = cpu->f[13] * cpu->f[7];
|
|
/* 022B9660 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9660 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022B9664 */ /* nop */
|
|
/* 022B9668 */ cpu->f[31] = cpu->f[31] * cpu->f[12];
|
|
/* 022B966C */ /* nop */
|
|
/* 022B9670 */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9670 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 022B9674 */ /* nop */
|
|
L_022B9678: ; // 0x22b9678
|
|
/* 022B9678 */ _t58 = cpu->r[31] + 0x00000018u;
|
|
/* 022B9678 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022B967C */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B967C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022B9680 */ _t60 = cpu->r[31] + 0x00000010u;
|
|
/* 022B9680 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022B9684 */ cpu->f[11] = cpu->f[0] - cpu->f[7];
|
|
/* 022B9688 */ _t61 = cpu->r[31] + 0x00000004u;
|
|
/* 022B9688 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022B968C */ cpu->f[10] = cpu->f[12] - cpu->f[13];
|
|
/* 022B9690 */ cpu->f[8] = cpu->f[11] * cpu->f[11];
|
|
/* 022B9694 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[8]);
|
|
/* 022B9698 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[29]);
|
|
/* 022B969C */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B969C */ _t63 = _t62 & 0x00000001u;
|
|
/* 022B969C */ if (_t63) goto L_022B96A0; else goto L_022B96B8;
|
|
L_022B96A0: ; // 0x22b96a0
|
|
/* 022B96A0 */ _ft64 = sqrt(cpu->f[9]);
|
|
/* 022B96A0 */ _ft65 = (double)(int32_t)0x00000001u;
|
|
/* 022B96A0 */ cpu->f[29] = _ft65 / _ft64;
|
|
/* 022B96A4 */ cpu->f[7] = cpu->f[29] * cpu->f[29];
|
|
/* 022B96A8 */ cpu->f[8] = cpu->f[29] * cpu->f[28];
|
|
/* 022B96AC */ cpu->f[7] = -fma(cpu->f[7], cpu->f[9], -(cpu->f[30]));
|
|
/* 022B96B0 */ cpu->f[29] = cpu->f[7] * cpu->f[8];
|
|
/* 022B96B4 */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 022B96B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t66);
|
|
L_022B96B8: ; // 0x22b96b8
|
|
/* 022B96B8 */ cpu->f[11] = cpu->f[29] * cpu->f[9];
|
|
/* 022B96BC */ _t67 = cpu->r[31] + 0x00000020u;
|
|
/* 022B96BC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022B96C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 022B96C4 */ _t68 = cpu->r[31] + 0x00000024u;
|
|
/* 022B96C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022B96C8 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B96C8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 022B96C8 */ if (_t70) goto L_022B96CC; else goto L_022B973C;
|
|
L_022B96CC: ; // 0x22b96cc
|
|
/* 022B96CC */ cpu->f[11] = cpu->f[10];
|
|
/* 022B96D0 */ /* nop */
|
|
/* 022B96D4 */ /* nop */
|
|
/* 022B96D8 */ /* nop */
|
|
/* 022B96DC */ /* nop */
|
|
/* 022B96E0 */ _t71 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B96E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022B96E4 */ cpu->f[11] = cpu->f[31] * cpu->f[11];
|
|
/* 022B96E8 */ _t72 = cpu->r[1] + 0x00000030u;
|
|
/* 022B96E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022B96EC */ _t73 = cpu->r[31] + 0x00000018u;
|
|
/* 022B96EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 022B96F0 */ _t74 = cpu->r[1] + 0x00000034u;
|
|
/* 022B96F0 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[11]);
|
|
/* 022B96F4 */ _t75 = cpu->r[1] + 0x00000034u;
|
|
/* 022B96F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022B96F8 */ _t76 = cpu->r[1] + 0x00000054u;
|
|
/* 022B96F8 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 022B96FC */ _t77 = cpu->r[1] + 0x00000050u;
|
|
/* 022B96FC */ rbrew_write32(cpu->mem, _t77, cpu->r[9]);
|
|
/* 022B9700 */ /* nop */
|
|
/* 022B9704 */ _t78 = cpu->r[1] + 0x00000058u;
|
|
/* 022B9704 */ rbrew_write32(cpu->mem, _t78, cpu->r[0]);
|
|
/* 022B9708 */ _t79 = cpu->r[1] + 0x00000058u;
|
|
/* 022B9708 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022B970C */ /* nop */
|
|
/* 022B9710 */ _t80 = cpu->r[31] + 0x00000000u;
|
|
/* 022B9710 */ cpu->r[11] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022B9714 */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 022B9718 */ /* nop */
|
|
/* 022B971C */ _t81 = cpu->r[1] + 0x00000038u;
|
|
/* 022B971C */ cpu->r[8] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022B9720 */ _t82 = cpu->r[1] + 0x00000040u;
|
|
/* 022B9720 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[8]);
|
|
/* 022B9724 */ _t83 = cpu->r[11] + 0x00000000u;
|
|
/* 022B9724 */ rbrew_write32(cpu->mem, _t83, cpu->r[8]);
|
|
/* 022B9728 */ _t84 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B9728 */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022B972C */ _t85 = cpu->r[11] + 0x00000004u;
|
|
/* 022B972C */ rbrew_write32(cpu->mem, _t85, cpu->r[9]);
|
|
/* 022B9730 */ _t86 = cpu->r[1] + 0x00000040u;
|
|
/* 022B9730 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022B9734 */ _t87 = cpu->r[11] + 0x00000008u;
|
|
/* 022B9734 */ rbrew_write32(cpu->mem, _t87, cpu->r[0]);
|
|
/* 022B9738 */ goto L_022B97B0;
|
|
L_022B973C: ; // 0x22b973c
|
|
/* 022B973C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 022B9740 */ _t88 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9740 */ _t89 = _t88 & 0x00000001u;
|
|
/* 022B9740 */ if (_t89) goto L_022B9744; else goto L_022B9748;
|
|
L_022B9744: ; // 0x22b9744
|
|
/* 022B9744 */ cpu->f[11] = cpu->f[12];
|
|
L_022B9748: ; // 0x22b9748
|
|
/* 022B9748 */ /* nop */
|
|
/* 022B974C */ /* nop */
|
|
/* 022B9750 */ /* nop */
|
|
/* 022B9754 */ /* nop */
|
|
/* 022B9758 */ _t90 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B9758 */ cpu->r[9] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022B975C */ cpu->f[11] = cpu->f[31] * cpu->f[11];
|
|
/* 022B9760 */ _t91 = cpu->r[1] + 0x00000030u;
|
|
/* 022B9760 */ cpu->r[11] = rbrew_read32(cpu->mem, _t91);
|
|
/* 022B9764 */ _t92 = cpu->r[31] + 0x00000018u;
|
|
/* 022B9764 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 022B9768 */ _t93 = cpu->r[1] + 0x00000034u;
|
|
/* 022B9768 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[11]);
|
|
/* 022B976C */ _t94 = cpu->r[1] + 0x00000034u;
|
|
/* 022B976C */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 022B9770 */ _t95 = cpu->r[1] + 0x00000054u;
|
|
/* 022B9770 */ rbrew_write32(cpu->mem, _t95, cpu->r[11]);
|
|
/* 022B9774 */ _t96 = cpu->r[1] + 0x00000050u;
|
|
/* 022B9774 */ rbrew_write32(cpu->mem, _t96, cpu->r[9]);
|
|
/* 022B9778 */ /* nop */
|
|
/* 022B977C */ _t97 = cpu->r[1] + 0x00000058u;
|
|
/* 022B977C */ rbrew_write32(cpu->mem, _t97, cpu->r[0]);
|
|
/* 022B9780 */ _t98 = cpu->r[1] + 0x00000058u;
|
|
/* 022B9780 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 022B9784 */ /* nop */
|
|
/* 022B9788 */ _t99 = cpu->r[31] + 0x00000000u;
|
|
/* 022B9788 */ cpu->r[11] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022B978C */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 022B9790 */ /* nop */
|
|
/* 022B9794 */ _t100 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9794 */ cpu->r[8] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022B9798 */ _t101 = cpu->r[1] + 0x00000040u;
|
|
/* 022B9798 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[8]);
|
|
/* 022B979C */ _t102 = cpu->r[11] + 0x00000000u;
|
|
/* 022B979C */ rbrew_write32(cpu->mem, _t102, cpu->r[8]);
|
|
/* 022B97A0 */ _t103 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B97A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t103);
|
|
/* 022B97A4 */ _t104 = cpu->r[11] + 0x00000004u;
|
|
/* 022B97A4 */ rbrew_write32(cpu->mem, _t104, cpu->r[9]);
|
|
/* 022B97A8 */ _t105 = cpu->r[1] + 0x00000040u;
|
|
/* 022B97A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t105);
|
|
/* 022B97AC */ _t106 = cpu->r[11] + 0x00000008u;
|
|
/* 022B97AC */ rbrew_write32(cpu->mem, _t106, cpu->r[0]);
|
|
L_022B97B0: ; // 0x22b97b0
|
|
/* 022B97B0 */ _t107 = cpu->r[1] + 0x00000088u;
|
|
/* 022B97B0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 022B97B4 */ _t108 = cpu->r[1] + 0x00000098u;
|
|
/* 022B97B4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 022B97B8 */ _t109 = cpu->r[1] + 0x00000080u;
|
|
/* 022B97B8 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t109);
|
|
/* 022B97BC */ _t110 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B97BC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 022B97C0 */ _t111 = cpu->r[1] + 0x00000090u;
|
|
/* 022B97C0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t111);
|
|
/* 022B97C4 */ _t112 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B97C4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t112);
|
|
/* 022B97C8 */ _t113 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B97C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t113);
|
|
/* 022B97CC */ _t114 = cpu->r[1] + 0x00000078u;
|
|
/* 022B97CC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 022B97D0 */ _t115 = cpu->r[1] + 0x00000068u;
|
|
/* 022B97D0 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 022B97D4 */ _t116 = cpu->r[1] + 0x00000070u;
|
|
/* 022B97D4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t116);
|
|
/* 022B97D8 */ _t117 = cpu->r[1] + 0x00000060u;
|
|
/* 022B97D8 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t117);
|
|
/* 022B97DC */ _t118 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B97DC */ _t119 = _t118 & 0x00000001u;
|
|
/* 022B97DC */ if (_t119) goto L_022B97E0; // else: addr-0 trap, fall-through
|
|
L_022B97E0: ; // 0x22b97e0
|
|
/* 022B97E0 */ _t120 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B97E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 022B97E4 */ cpu->lr = cpu->r[0];
|
|
/* 022B97E8 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 022B97EC */ return;
|
|
}
|
|
|
|
// fn_022B97F0 @ 0x22b97f0
|
|
void Gambit_fn_022B97F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74;
|
|
double _ft30, _ft31, _ft54, _ft55;
|
|
|
|
L_022B97F0: ; // 0x22b97f0
|
|
/* 022B97F0 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 022B97F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B97F0 */ cpu->r[1] = _t0;
|
|
/* 022B97F4 */ _t1 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B97F4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B97F8 */ cpu->r[0] = cpu->lr;
|
|
/* 022B97FC */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 022B97FC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 022B9800 */ /* nop */
|
|
/* 022B9804 */ _t3 = cpu->r[1] + 0x00000070u;
|
|
/* 022B9804 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[28]);
|
|
/* 022B9808 */ /* nop */
|
|
/* 022B980C */ _t4 = cpu->r[1] + 0x00000080u;
|
|
/* 022B980C */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 022B9810 */ _t5 = cpu->r[1] + 0x00000068u;
|
|
/* 022B9810 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[27]);
|
|
/* 022B9814 */ /* nop */
|
|
/* 022B9818 */ _t6 = cpu->r[1] + 0x00000078u;
|
|
/* 022B9818 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[28]);
|
|
/* 022B981C */ _t7 = cpu->r[1] + 0x00000090u;
|
|
/* 022B981C */ rbrew_write_f64(cpu->mem, _t7, cpu->f[30]);
|
|
/* 022B9820 */ _t8 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B9820 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022B9824 */ /* nop */
|
|
/* 022B9828 */ _t9 = cpu->r[1] + 0x00000088u;
|
|
/* 022B9828 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 022B982C */ /* nop */
|
|
/* 022B9830 */ _t10 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B9830 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 022B9834 */ _t11 = cpu->r[1] + 0x00000098u;
|
|
/* 022B9834 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[30]);
|
|
/* 022B9838 */ _t12 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B9838 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 022B983C */ _t13 = cpu->r[4] + 0x00000008u;
|
|
/* 022B983C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B9840 */ _t14 = cpu->r[3] + 0x00000008u;
|
|
/* 022B9840 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B9844 */ /* nop */
|
|
/* 022B9848 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 022B984C */ /* nop */
|
|
/* 022B9850 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9850 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[10]);
|
|
/* 022B9854 */ /* nop */
|
|
/* 022B9858 */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9858 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B985C */ /* nop */
|
|
/* 022B9860 */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 022B9860 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B9864 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 022B9864 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B9868 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9868 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 022B986C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B986C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B9870 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9870 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 022B9874 */ cpu->f[8] = cpu->f[13] * cpu->f[13];
|
|
/* 022B9878 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9878 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B987C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022B987C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 022B9880 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B9884 */ cpu->f[9] = fma(cpu->f[9], cpu->f[9], cpu->f[8]);
|
|
/* 022B9888 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9888 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B988C */ cpu->f[28] = cpu->f[2];
|
|
/* 022B9890 */ _t25 = cpu->r[9] + 0x0000402Cu;
|
|
/* 022B9890 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022B9894 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B9898 */ cpu->f[10] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 022B989C */ _t26 = cpu->r[8] + 0x00004030u;
|
|
/* 022B989C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B98A0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B98A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[29]);
|
|
/* 022B98A8 */ _t27 = cpu->r[10] + 0x00004028u;
|
|
/* 022B98A8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B98AC */ cpu->f[27] = cpu->f[1];
|
|
/* 022B98B0 */ _t28 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B98B0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022B98B0 */ if (_t29) goto L_022B98B4; else goto L_022B98E0;
|
|
L_022B98B4: ; // 0x22b98b4
|
|
/* 022B98B4 */ _ft30 = sqrt(cpu->f[10]);
|
|
/* 022B98B4 */ _ft31 = (double)(int32_t)0x00000001u;
|
|
/* 022B98B4 */ cpu->f[11] = _ft31 / _ft30;
|
|
/* 022B98B8 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 022B98BC */ cpu->f[13] = cpu->f[11] * cpu->f[30];
|
|
/* 022B98C0 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[10], -(cpu->f[31]));
|
|
/* 022B98C4 */ cpu->f[11] = cpu->f[12] * cpu->f[13];
|
|
/* 022B98C8 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 022B98C8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B98CC */ /* nop */
|
|
/* 022B98D0 */ cpu->f[9] = cpu->f[9] * cpu->f[11];
|
|
/* 022B98D4 */ /* nop */
|
|
/* 022B98D8 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 022B98D8 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[9]);
|
|
/* 022B98DC */ /* nop */
|
|
L_022B98E0: ; // 0x22b98e0
|
|
/* 022B98E0 */ cpu->r[31] = 0x101F0000u;
|
|
/* 022B98E4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B98E8 */ cpu->r[31] = cpu->r[31] + 0x00006350u;
|
|
/* 022B98EC */ cpu->r[5] = cpu->r[1] + 0x00000038u;
|
|
/* 022B98F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B98F4 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B98F8 */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 022B98F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B98FC */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B9900 */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B9900 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B9904 */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9904 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B9908 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 022B9908 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 022B990C */ cpu->r[4] = cpu->r[31];
|
|
/* 022B9910 */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 022B9910 */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
/* 022B9914 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 022B9918 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B9918 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
/* 022B991C */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B9920 */ _t40 = cpu->r[1] + 0x00000048u;
|
|
/* 022B9920 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022B9924 */ _t41 = cpu->r[1] + 0x00000044u;
|
|
/* 022B9924 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B9928 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 022B9928 */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 022B992C */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 022B992C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022B9930 */ _t44 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B9930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B9934 */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 022B9938 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9938 */ rbrew_write32(cpu->mem, _t45, cpu->r[9]);
|
|
/* 022B993C */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 022B993C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022B9940 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9940 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 022B9944 */ cpu->f[9] = fma(cpu->f[11], cpu->f[11], cpu->f[8]);
|
|
/* 022B9948 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9948 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022B994C */ cpu->f[10] = fma(cpu->f[11], cpu->f[11], cpu->f[9]);
|
|
/* 022B9950 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[29]);
|
|
/* 022B9954 */ _t49 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9954 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022B9954 */ if (_t50) goto L_022B99B0; else goto L_022B9958;
|
|
L_022B9958: ; // 0x22b9958
|
|
/* 022B9958 */ /* nop */
|
|
/* 022B995C */ /* nop */
|
|
/* 022B9960 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9964 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022B9968 */ /* nop */
|
|
/* 022B996C */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 022B996C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022B9970 */ /* nop */
|
|
/* 022B9974 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 022B9978 */ cpu->f[31] = fma(cpu->f[10], cpu->f[11], cpu->f[0]);
|
|
/* 022B997C */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B9980 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 022B9984 */ Gambit_fn_02C69350(cpu);
|
|
/* 022B9988 */ cpu->f[2] = cpu->f[31];
|
|
/* 022B998C */ Gambit_fn_02C89074(cpu);
|
|
/* 022B9990 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9990 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022B9994 */ cpu->f[8] = -cpu->f[10];
|
|
/* 022B9998 */ /* nop */
|
|
/* 022B999C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B99A0 */ cpu->f[12] = cpu->f[9] * cpu->f[1];
|
|
/* 022B99A4 */ _t53 = cpu->r[11] + 0x0000410Cu;
|
|
/* 022B99A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022B99A8 */ cpu->f[1] = cpu->f[12] / cpu->f[13];
|
|
/* 022B99AC */ goto L_022B9A2C;
|
|
L_022B99B0: ; // 0x22b99b0
|
|
/* 022B99B0 */ _ft54 = sqrt(cpu->f[10]);
|
|
/* 022B99B0 */ _ft55 = (double)(int32_t)0x00000001u;
|
|
/* 022B99B0 */ cpu->f[12] = _ft55 / _ft54;
|
|
/* 022B99B4 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 022B99B8 */ cpu->f[0] = cpu->f[12] * cpu->f[30];
|
|
/* 022B99BC */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[31]));
|
|
/* 022B99C0 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 022B99C4 */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B99C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022B99C8 */ /* nop */
|
|
/* 022B99CC */ cpu->f[11] = cpu->f[11] * cpu->f[12];
|
|
/* 022B99D0 */ /* nop */
|
|
/* 022B99D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B99D8 */ /* nop */
|
|
/* 022B99DC */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 022B99DC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022B99E0 */ /* nop */
|
|
/* 022B99E4 */ /* nop */
|
|
/* 022B99E8 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022B99EC */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B99EC */ rbrew_write_f32(cpu->mem, _t58, cpu->f[11]);
|
|
/* 022B99F0 */ /* nop */
|
|
/* 022B99F4 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 022B99F8 */ cpu->f[31] = fma(cpu->f[10], cpu->f[11], cpu->f[0]);
|
|
/* 022B99FC */ Gambit_fn_02C692EC(cpu);
|
|
/* 022B9A00 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 022B9A04 */ Gambit_fn_02C69350(cpu);
|
|
/* 022B9A08 */ cpu->f[2] = cpu->f[31];
|
|
/* 022B9A0C */ Gambit_fn_02C89074(cpu);
|
|
/* 022B9A10 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9A10 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022B9A14 */ cpu->f[8] = -cpu->f[10];
|
|
/* 022B9A18 */ /* nop */
|
|
/* 022B9A1C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B9A20 */ cpu->f[12] = cpu->f[9] * cpu->f[1];
|
|
/* 022B9A24 */ _t60 = cpu->r[11] + 0x0000410Cu;
|
|
/* 022B9A24 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022B9A28 */ cpu->f[1] = cpu->f[12] / cpu->f[13];
|
|
L_022B9A2C: ; // 0x22b9a2c
|
|
/* 022B9A2C */ _t61 = cpu->r[1] + 0x00000088u;
|
|
/* 022B9A2C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022B9A30 */ _t62 = cpu->r[1] + 0x00000098u;
|
|
/* 022B9A30 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022B9A34 */ _t63 = cpu->r[1] + 0x00000080u;
|
|
/* 022B9A34 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t63);
|
|
/* 022B9A38 */ _t64 = cpu->r[1] + 0x000000A8u;
|
|
/* 022B9A38 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022B9A3C */ _t65 = cpu->r[1] + 0x00000090u;
|
|
/* 022B9A3C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t65);
|
|
/* 022B9A40 */ _t66 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B9A40 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 022B9A44 */ _t67 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B9A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022B9A48 */ _t68 = cpu->r[1] + 0x00000078u;
|
|
/* 022B9A48 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022B9A4C */ _t69 = cpu->r[1] + 0x00000068u;
|
|
/* 022B9A4C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022B9A50 */ _t70 = cpu->r[1] + 0x00000070u;
|
|
/* 022B9A50 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t70);
|
|
/* 022B9A54 */ _t71 = cpu->r[1] + 0x00000060u;
|
|
/* 022B9A54 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 022B9A58 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B9A58 */ _t73 = _t72 & 0x00000001u;
|
|
/* 022B9A58 */ if (_t73) goto L_022B9A5C; // else: addr-0 trap, fall-through
|
|
L_022B9A5C: ; // 0x22b9a5c
|
|
/* 022B9A5C */ _t74 = cpu->r[1] + 0x000000B4u;
|
|
/* 022B9A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022B9A60 */ cpu->lr = cpu->r[0];
|
|
/* 022B9A64 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 022B9A68 */ return;
|
|
}
|
|
|
|
// fn_022B9A6C @ 0x22b9a6c
|
|
void Gambit_fn_022B9A6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _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, _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;
|
|
double _ft29, _ft30, _ft53, _ft54;
|
|
|
|
L_022B9A6C: ; // 0x22b9a6c
|
|
/* 022B9A6C */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 022B9A6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B9A6C */ cpu->r[1] = _t0;
|
|
/* 022B9A70 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 022B9A70 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022B9A74 */ cpu->r[0] = cpu->lr;
|
|
/* 022B9A78 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 022B9A78 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[28]);
|
|
/* 022B9A7C */ /* nop */
|
|
/* 022B9A80 */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 022B9A80 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 022B9A84 */ _t4 = cpu->r[1] + 0x00000078u;
|
|
/* 022B9A84 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[31]);
|
|
/* 022B9A88 */ /* nop */
|
|
/* 022B9A8C */ _t5 = cpu->r[1] + 0x00000044u;
|
|
/* 022B9A8C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022B9A90 */ /* nop */
|
|
/* 022B9A94 */ _t6 = cpu->r[1] + 0x00000070u;
|
|
/* 022B9A94 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 022B9A98 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 022B9A98 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[28]);
|
|
/* 022B9A9C */ _t8 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B9A9C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022B9AA0 */ /* nop */
|
|
/* 022B9AA4 */ _t9 = cpu->r[1] + 0x00000060u;
|
|
/* 022B9AA4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 022B9AA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B9AAC */ _t10 = cpu->r[1] + 0x00000080u;
|
|
/* 022B9AAC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 022B9AB0 */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 022B9AB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B9AB4 */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 022B9AB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B9AB8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9AB8 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 022B9ABC */ _t14 = cpu->r[12] + 0x00000004u;
|
|
/* 022B9ABC */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B9AC0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9AC0 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 022B9AC4 */ _t16 = cpu->r[12] + 0x00000008u;
|
|
/* 022B9AC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B9AC8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9ACC */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9ACC */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022B9AD0 */ Gambit_fn_02C69350(cpu);
|
|
/* 022B9AD4 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9AD4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B9AD8 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B9ADC */ cpu->r[9] = 0x10060000u;
|
|
/* 022B9AE0 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9AE0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B9AE4 */ cpu->f[2] = -cpu->f[9];
|
|
/* 022B9AE8 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B9AEC */ _t20 = cpu->r[9] + 0x0000402Cu;
|
|
/* 022B9AEC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B9AF0 */ cpu->f[7] = -cpu->f[12];
|
|
/* 022B9AF4 */ _t21 = cpu->r[8] + 0x00004028u;
|
|
/* 022B9AF4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B9AF8 */ cpu->f[12] = cpu->f[2] * cpu->f[2];
|
|
/* 022B9AFC */ _t22 = cpu->r[11] + 0x00004110u;
|
|
/* 022B9AFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022B9B00 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B9B04 */ _t23 = cpu->r[6] + 0x00004030u;
|
|
/* 022B9B04 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022B9B08 */ cpu->f[13] = fma(cpu->f[7], cpu->f[7], cpu->f[12]);
|
|
/* 022B9B0C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9B0C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 022B9B10 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9B10 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[2]);
|
|
/* 022B9B14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[29]);
|
|
/* 022B9B18 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9B18 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[7]);
|
|
/* 022B9B1C */ cpu->f[28] = cpu->f[1];
|
|
/* 022B9B20 */ _t27 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9B20 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022B9B20 */ if (_t28) goto L_022B9B24; else goto L_022B9B54;
|
|
L_022B9B24: ; // 0x22b9b24
|
|
/* 022B9B24 */ _ft29 = sqrt(cpu->f[13]);
|
|
/* 022B9B24 */ _ft30 = (double)(int32_t)0x00000001u;
|
|
/* 022B9B24 */ cpu->f[8] = _ft30 / _ft29;
|
|
/* 022B9B28 */ cpu->f[10] = cpu->f[8] * cpu->f[8];
|
|
/* 022B9B2C */ cpu->f[11] = cpu->f[8] * cpu->f[30];
|
|
/* 022B9B30 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[13], -(cpu->f[31]));
|
|
/* 022B9B34 */ cpu->f[8] = cpu->f[10] * cpu->f[11];
|
|
/* 022B9B38 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9B38 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022B9B3C */ /* nop */
|
|
/* 022B9B40 */ cpu->f[2] = cpu->f[2] * cpu->f[8];
|
|
/* 022B9B44 */ /* nop */
|
|
/* 022B9B48 */ /* nop */
|
|
/* 022B9B4C */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9B4C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B9B50 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9B50 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[2]);
|
|
L_022B9B54: ; // 0x22b9b54
|
|
/* 022B9B54 */ _t34 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022B9B54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B9B58 */ _t35 = cpu->r[12] + 0x00000000u;
|
|
/* 022B9B58 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022B9B5C */ _t36 = cpu->r[12] + 0x00000008u;
|
|
/* 022B9B5C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022B9B60 */ cpu->f[10] = cpu->f[9] * cpu->f[2];
|
|
/* 022B9B64 */ cpu->f[11] = cpu->f[8] * cpu->f[2];
|
|
/* 022B9B68 */ cpu->f[1] = fma(cpu->f[8], cpu->f[7], -(cpu->f[10]));
|
|
/* 022B9B6C */ cpu->f[2] = fma(cpu->f[9], cpu->f[7], cpu->f[11]);
|
|
/* 022B9B70 */ Gambit_fn_02C89074(cpu);
|
|
/* 022B9B74 */ cpu->f[12] = cpu->f[1] + cpu->f[1];
|
|
/* 022B9B78 */ cpu->r[4] = 0x101F0000u;
|
|
/* 022B9B7C */ cpu->r[4] = cpu->r[4] + 0x00006350u;
|
|
/* 022B9B80 */ cpu->f[1] = -cpu->f[12];
|
|
/* 022B9B84 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 022B9B88 */ Gambit_fn_0204DFF4(cpu);
|
|
/* 022B9B8C */ _t37 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B9B8C */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022B9B90 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9B90 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022B9B94 */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 022B9B94 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022B9B98 */ cpu->f[9] = cpu->f[4] * cpu->f[10];
|
|
/* 022B9B9C */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9B9C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022B9BA0 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9BA0 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B9BA4 */ cpu->f[0] = cpu->f[1] * cpu->f[7];
|
|
/* 022B9BA8 */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 022B9BA8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022B9BAC */ cpu->f[11] = fma(cpu->f[1], cpu->f[2], -(cpu->f[9]));
|
|
/* 022B9BB0 */ cpu->f[6] = fma(cpu->f[5], cpu->f[10], -(cpu->f[0]));
|
|
/* 022B9BB4 */ _t43 = cpu->r[1] + 0x00000030u;
|
|
/* 022B9BB4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022B9BB8 */ cpu->f[12] = cpu->f[5] * cpu->f[2];
|
|
/* 022B9BBC */ cpu->f[0] = fma(cpu->f[3], cpu->f[7], cpu->f[11]);
|
|
/* 022B9BC0 */ cpu->f[13] = fma(cpu->f[4], cpu->f[7], -(cpu->f[12]));
|
|
/* 022B9BC4 */ cpu->f[7] = cpu->f[5] * cpu->f[7];
|
|
/* 022B9BC8 */ cpu->f[9] = fma(cpu->f[3], cpu->f[10], cpu->f[13]);
|
|
/* 022B9BCC */ cpu->f[11] = cpu->f[9] * cpu->f[4];
|
|
/* 022B9BD0 */ cpu->f[8] = -cpu->f[7];
|
|
/* 022B9BD4 */ cpu->f[12] = fma(cpu->f[0], cpu->f[3], -(cpu->f[11]));
|
|
/* 022B9BD8 */ cpu->f[13] = cpu->f[9] * cpu->f[3];
|
|
/* 022B9BDC */ cpu->f[11] = -fma(cpu->f[1], cpu->f[10], -(cpu->f[8]));
|
|
/* 022B9BE0 */ cpu->f[7] = fma(cpu->f[0], cpu->f[4], cpu->f[13]);
|
|
/* 022B9BE4 */ cpu->f[8] = fma(cpu->f[3], cpu->f[2], cpu->f[6]);
|
|
/* 022B9BE8 */ cpu->f[10] = -fma(cpu->f[8], cpu->f[5], -(cpu->f[7]));
|
|
/* 022B9BEC */ cpu->f[6] = -fma(cpu->f[4], cpu->f[2], -(cpu->f[11]));
|
|
/* 022B9BF0 */ cpu->f[11] = cpu->f[0] * cpu->f[1];
|
|
/* 022B9BF4 */ cpu->f[13] = fma(cpu->f[8], cpu->f[1], cpu->f[12]);
|
|
/* 022B9BF8 */ cpu->f[12] = fma(cpu->f[9], cpu->f[5], -(cpu->f[11]));
|
|
/* 022B9BFC */ cpu->f[10] = -fma(cpu->f[6], cpu->f[1], -(cpu->f[10]));
|
|
/* 022B9C00 */ cpu->f[7] = -fma(cpu->f[6], cpu->f[5], -(cpu->f[13]));
|
|
/* 022B9C04 */ cpu->f[13] = fma(cpu->f[8], cpu->f[3], cpu->f[12]);
|
|
/* 022B9C08 */ cpu->f[12] = cpu->f[10] * cpu->f[10];
|
|
/* 022B9C0C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9C0C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 022B9C10 */ cpu->f[2] = -fma(cpu->f[6], cpu->f[4], -(cpu->f[13]));
|
|
/* 022B9C14 */ _t45 = cpu->r[1] + 0x00000018u;
|
|
/* 022B9C14 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[9]);
|
|
/* 022B9C18 */ cpu->f[0] = fma(cpu->f[7], cpu->f[7], cpu->f[12]);
|
|
/* 022B9C1C */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9C1C */ rbrew_write_f32(cpu->mem, _t46, cpu->f[8]);
|
|
/* 022B9C20 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9C20 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[2]);
|
|
/* 022B9C24 */ cpu->f[13] = fma(cpu->f[2], cpu->f[2], cpu->f[0]);
|
|
/* 022B9C28 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9C28 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[10]);
|
|
/* 022B9C2C */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 022B9C2C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[6]);
|
|
/* 022B9C30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[29]);
|
|
/* 022B9C34 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9C34 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[7]);
|
|
/* 022B9C38 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9C38 */ _t52 = _t51 & 0x00000001u;
|
|
/* 022B9C38 */ if (_t52) goto L_022B9C3C; else goto L_022B9C6C;
|
|
L_022B9C3C: ; // 0x22b9c3c
|
|
/* 022B9C3C */ _ft53 = sqrt(cpu->f[13]);
|
|
/* 022B9C3C */ _ft54 = (double)(int32_t)0x00000001u;
|
|
/* 022B9C3C */ cpu->f[0] = _ft54 / _ft53;
|
|
/* 022B9C40 */ cpu->f[7] = cpu->f[0] * cpu->f[0];
|
|
/* 022B9C44 */ cpu->f[8] = cpu->f[0] * cpu->f[30];
|
|
/* 022B9C48 */ cpu->f[7] = -fma(cpu->f[7], cpu->f[13], -(cpu->f[31]));
|
|
/* 022B9C4C */ cpu->f[0] = cpu->f[7] * cpu->f[8];
|
|
/* 022B9C50 */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9C50 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022B9C54 */ /* nop */
|
|
/* 022B9C58 */ cpu->f[2] = cpu->f[2] * cpu->f[0];
|
|
/* 022B9C5C */ /* nop */
|
|
/* 022B9C60 */ /* nop */
|
|
/* 022B9C64 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9C64 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022B9C68 */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9C68 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[2]);
|
|
L_022B9C6C: ; // 0x22b9c6c
|
|
/* 022B9C6C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[29]);
|
|
/* 022B9C70 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9C70 */ _t59 = _t58 & 0x00000001u;
|
|
/* 022B9C70 */ if (_t59) goto L_022B9C74; else goto L_022B9C88;
|
|
L_022B9C74: ; // 0x22b9c74
|
|
/* 022B9C74 */ _t60 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9C74 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022B9C78 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 022B9C7C */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9C7C */ _t62 = _t61 & 0x00000001u;
|
|
/* 022B9C7C */ if (_t62) goto L_022B9C80; else goto L_022B9C88;
|
|
L_022B9C80: ; // 0x22b9c80
|
|
/* 022B9C80 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[2], cpu->f[29]);
|
|
/* 022B9C84 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9C84 */ _t64 = _t63 & 0x00000001u;
|
|
/* 022B9C84 */ if (_t64) goto L_022B9CF8; else goto L_022B9C88;
|
|
L_022B9C88: ; // 0x22b9c88
|
|
/* 022B9C88 */ /* nop */
|
|
/* 022B9C8C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9C8C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022B9C90 */ /* nop */
|
|
/* 022B9C94 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9C94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022B9C98 */ _t67 = cpu->r[31] + 0x00000000u;
|
|
/* 022B9C98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022B9C9C */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9C9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022B9CA0 */ cpu->f[9] = cpu->f[9] * cpu->f[28];
|
|
/* 022B9CA4 */ /* nop */
|
|
/* 022B9CA8 */ _t69 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9CA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022B9CAC */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9CAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t70);
|
|
/* 022B9CB0 */ _t71 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9CB0 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[9]);
|
|
/* 022B9CB4 */ _t72 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B9CB4 */ rbrew_write32(cpu->mem, _t72, cpu->r[7]);
|
|
/* 022B9CB8 */ _t73 = cpu->r[1] + 0x00000034u;
|
|
/* 022B9CB8 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]);
|
|
/* 022B9CBC */ _t74 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9CBC */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 022B9CC0 */ _t75 = cpu->r[11] + 0x00000000u;
|
|
/* 022B9CC0 */ rbrew_write32(cpu->mem, _t75, cpu->r[12]);
|
|
/* 022B9CC4 */ _t76 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9CC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022B9CC8 */ _t77 = cpu->r[11] + 0x00000004u;
|
|
/* 022B9CC8 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 022B9CCC */ _t78 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9CCC */ cpu->r[6] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B9CD0 */ _t79 = cpu->r[11] + 0x00000008u;
|
|
/* 022B9CD0 */ rbrew_write32(cpu->mem, _t79, cpu->r[6]);
|
|
/* 022B9CD4 */ _t80 = cpu->r[31] + 0x00000004u;
|
|
/* 022B9CD4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022B9CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022B9CDC */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9CDC */ _t82 = _t81 & 0x00000001u;
|
|
/* 022B9CDC */ if (_t82) goto L_022B9CF8; else goto L_022B9CE0;
|
|
L_022B9CE0: ; // 0x22b9ce0
|
|
/* 022B9CE0 */ _t83 = cpu->r[1] + 0x00000034u;
|
|
/* 022B9CE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 022B9CE4 */ _t84 = cpu->r[6] + 0x000000A0u;
|
|
/* 022B9CE4 */ rbrew_write32(cpu->mem, _t84, cpu->r[8]);
|
|
/* 022B9CE8 */ _t85 = cpu->r[1] + 0x00000038u;
|
|
/* 022B9CE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t85);
|
|
/* 022B9CEC */ _t86 = cpu->r[6] + 0x000000A4u;
|
|
/* 022B9CEC */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 022B9CF0 */ _t87 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B9CF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022B9CF4 */ _t88 = cpu->r[6] + 0x000000A8u;
|
|
/* 022B9CF4 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
L_022B9CF8: ; // 0x22b9cf8
|
|
/* 022B9CF8 */ _t89 = cpu->r[1] + 0x00000080u;
|
|
/* 022B9CF8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022B9CFC */ _t90 = cpu->r[1] + 0x00000070u;
|
|
/* 022B9CFC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 022B9D00 */ _t91 = cpu->r[1] + 0x00000078u;
|
|
/* 022B9D00 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 022B9D04 */ _t92 = cpu->r[1] + 0x00000068u;
|
|
/* 022B9D04 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t92);
|
|
/* 022B9D08 */ _t93 = cpu->r[1] + 0x00000044u;
|
|
/* 022B9D08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022B9D0C */ _t94 = cpu->r[1] + 0x00000060u;
|
|
/* 022B9D0C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 022B9D10 */ _t95 = cpu->r[1] + 0x00000050u;
|
|
/* 022B9D10 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 022B9D14 */ _t96 = cpu->r[1] + 0x00000058u;
|
|
/* 022B9D14 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t96);
|
|
/* 022B9D18 */ _t97 = cpu->r[1] + 0x00000048u;
|
|
/* 022B9D18 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t97);
|
|
/* 022B9D1C */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B9D1C */ _t99 = _t98 & 0x00000001u;
|
|
/* 022B9D1C */ if (_t99) goto L_022B9D20; // else: addr-0 trap, fall-through
|
|
L_022B9D20: ; // 0x22b9d20
|
|
/* 022B9D20 */ _t100 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B9D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022B9D24 */ cpu->lr = cpu->r[0];
|
|
/* 022B9D28 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 022B9D2C */ return;
|
|
}
|
|
|
|
// fn_022B9D30 @ 0x22b9d30
|
|
void Gambit_fn_022B9D30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50;
|
|
|
|
L_022B9D30: ; // 0x22b9d30
|
|
/* 022B9D30 */ cpu->r[0] = cpu->lr;
|
|
/* 022B9D34 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B9D34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B9D34 */ cpu->r[1] = _t0;
|
|
/* 022B9D38 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9D38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B9D3C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B9D40 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9D40 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B9D44 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B9D48 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9D48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B9D4C */ _t4 = cpu->r[31] + 0x000023B8u;
|
|
/* 022B9D4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B9D50 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9D50 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 022B9D54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B9D58 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9D58 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 022B9D5C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9D5C */ _t8 = _t7 & 0x00000001u;
|
|
/* 022B9D5C */ if (_t8) goto L_022B9D60; else goto L_022B9DA4;
|
|
L_022B9D60: ; // 0x22b9d60
|
|
/* 022B9D60 */ cpu->r[3] = 0x101D0000u;
|
|
/* 022B9D64 */ _t9 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 022B9D64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B9D68 */ Gambit_fn_02826F20(cpu);
|
|
/* 022B9D6C */ _t10 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B9D6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B9D70 */ _t11 = cpu->r[11] + 0x00000034u;
|
|
/* 022B9D70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B9D74 */ cpu->ctr = cpu->r[0];
|
|
/* 022B9D78 */ cpu->r[5] = 0x00000004u;
|
|
/* 022B9D7C */ cpu->r[4] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B9D80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B9D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B9D88 */ cpu->r[0] = cpu->r[30];
|
|
/* 022B9D8C */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9D8C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B9D8C */ if (_t13) goto L_022B9D94; else goto L_022B9D90;
|
|
L_022B9D90: ; // 0x22b9d90
|
|
/* 022B9D90 */ cpu->r[0] = 0x00000001u;
|
|
L_022B9D94: ; // 0x22b9d94
|
|
/* 022B9D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B9D98 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9D98 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022B9D98 */ if (_t15) goto L_022B9DA4; else goto L_022B9D9C;
|
|
L_022B9D9C: ; // 0x22b9d9c
|
|
/* 022B9D9C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9D9C */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 022B9DA0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9DA0 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_022B9DA4: ; // 0x22b9da4
|
|
/* 022B9DA4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B9DA8 */ _t18 = cpu->r[12] + 0x00006000u;
|
|
/* 022B9DA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B9DAC */ cpu->r[5] = cpu->r[31];
|
|
/* 022B9DB0 */ _t19 = cpu->r[12] + 0x00000264u;
|
|
/* 022B9DB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B9DB4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9DB8 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B9DBC */ Gambit_fn_024FE00C(cpu);
|
|
/* 022B9DC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B9DC4 */ cpu->r[10] = 0x00000000u;
|
|
/* 022B9DC8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9DC8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B9DC8 */ if (_t21) goto L_022B9DCC; else goto L_022B9E78;
|
|
L_022B9DCC: ; // 0x22b9dcc
|
|
/* 022B9DCC */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B9DD0 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B9DD4 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9DD4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B9DD8 */ cpu->r[4] = cpu->r[4] + 0x000001A0u;
|
|
/* 022B9DDC */ cpu->r[11] = 0x00000001u;
|
|
/* 022B9DE0 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9DE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B9DE4 */ cpu->r[9] = 0x101D0000u;
|
|
L_022B9DE8: ; // 0x22b9de8
|
|
/* 022B9DE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 022B9DEC */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B9DEC */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B9DEC */ if (_t25) goto L_022B9DF0; else goto L_022B9E04;
|
|
L_022B9DF0: ; // 0x22b9df0
|
|
/* 022B9DF0 */ _t26 = cpu->r[5] + cpu->r[8];
|
|
/* 022B9DF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B9DF4 */ _t27 = cpu->r[31] + 0x00000020u;
|
|
/* 022B9DF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B9DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x0000002Au);
|
|
/* 022B9DFC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9DFC */ _t29 = _t28 & 0x00000001u;
|
|
/* 022B9DFC */ if (_t29) goto L_022B9E00; else goto L_022B9E68;
|
|
L_022B9E00: ; // 0x22b9e00
|
|
/* 022B9E00 */ goto L_022B9E14;
|
|
L_022B9E04: ; // 0x22b9e04
|
|
/* 022B9E04 */ _t30 = cpu->r[5] + 0x00000000u;
|
|
/* 022B9E04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B9E08 */ _t31 = cpu->r[31] + 0x00000020u;
|
|
/* 022B9E08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B9E0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x0000002Au);
|
|
/* 022B9E10 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9E10 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022B9E10 */ if (_t33) goto L_022B9E14; else goto L_022B9E68;
|
|
L_022B9E14: ; // 0x22b9e14
|
|
/* 022B9E14 */ _t34 = cpu->r[9] + 0xFFFFDA28u;
|
|
/* 022B9E14 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B9E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B9E1C */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9E1C */ _t36 = _t35 & 0x00000001u;
|
|
/* 022B9E1C */ if (_t36) goto L_022B9E20; else goto L_022B9E30;
|
|
L_022B9E20: ; // 0x22b9e20
|
|
/* 022B9E20 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B9E24 */ _t37 = cpu->r[9] + 0xFFFFDA28u;
|
|
/* 022B9E24 */ rbrew_write32(cpu->mem, _t37, cpu->r[11]);
|
|
/* 022B9E28 */ cpu->r[8] = cpu->r[8] + 0x00004084u;
|
|
/* 022B9E2C */ _t38 = cpu->r[4] + 0x00000000u;
|
|
/* 022B9E2C */ rbrew_write32(cpu->mem, _t38, cpu->r[8]);
|
|
L_022B9E30: ; // 0x22b9e30
|
|
/* 022B9E30 */ _t39 = cpu->r[31] + 0x00000004u;
|
|
/* 022B9E30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022B9E34 */ _t40 = cpu->r[9] + 0x00000014u;
|
|
/* 022B9E34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022B9E38 */ cpu->ctr = cpu->r[0];
|
|
/* 022B9E3C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B9E40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B9E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B9E48 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9E48 */ _t42 = _t41 & 0x00000001u;
|
|
/* 022B9E48 */ if (_t42) goto L_022B9E78; else goto L_022B9E4C;
|
|
L_022B9E4C: ; // 0x22b9e4c
|
|
/* 022B9E4C */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9E4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B9E50 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B9E54 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9E54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B9E58 */ cpu->lr = cpu->r[0];
|
|
/* 022B9E5C */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9E5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B9E60 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B9E64 */ return;
|
|
L_022B9E68: ; // 0x22b9e68
|
|
/* 022B9E68 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 022B9E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B9E6C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 022B9E70 */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 022B9E74 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9E74 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022B9E74 */ if (_t47) goto L_022B9E78; else goto L_022B9DE8;
|
|
L_022B9E78: ; // 0x22b9e78
|
|
/* 022B9E78 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022B9E7C */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9E7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022B9E80 */ cpu->lr = cpu->r[0];
|
|
/* 022B9E84 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9E84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022B9E88 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B9E8C */ cpu->r[3] = 0x00000000u;
|
|
/* 022B9E90 */ return;
|
|
}
|
|
|
|
// fn_022B9D34 @ 0x22b9d34
|
|
void Gambit_fn_022B9D34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50;
|
|
|
|
L_022B9D34: ; // 0x22b9d34
|
|
/* 022B9D34 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B9D34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B9D34 */ cpu->r[1] = _t0;
|
|
/* 022B9D38 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9D38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B9D3C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B9D40 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9D40 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B9D44 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B9D48 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9D48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B9D4C */ _t4 = cpu->r[31] + 0x000023B8u;
|
|
/* 022B9D4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B9D50 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9D50 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 022B9D54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B9D58 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9D58 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 022B9D5C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9D5C */ _t8 = _t7 & 0x00000001u;
|
|
/* 022B9D5C */ if (_t8) goto L_022B9D60; else goto L_022B9DA4;
|
|
L_022B9D60: ; // 0x22b9d60
|
|
/* 022B9D60 */ cpu->r[3] = 0x101D0000u;
|
|
/* 022B9D64 */ _t9 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 022B9D64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B9D68 */ Gambit_fn_02826F20(cpu);
|
|
/* 022B9D6C */ _t10 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B9D6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B9D70 */ _t11 = cpu->r[11] + 0x00000034u;
|
|
/* 022B9D70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B9D74 */ cpu->ctr = cpu->r[0];
|
|
/* 022B9D78 */ cpu->r[5] = 0x00000004u;
|
|
/* 022B9D7C */ cpu->r[4] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B9D80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B9D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B9D88 */ cpu->r[0] = cpu->r[30];
|
|
/* 022B9D8C */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9D8C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B9D8C */ if (_t13) goto L_022B9D94; else goto L_022B9D90;
|
|
L_022B9D90: ; // 0x22b9d90
|
|
/* 022B9D90 */ cpu->r[0] = 0x00000001u;
|
|
L_022B9D94: ; // 0x22b9d94
|
|
/* 022B9D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B9D98 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9D98 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022B9D98 */ if (_t15) goto L_022B9DA4; else goto L_022B9D9C;
|
|
L_022B9D9C: ; // 0x22b9d9c
|
|
/* 022B9D9C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9D9C */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 022B9DA0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9DA0 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_022B9DA4: ; // 0x22b9da4
|
|
/* 022B9DA4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B9DA8 */ _t18 = cpu->r[12] + 0x00006000u;
|
|
/* 022B9DA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B9DAC */ cpu->r[5] = cpu->r[31];
|
|
/* 022B9DB0 */ _t19 = cpu->r[12] + 0x00000264u;
|
|
/* 022B9DB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B9DB4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9DB8 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B9DBC */ Gambit_fn_024FE00C(cpu);
|
|
/* 022B9DC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B9DC4 */ cpu->r[10] = 0x00000000u;
|
|
/* 022B9DC8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9DC8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B9DC8 */ if (_t21) goto L_022B9DCC; else goto L_022B9E78;
|
|
L_022B9DCC: ; // 0x22b9dcc
|
|
/* 022B9DCC */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B9DD0 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B9DD4 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9DD4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B9DD8 */ cpu->r[4] = cpu->r[4] + 0x000001A0u;
|
|
/* 022B9DDC */ cpu->r[11] = 0x00000001u;
|
|
/* 022B9DE0 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9DE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B9DE4 */ cpu->r[9] = 0x101D0000u;
|
|
L_022B9DE8: ; // 0x22b9de8
|
|
/* 022B9DE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 022B9DEC */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B9DEC */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B9DEC */ if (_t25) goto L_022B9DF0; else goto L_022B9E04;
|
|
L_022B9DF0: ; // 0x22b9df0
|
|
/* 022B9DF0 */ _t26 = cpu->r[5] + cpu->r[8];
|
|
/* 022B9DF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B9DF4 */ _t27 = cpu->r[31] + 0x00000020u;
|
|
/* 022B9DF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B9DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x0000002Au);
|
|
/* 022B9DFC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9DFC */ _t29 = _t28 & 0x00000001u;
|
|
/* 022B9DFC */ if (_t29) goto L_022B9E00; else goto L_022B9E68;
|
|
L_022B9E00: ; // 0x22b9e00
|
|
/* 022B9E00 */ goto L_022B9E14;
|
|
L_022B9E04: ; // 0x22b9e04
|
|
/* 022B9E04 */ _t30 = cpu->r[5] + 0x00000000u;
|
|
/* 022B9E04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B9E08 */ _t31 = cpu->r[31] + 0x00000020u;
|
|
/* 022B9E08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B9E0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x0000002Au);
|
|
/* 022B9E10 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9E10 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022B9E10 */ if (_t33) goto L_022B9E14; else goto L_022B9E68;
|
|
L_022B9E14: ; // 0x22b9e14
|
|
/* 022B9E14 */ _t34 = cpu->r[9] + 0xFFFFDA28u;
|
|
/* 022B9E14 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B9E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B9E1C */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9E1C */ _t36 = _t35 & 0x00000001u;
|
|
/* 022B9E1C */ if (_t36) goto L_022B9E20; else goto L_022B9E30;
|
|
L_022B9E20: ; // 0x22b9e20
|
|
/* 022B9E20 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B9E24 */ _t37 = cpu->r[9] + 0xFFFFDA28u;
|
|
/* 022B9E24 */ rbrew_write32(cpu->mem, _t37, cpu->r[11]);
|
|
/* 022B9E28 */ cpu->r[8] = cpu->r[8] + 0x00004084u;
|
|
/* 022B9E2C */ _t38 = cpu->r[4] + 0x00000000u;
|
|
/* 022B9E2C */ rbrew_write32(cpu->mem, _t38, cpu->r[8]);
|
|
L_022B9E30: ; // 0x22b9e30
|
|
/* 022B9E30 */ _t39 = cpu->r[31] + 0x00000004u;
|
|
/* 022B9E30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022B9E34 */ _t40 = cpu->r[9] + 0x00000014u;
|
|
/* 022B9E34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022B9E38 */ cpu->ctr = cpu->r[0];
|
|
/* 022B9E3C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B9E40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B9E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B9E48 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9E48 */ _t42 = _t41 & 0x00000001u;
|
|
/* 022B9E48 */ if (_t42) goto L_022B9E78; else goto L_022B9E4C;
|
|
L_022B9E4C: ; // 0x22b9e4c
|
|
/* 022B9E4C */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9E4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B9E50 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B9E54 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9E54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B9E58 */ cpu->lr = cpu->r[0];
|
|
/* 022B9E5C */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9E5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B9E60 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B9E64 */ return;
|
|
L_022B9E68: ; // 0x22b9e68
|
|
/* 022B9E68 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 022B9E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B9E6C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 022B9E70 */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 022B9E74 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9E74 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022B9E74 */ if (_t47) goto L_022B9E78; else goto L_022B9DE8;
|
|
L_022B9E78: ; // 0x22b9e78
|
|
/* 022B9E78 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022B9E7C */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 022B9E7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022B9E80 */ cpu->lr = cpu->r[0];
|
|
/* 022B9E84 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9E84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022B9E88 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B9E8C */ cpu->r[3] = 0x00000000u;
|
|
/* 022B9E90 */ return;
|
|
}
|
|
|
|
// fn_022B9E98 @ 0x22b9e98
|
|
void Gambit_fn_022B9E98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50;
|
|
|
|
L_022B9E98: ; // 0x22b9e98
|
|
/* 022B9E98 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B9E98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B9E98 */ cpu->r[1] = _t0;
|
|
/* 022B9E9C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9E9C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022B9EA0 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 022B9EA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B9EA4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9EA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B9EA8 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 022B9EA8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B9EAC */ cpu->r[29] = cpu->r[3];
|
|
/* 022B9EB0 */ cpu->r[12] = 0x00000000u;
|
|
/* 022B9EB4 */ _t5 = cpu->r[29] + 0x000023B8u;
|
|
/* 022B9EB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B9EB8 */ cpu->r[30] = cpu->r[4];
|
|
/* 022B9EBC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9EBC */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 022B9EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B9EC4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9EC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 022B9EC8 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9EC8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B9EC8 */ if (_t9) goto L_022B9ECC; else goto L_022B9F10;
|
|
L_022B9ECC: ; // 0x22b9ecc
|
|
/* 022B9ECC */ cpu->r[3] = 0x101D0000u;
|
|
/* 022B9ED0 */ _t10 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 022B9ED0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B9ED4 */ Gambit_fn_02826F20(cpu);
|
|
/* 022B9ED8 */ _t11 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B9ED8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B9EDC */ _t12 = cpu->r[6] + 0x00000034u;
|
|
/* 022B9EDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B9EE0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B9EE4 */ cpu->r[5] = 0x00000004u;
|
|
/* 022B9EE8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B9EEC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B9EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B9EF4 */ cpu->r[0] = cpu->r[31];
|
|
/* 022B9EF8 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9EF8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B9EF8 */ if (_t14) goto L_022B9F00; else goto L_022B9EFC;
|
|
L_022B9EFC: ; // 0x22b9efc
|
|
/* 022B9EFC */ cpu->r[0] = 0x00000001u;
|
|
L_022B9F00: ; // 0x22b9f00
|
|
/* 022B9F00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B9F04 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9F04 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B9F04 */ if (_t16) goto L_022B9F10; else goto L_022B9F08;
|
|
L_022B9F08: ; // 0x22b9f08
|
|
/* 022B9F08 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9F08 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 022B9F0C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9F0C */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
L_022B9F10: ; // 0x22b9f10
|
|
/* 022B9F10 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B9F14 */ _t19 = cpu->r[12] + 0x00006000u;
|
|
/* 022B9F14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B9F18 */ cpu->r[5] = cpu->r[29];
|
|
/* 022B9F1C */ _t20 = cpu->r[12] + 0x00000264u;
|
|
/* 022B9F1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B9F20 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B9F24 */ cpu->r[6] = 0x00000000u;
|
|
/* 022B9F28 */ Gambit_fn_024FE00C(cpu);
|
|
/* 022B9F2C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B9F30 */ cpu->r[5] = 0x00000000u;
|
|
/* 022B9F34 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B9F38 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B9F3C */ cpu->r[6] = 0x00000004u;
|
|
/* 022B9F40 */ Gambit_fn_028023CC(cpu);
|
|
/* 022B9F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B9F48 */ cpu->r[5] = 0x00000000u;
|
|
/* 022B9F4C */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B9F4C */ _t22 = _t21 & 0x00000001u;
|
|
/* 022B9F4C */ if (_t22) goto L_022B9F50; else goto L_022B9FC4;
|
|
L_022B9F50: ; // 0x22b9f50
|
|
/* 022B9F50 */ cpu->ctr = cpu->r[31];
|
|
/* 022B9F54 */ cpu->r[10] = 0x00000000u;
|
|
L_022B9F58: ; // 0x22b9f58
|
|
/* 022B9F58 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022B9F58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B9F5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[11]);
|
|
/* 022B9F60 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B9F60 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B9F60 */ if (_t25) goto L_022B9F64; else goto L_022B9F7C;
|
|
L_022B9F64: ; // 0x22b9f64
|
|
/* 022B9F64 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9F64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022B9F68 */ _t27 = cpu->r[12] + cpu->r[10];
|
|
/* 022B9F68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B9F6C */ _t28 = cpu->r[8] + 0x00000020u;
|
|
/* 022B9F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B9F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000002Au);
|
|
/* 022B9F74 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9F74 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022B9F74 */ if (_t30) goto L_022B9F78; else goto L_022B9FB8;
|
|
L_022B9F78: ; // 0x22b9f78
|
|
/* 022B9F78 */ goto L_022B9F90;
|
|
L_022B9F7C: ; // 0x22b9f7c
|
|
/* 022B9F7C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B9F7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022B9F80 */ _t32 = cpu->r[9] + 0x00000000u;
|
|
/* 022B9F80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B9F84 */ _t33 = cpu->r[8] + 0x00000020u;
|
|
/* 022B9F84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B9F88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000002Au);
|
|
/* 022B9F8C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B9F8C */ _t35 = _t34 & 0x00000001u;
|
|
/* 022B9F8C */ if (_t35) goto L_022B9F90; else goto L_022B9FB8;
|
|
L_022B9F90: ; // 0x22b9f90
|
|
/* 022B9F90 */ _t36 = cpu->r[30] + 0x00000000u;
|
|
/* 022B9F90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B9F94 */ _t37 = cpu->r[30] + 0x00000004u;
|
|
/* 022B9F94 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B9F98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[6]);
|
|
/* 022B9F9C */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B9F9C */ _t39 = _t38 & 0x00000001u;
|
|
/* 022B9F9C */ if (_t39) goto L_022B9FA0; else goto L_022B9FB8;
|
|
L_022B9FA0: ; // 0x22b9fa0
|
|
/* 022B9FA0 */ _t40 = cpu->r[30] + 0x00000008u;
|
|
/* 022B9FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022B9FA4 */ cpu->r[7] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022B9FA8 */ _t41 = cpu->r[7] + cpu->r[0];
|
|
/* 022B9FA8 */ rbrew_write32(cpu->mem, _t41, cpu->r[8]);
|
|
/* 022B9FAC */ _t42 = cpu->r[30] + 0x00000000u;
|
|
/* 022B9FAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B9FB0 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 022B9FB4 */ _t43 = cpu->r[30] + 0x00000000u;
|
|
/* 022B9FB4 */ rbrew_write32(cpu->mem, _t43, cpu->r[9]);
|
|
L_022B9FB8: ; // 0x22b9fb8
|
|
/* 022B9FB8 */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 022B9FBC */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 022B9FC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022B9FC0 */ _t44 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022B9FC0 */ _t45 = _t44 >> (0x00000002u & 31u);
|
|
/* 022B9FC0 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022B9FC0 */ if (_t46) goto L_022B9F58; else goto L_022B9FC4;
|
|
L_022B9FC4: ; // 0x22b9fc4
|
|
/* 022B9FC4 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 022B9FC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022B9FC8 */ _t48 = cpu->r[1] + 0x00000024u;
|
|
/* 022B9FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022B9FCC */ _t49 = cpu->r[1] + 0x00000018u;
|
|
/* 022B9FCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022B9FD0 */ cpu->lr = cpu->r[0];
|
|
/* 022B9FD4 */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B9FD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022B9FD8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B9FDC */ return;
|
|
}
|
|
|
|
// fn_022B9FE0 @ 0x22b9fe0
|
|
void Gambit_fn_022B9FE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
double _ft20, _ft21, _ft71, _ft72;
|
|
|
|
L_022B9FE0: ; // 0x22b9fe0
|
|
/* 022B9FE0 */ cpu->r[0] = cpu->lr;
|
|
/* 022B9FE4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B9FE8 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 022B9FE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B9FE8 */ cpu->r[1] = _t0;
|
|
/* 022B9FEC */ _t1 = cpu->r[11] + 0x0000402Cu;
|
|
/* 022B9FEC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022B9FF0 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 022B9FF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B9FF4 */ _t3 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B9FF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B9FF8 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 022B9FF8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B9FFC */ _t5 = cpu->r[4] + 0x00000008u;
|
|
/* 022B9FFC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BA000 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BA004 */ /* nop */
|
|
/* 022BA008 */ cpu->f[0] = cpu->f[7] - cpu->f[8];
|
|
/* 022BA00C */ /* nop */
|
|
/* 022BA010 */ _t6 = cpu->r[10] + 0x00004028u;
|
|
/* 022BA010 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BA014 */ /* nop */
|
|
/* 022BA018 */ _t7 = cpu->r[1] + 0x00000034u;
|
|
/* 022BA018 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 022BA01C */ _t8 = cpu->r[1] + 0x00000034u;
|
|
/* 022BA01C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BA020 */ /* nop */
|
|
/* 022BA024 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA024 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022BA028 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA028 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BA02C */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA02C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BA030 */ cpu->f[10] = cpu->f[7] * cpu->f[7];
|
|
/* 022BA034 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA034 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 022BA038 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA038 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BA03C */ cpu->r[8] = 0x10060000u;
|
|
/* 022BA040 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 022BA040 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BA044 */ cpu->f[6] = fma(cpu->f[0], cpu->f[0], cpu->f[10]);
|
|
/* 022BA048 */ _t15 = cpu->r[8] + 0x00004030u;
|
|
/* 022BA048 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022BA04C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA04C */ rbrew_write32(cpu->mem, _t16, cpu->r[7]);
|
|
/* 022BA050 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 022BA054 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA054 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 022BA058 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA058 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BA058 */ if (_t19) goto L_022BA05C; else goto L_022BA094;
|
|
L_022BA05C: ; // 0x22ba05c
|
|
/* 022BA05C */ _ft20 = sqrt(cpu->f[6]);
|
|
/* 022BA05C */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 022BA05C */ cpu->f[10] = _ft21 / _ft20;
|
|
/* 022BA060 */ cpu->f[8] = cpu->f[10] * cpu->f[10];
|
|
/* 022BA064 */ cpu->f[9] = cpu->f[10] * cpu->f[13];
|
|
/* 022BA068 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[6], -(cpu->f[0]));
|
|
/* 022BA06C */ cpu->f[10] = cpu->f[8] * cpu->f[9];
|
|
/* 022BA070 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA070 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BA074 */ /* nop */
|
|
/* 022BA078 */ cpu->f[7] = cpu->f[7] * cpu->f[10];
|
|
/* 022BA07C */ /* nop */
|
|
/* 022BA080 */ /* nop */
|
|
/* 022BA084 */ /* nop */
|
|
/* 022BA088 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA088 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[7]);
|
|
/* 022BA08C */ cpu->f[6] = cpu->f[6] * cpu->f[10];
|
|
/* 022BA090 */ /* nop */
|
|
L_022BA094: ; // 0x22ba094
|
|
/* 022BA094 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BA098 */ _t24 = cpu->r[11] + 0x00004114u;
|
|
/* 022BA098 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BA09C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[11]);
|
|
/* 022BA0A0 */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA0A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022BA0A0 */ if (_t26) goto L_022BA0C0; else goto L_022BA0A4;
|
|
L_022BA0A4: ; // 0x22ba0a4
|
|
/* 022BA0A4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 022BA0A8 */ _t27 = cpu->r[11] + 0x0000635Cu;
|
|
/* 022BA0A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BA0A8 */ cpu->r[11] = _t27;
|
|
/* 022BA0AC */ _t28 = cpu->r[11] + 0x00000004u;
|
|
/* 022BA0AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022BA0B0 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA0B0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[10]);
|
|
/* 022BA0B4 */ _t30 = cpu->r[11] + 0x00000008u;
|
|
/* 022BA0B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BA0B8 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA0B8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[11]);
|
|
/* 022BA0BC */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA0BC */ rbrew_write_f32(cpu->mem, _t32, cpu->f[7]);
|
|
L_022BA0C0: ; // 0x22ba0c0
|
|
/* 022BA0C0 */ /* nop */
|
|
/* 022BA0C4 */ cpu->f[11] = cpu->f[7] * cpu->f[1];
|
|
/* 022BA0C8 */ _t33 = cpu->r[4] + 0x00000008u;
|
|
/* 022BA0C8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BA0CC */ /* nop */
|
|
/* 022BA0D0 */ /* nop */
|
|
/* 022BA0D4 */ _t34 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BA0D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BA0D8 */ _t35 = cpu->r[1] + 0x00000040u;
|
|
/* 022BA0D8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 022BA0DC */ _t36 = cpu->r[1] + 0x00000040u;
|
|
/* 022BA0DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022BA0E0 */ _t37 = cpu->r[1] + 0x00000078u;
|
|
/* 022BA0E0 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 022BA0E4 */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 022BA0E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022BA0E8 */ _t39 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BA0E8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 022BA0EC */ _t40 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BA0EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BA0F0 */ _t41 = cpu->r[1] + 0x00000074u;
|
|
/* 022BA0F0 */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 022BA0F4 */ cpu->f[11] = cpu->f[7] + cpu->f[10];
|
|
/* 022BA0F8 */ /* nop */
|
|
/* 022BA0FC */ /* nop */
|
|
/* 022BA100 */ /* nop */
|
|
/* 022BA104 */ _t42 = cpu->r[1] + 0x00000044u;
|
|
/* 022BA104 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022BA108 */ _t43 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BA108 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[11]);
|
|
/* 022BA10C */ _t44 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BA10C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BA110 */ _t45 = cpu->r[1] + 0x00000048u;
|
|
/* 022BA110 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022BA114 */ _t46 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BA114 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 022BA118 */ _t47 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BA118 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BA11C */ _t48 = cpu->r[1] + 0x00000060u;
|
|
/* 022BA11C */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 022BA120 */ _t49 = cpu->r[1] + 0x00000060u;
|
|
/* 022BA120 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022BA124 */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 022BA124 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 022BA128 */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA128 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 022BA12C */ /* nop */
|
|
/* 022BA130 */ _t52 = cpu->r[3] + 0x00000008u;
|
|
/* 022BA130 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022BA134 */ /* nop */
|
|
/* 022BA138 */ _t53 = cpu->r[1] + 0x00000064u;
|
|
/* 022BA138 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 022BA13C */ _t54 = cpu->r[1] + 0x00000064u;
|
|
/* 022BA13C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022BA140 */ /* nop */
|
|
/* 022BA144 */ _t55 = cpu->r[1] + 0x00000054u;
|
|
/* 022BA144 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022BA148 */ _t56 = cpu->r[1] + 0x00000050u;
|
|
/* 022BA148 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022BA14C */ cpu->f[9] = cpu->f[11] - cpu->f[10];
|
|
/* 022BA150 */ _t57 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BA150 */ rbrew_write32(cpu->mem, _t57, cpu->r[7]);
|
|
/* 022BA154 */ _t58 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BA154 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022BA158 */ _t59 = cpu->r[1] + 0x00000068u;
|
|
/* 022BA158 */ rbrew_write32(cpu->mem, _t59, cpu->r[12]);
|
|
/* 022BA15C */ _t60 = cpu->r[1] + 0x00000058u;
|
|
/* 022BA15C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[9]);
|
|
/* 022BA160 */ _t61 = cpu->r[1] + 0x00000058u;
|
|
/* 022BA160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022BA164 */ cpu->f[11] = cpu->f[6] * cpu->f[6];
|
|
/* 022BA168 */ _t62 = cpu->r[1] + 0x00000068u;
|
|
/* 022BA168 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022BA16C */ _t63 = cpu->r[1] + 0x00000070u;
|
|
/* 022BA16C */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 022BA170 */ cpu->f[7] = fma(cpu->f[9], cpu->f[9], cpu->f[11]);
|
|
/* 022BA174 */ _t64 = cpu->r[1] + 0x00000070u;
|
|
/* 022BA174 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022BA178 */ _t65 = cpu->r[1] + 0x00000018u;
|
|
/* 022BA178 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[6]);
|
|
/* 022BA17C */ cpu->f[11] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 022BA180 */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA180 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[8]);
|
|
/* 022BA184 */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA184 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[9]);
|
|
/* 022BA188 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 022BA18C */ _t68 = cpu->r[1] + 0x00000028u;
|
|
/* 022BA18C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[10]);
|
|
/* 022BA190 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA190 */ _t70 = _t69 & 0x00000001u;
|
|
/* 022BA190 */ if (_t70) goto L_022BA194; else goto L_022BA1C0;
|
|
L_022BA194: ; // 0x22ba194
|
|
/* 022BA194 */ _ft71 = sqrt(cpu->f[11]);
|
|
/* 022BA194 */ _ft72 = (double)(int32_t)0x00000001u;
|
|
/* 022BA194 */ cpu->f[7] = _ft72 / _ft71;
|
|
/* 022BA198 */ cpu->f[8] = cpu->f[7] * cpu->f[7];
|
|
/* 022BA19C */ cpu->f[9] = cpu->f[7] * cpu->f[13];
|
|
/* 022BA1A0 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[11], -(cpu->f[0]));
|
|
/* 022BA1A4 */ cpu->f[7] = cpu->f[8] * cpu->f[9];
|
|
/* 022BA1A8 */ _t73 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA1A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 022BA1AC */ /* nop */
|
|
/* 022BA1B0 */ cpu->f[9] = cpu->f[9] * cpu->f[7];
|
|
/* 022BA1B4 */ /* nop */
|
|
/* 022BA1B8 */ _t74 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA1B8 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[9]);
|
|
/* 022BA1BC */ /* nop */
|
|
L_022BA1C0: ; // 0x22ba1c0
|
|
/* 022BA1C0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022BA1C4 */ _t75 = cpu->r[12] + 0x00006000u;
|
|
/* 022BA1C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022BA1C8 */ _t76 = cpu->r[12] + 0x00000268u;
|
|
/* 022BA1C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022BA1CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA1D0 */ Gambit_fn_0261F774(cpu);
|
|
/* 022BA1D4 */ cpu->r[4] = cpu->r[3];
|
|
/* 022BA1D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA1DC */ Gambit_fn_0261F55C(cpu);
|
|
/* 022BA1E0 */ cpu->r[7] = 0x00000001u;
|
|
/* 022BA1E4 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 022BA1E8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BA1EC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022BA1F0 */ Gambit_fn_025C7EF8(cpu);
|
|
/* 022BA1F4 */ _t77 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BA1F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022BA1F8 */ _t78 = cpu->r[1] + 0x00000084u;
|
|
/* 022BA1F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022BA1FC */ cpu->lr = cpu->r[0];
|
|
/* 022BA200 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 022BA204 */ return;
|
|
}
|
|
|
|
// fn_022B9FE8 @ 0x22b9fe8
|
|
void Gambit_fn_022B9FE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
double _ft20, _ft21, _ft71, _ft72;
|
|
|
|
L_022B9FE8: ; // 0x22b9fe8
|
|
/* 022B9FE8 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 022B9FE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B9FE8 */ cpu->r[1] = _t0;
|
|
/* 022B9FEC */ _t1 = cpu->r[11] + 0x0000402Cu;
|
|
/* 022B9FEC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022B9FF0 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 022B9FF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B9FF4 */ _t3 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022B9FF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B9FF8 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 022B9FF8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022B9FFC */ _t5 = cpu->r[4] + 0x00000008u;
|
|
/* 022B9FFC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BA000 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BA004 */ /* nop */
|
|
/* 022BA008 */ cpu->f[0] = cpu->f[7] - cpu->f[8];
|
|
/* 022BA00C */ /* nop */
|
|
/* 022BA010 */ _t6 = cpu->r[10] + 0x00004028u;
|
|
/* 022BA010 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BA014 */ /* nop */
|
|
/* 022BA018 */ _t7 = cpu->r[1] + 0x00000034u;
|
|
/* 022BA018 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 022BA01C */ _t8 = cpu->r[1] + 0x00000034u;
|
|
/* 022BA01C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BA020 */ /* nop */
|
|
/* 022BA024 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA024 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022BA028 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA028 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BA02C */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA02C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BA030 */ cpu->f[10] = cpu->f[7] * cpu->f[7];
|
|
/* 022BA034 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA034 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 022BA038 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA038 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BA03C */ cpu->r[8] = 0x10060000u;
|
|
/* 022BA040 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 022BA040 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BA044 */ cpu->f[6] = fma(cpu->f[0], cpu->f[0], cpu->f[10]);
|
|
/* 022BA048 */ _t15 = cpu->r[8] + 0x00004030u;
|
|
/* 022BA048 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022BA04C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA04C */ rbrew_write32(cpu->mem, _t16, cpu->r[7]);
|
|
/* 022BA050 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[12]);
|
|
/* 022BA054 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA054 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 022BA058 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA058 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BA058 */ if (_t19) goto L_022BA05C; else goto L_022BA094;
|
|
L_022BA05C: ; // 0x22ba05c
|
|
/* 022BA05C */ _ft20 = sqrt(cpu->f[6]);
|
|
/* 022BA05C */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 022BA05C */ cpu->f[10] = _ft21 / _ft20;
|
|
/* 022BA060 */ cpu->f[8] = cpu->f[10] * cpu->f[10];
|
|
/* 022BA064 */ cpu->f[9] = cpu->f[10] * cpu->f[13];
|
|
/* 022BA068 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[6], -(cpu->f[0]));
|
|
/* 022BA06C */ cpu->f[10] = cpu->f[8] * cpu->f[9];
|
|
/* 022BA070 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA070 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BA074 */ /* nop */
|
|
/* 022BA078 */ cpu->f[7] = cpu->f[7] * cpu->f[10];
|
|
/* 022BA07C */ /* nop */
|
|
/* 022BA080 */ /* nop */
|
|
/* 022BA084 */ /* nop */
|
|
/* 022BA088 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA088 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[7]);
|
|
/* 022BA08C */ cpu->f[6] = cpu->f[6] * cpu->f[10];
|
|
/* 022BA090 */ /* nop */
|
|
L_022BA094: ; // 0x22ba094
|
|
/* 022BA094 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BA098 */ _t24 = cpu->r[11] + 0x00004114u;
|
|
/* 022BA098 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BA09C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[11]);
|
|
/* 022BA0A0 */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA0A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022BA0A0 */ if (_t26) goto L_022BA0C0; else goto L_022BA0A4;
|
|
L_022BA0A4: ; // 0x22ba0a4
|
|
/* 022BA0A4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 022BA0A8 */ _t27 = cpu->r[11] + 0x0000635Cu;
|
|
/* 022BA0A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BA0A8 */ cpu->r[11] = _t27;
|
|
/* 022BA0AC */ _t28 = cpu->r[11] + 0x00000004u;
|
|
/* 022BA0AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022BA0B0 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA0B0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[10]);
|
|
/* 022BA0B4 */ _t30 = cpu->r[11] + 0x00000008u;
|
|
/* 022BA0B4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BA0B8 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA0B8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[11]);
|
|
/* 022BA0BC */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA0BC */ rbrew_write_f32(cpu->mem, _t32, cpu->f[7]);
|
|
L_022BA0C0: ; // 0x22ba0c0
|
|
/* 022BA0C0 */ /* nop */
|
|
/* 022BA0C4 */ cpu->f[11] = cpu->f[7] * cpu->f[1];
|
|
/* 022BA0C8 */ _t33 = cpu->r[4] + 0x00000008u;
|
|
/* 022BA0C8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BA0CC */ /* nop */
|
|
/* 022BA0D0 */ /* nop */
|
|
/* 022BA0D4 */ _t34 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BA0D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BA0D8 */ _t35 = cpu->r[1] + 0x00000040u;
|
|
/* 022BA0D8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 022BA0DC */ _t36 = cpu->r[1] + 0x00000040u;
|
|
/* 022BA0DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022BA0E0 */ _t37 = cpu->r[1] + 0x00000078u;
|
|
/* 022BA0E0 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 022BA0E4 */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 022BA0E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022BA0E8 */ _t39 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BA0E8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 022BA0EC */ _t40 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BA0EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BA0F0 */ _t41 = cpu->r[1] + 0x00000074u;
|
|
/* 022BA0F0 */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 022BA0F4 */ cpu->f[11] = cpu->f[7] + cpu->f[10];
|
|
/* 022BA0F8 */ /* nop */
|
|
/* 022BA0FC */ /* nop */
|
|
/* 022BA100 */ /* nop */
|
|
/* 022BA104 */ _t42 = cpu->r[1] + 0x00000044u;
|
|
/* 022BA104 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022BA108 */ _t43 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BA108 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[11]);
|
|
/* 022BA10C */ _t44 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BA10C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BA110 */ _t45 = cpu->r[1] + 0x00000048u;
|
|
/* 022BA110 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022BA114 */ _t46 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BA114 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 022BA118 */ _t47 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BA118 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BA11C */ _t48 = cpu->r[1] + 0x00000060u;
|
|
/* 022BA11C */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 022BA120 */ _t49 = cpu->r[1] + 0x00000060u;
|
|
/* 022BA120 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022BA124 */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 022BA124 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 022BA128 */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA128 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 022BA12C */ /* nop */
|
|
/* 022BA130 */ _t52 = cpu->r[3] + 0x00000008u;
|
|
/* 022BA130 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022BA134 */ /* nop */
|
|
/* 022BA138 */ _t53 = cpu->r[1] + 0x00000064u;
|
|
/* 022BA138 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 022BA13C */ _t54 = cpu->r[1] + 0x00000064u;
|
|
/* 022BA13C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022BA140 */ /* nop */
|
|
/* 022BA144 */ _t55 = cpu->r[1] + 0x00000054u;
|
|
/* 022BA144 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022BA148 */ _t56 = cpu->r[1] + 0x00000050u;
|
|
/* 022BA148 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022BA14C */ cpu->f[9] = cpu->f[11] - cpu->f[10];
|
|
/* 022BA150 */ _t57 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BA150 */ rbrew_write32(cpu->mem, _t57, cpu->r[7]);
|
|
/* 022BA154 */ _t58 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BA154 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022BA158 */ _t59 = cpu->r[1] + 0x00000068u;
|
|
/* 022BA158 */ rbrew_write32(cpu->mem, _t59, cpu->r[12]);
|
|
/* 022BA15C */ _t60 = cpu->r[1] + 0x00000058u;
|
|
/* 022BA15C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[9]);
|
|
/* 022BA160 */ _t61 = cpu->r[1] + 0x00000058u;
|
|
/* 022BA160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022BA164 */ cpu->f[11] = cpu->f[6] * cpu->f[6];
|
|
/* 022BA168 */ _t62 = cpu->r[1] + 0x00000068u;
|
|
/* 022BA168 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022BA16C */ _t63 = cpu->r[1] + 0x00000070u;
|
|
/* 022BA16C */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 022BA170 */ cpu->f[7] = fma(cpu->f[9], cpu->f[9], cpu->f[11]);
|
|
/* 022BA174 */ _t64 = cpu->r[1] + 0x00000070u;
|
|
/* 022BA174 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022BA178 */ _t65 = cpu->r[1] + 0x00000018u;
|
|
/* 022BA178 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[6]);
|
|
/* 022BA17C */ cpu->f[11] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 022BA180 */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA180 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[8]);
|
|
/* 022BA184 */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA184 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[9]);
|
|
/* 022BA188 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 022BA18C */ _t68 = cpu->r[1] + 0x00000028u;
|
|
/* 022BA18C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[10]);
|
|
/* 022BA190 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA190 */ _t70 = _t69 & 0x00000001u;
|
|
/* 022BA190 */ if (_t70) goto L_022BA194; else goto L_022BA1C0;
|
|
L_022BA194: ; // 0x22ba194
|
|
/* 022BA194 */ _ft71 = sqrt(cpu->f[11]);
|
|
/* 022BA194 */ _ft72 = (double)(int32_t)0x00000001u;
|
|
/* 022BA194 */ cpu->f[7] = _ft72 / _ft71;
|
|
/* 022BA198 */ cpu->f[8] = cpu->f[7] * cpu->f[7];
|
|
/* 022BA19C */ cpu->f[9] = cpu->f[7] * cpu->f[13];
|
|
/* 022BA1A0 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[11], -(cpu->f[0]));
|
|
/* 022BA1A4 */ cpu->f[7] = cpu->f[8] * cpu->f[9];
|
|
/* 022BA1A8 */ _t73 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA1A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 022BA1AC */ /* nop */
|
|
/* 022BA1B0 */ cpu->f[9] = cpu->f[9] * cpu->f[7];
|
|
/* 022BA1B4 */ /* nop */
|
|
/* 022BA1B8 */ _t74 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA1B8 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[9]);
|
|
/* 022BA1BC */ /* nop */
|
|
L_022BA1C0: ; // 0x22ba1c0
|
|
/* 022BA1C0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022BA1C4 */ _t75 = cpu->r[12] + 0x00006000u;
|
|
/* 022BA1C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022BA1C8 */ _t76 = cpu->r[12] + 0x00000268u;
|
|
/* 022BA1C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022BA1CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA1D0 */ Gambit_fn_0261F774(cpu);
|
|
/* 022BA1D4 */ cpu->r[4] = cpu->r[3];
|
|
/* 022BA1D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA1DC */ Gambit_fn_0261F55C(cpu);
|
|
/* 022BA1E0 */ cpu->r[7] = 0x00000001u;
|
|
/* 022BA1E4 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 022BA1E8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BA1EC */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022BA1F0 */ Gambit_fn_025C7EF8(cpu);
|
|
/* 022BA1F4 */ _t77 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BA1F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022BA1F8 */ _t78 = cpu->r[1] + 0x00000084u;
|
|
/* 022BA1F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022BA1FC */ cpu->lr = cpu->r[0];
|
|
/* 022BA200 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 022BA204 */ return;
|
|
}
|
|
|
|
// fn_022BA208 @ 0x22ba208
|
|
void Gambit_fn_022BA208(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _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;
|
|
double _ft25, _ft26, _ft48, _ft49;
|
|
|
|
L_022BA208: ; // 0x22ba208
|
|
/* 022BA208 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 022BA208 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BA208 */ cpu->r[1] = _t0;
|
|
/* 022BA20C */ cpu->r[0] = cpu->lr;
|
|
/* 022BA210 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 022BA210 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 022BA214 */ /* nop */
|
|
/* 022BA218 */ _t2 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BA218 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BA21C */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 022BA21C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022BA220 */ /* nop */
|
|
/* 022BA224 */ _t4 = cpu->r[1] + 0x00000088u;
|
|
/* 022BA224 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 022BA228 */ /* nop */
|
|
/* 022BA22C */ _t5 = cpu->r[1] + 0x000000A8u;
|
|
/* 022BA22C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 022BA230 */ _t6 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BA230 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 022BA234 */ _t7 = cpu->r[1] + 0x000000B4u;
|
|
/* 022BA234 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022BA238 */ _t8 = cpu->r[1] + 0x00000098u;
|
|
/* 022BA238 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 022BA23C */ cpu->r[31] = cpu->r[4];
|
|
/* 022BA240 */ _t9 = cpu->r[1] + 0x00000078u;
|
|
/* 022BA240 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 022BA244 */ _t10 = cpu->r[31] + 0x00000008u;
|
|
/* 022BA244 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BA248 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022BA248 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BA24C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA24C */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 022BA250 */ _t13 = cpu->r[12] + 0x00000004u;
|
|
/* 022BA250 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BA254 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA254 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BA258 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 022BA258 */ rbrew_write32(cpu->mem, _t15, cpu->r[8]);
|
|
/* 022BA25C */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 022BA25C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BA260 */ _t17 = cpu->r[12] + 0x00000008u;
|
|
/* 022BA260 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BA264 */ cpu->f[0] = cpu->f[10] * cpu->f[10];
|
|
/* 022BA268 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA268 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
/* 022BA26C */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA26C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BA270 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BA274 */ cpu->f[8] = fma(cpu->f[7], cpu->f[7], cpu->f[0]);
|
|
/* 022BA278 */ _t20 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022BA278 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022BA27C */ cpu->r[6] = 0x10060000u;
|
|
/* 022BA280 */ cpu->f[7] = fma(cpu->f[11], cpu->f[11], cpu->f[8]);
|
|
/* 022BA284 */ _t21 = cpu->r[6] + 0x00004030u;
|
|
/* 022BA284 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022BA288 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BA28C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[29]);
|
|
/* 022BA290 */ _t22 = cpu->r[11] + 0x00004028u;
|
|
/* 022BA290 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BA294 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BA298 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA298 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022BA298 */ if (_t24) goto L_022BA29C; else goto L_022BA2C8;
|
|
L_022BA29C: ; // 0x22ba29c
|
|
/* 022BA29C */ _ft25 = sqrt(cpu->f[7]);
|
|
/* 022BA29C */ _ft26 = (double)(int32_t)0x00000001u;
|
|
/* 022BA29C */ cpu->f[9] = _ft26 / _ft25;
|
|
/* 022BA2A0 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 022BA2A4 */ cpu->f[11] = cpu->f[9] * cpu->f[30];
|
|
/* 022BA2A8 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[7], -(cpu->f[31]));
|
|
/* 022BA2AC */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 022BA2B0 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA2B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BA2B4 */ /* nop */
|
|
/* 022BA2B8 */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 022BA2BC */ /* nop */
|
|
/* 022BA2C0 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA2C0 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 022BA2C4 */ /* nop */
|
|
L_022BA2C8: ; // 0x22ba2c8
|
|
/* 022BA2C8 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022BA2CC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022BA2D0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022BA2D4 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022BA2D8 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022BA2DC */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 022BA2DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022BA2E0 */ _t30 = cpu->r[31] + 0x00000004u;
|
|
/* 022BA2E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022BA2E4 */ /* nop */
|
|
/* 022BA2E8 */ /* nop */
|
|
/* 022BA2EC */ /* nop */
|
|
/* 022BA2F0 */ /* nop */
|
|
/* 022BA2F4 */ _t31 = cpu->r[9] + 0x00000008u;
|
|
/* 022BA2F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022BA2F8 */ _t32 = cpu->r[7] + 0x00000008u;
|
|
/* 022BA2F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022BA2FC */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 022BA2FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BA300 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA300 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BA304 */ cpu->f[10] = cpu->f[12] - cpu->f[8];
|
|
/* 022BA308 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA308 */ rbrew_write32(cpu->mem, _t35, cpu->r[8]);
|
|
/* 022BA30C */ _t36 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA30C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022BA310 */ _t37 = cpu->r[1] + 0x00000020u;
|
|
/* 022BA310 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 022BA314 */ _t38 = cpu->r[1] + 0x00000020u;
|
|
/* 022BA314 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022BA318 */ cpu->f[11] = cpu->f[12] * cpu->f[12];
|
|
/* 022BA31C */ _t39 = cpu->r[1] + 0x00000034u;
|
|
/* 022BA31C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[10]);
|
|
/* 022BA320 */ _t40 = cpu->r[1] + 0x00000034u;
|
|
/* 022BA320 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BA324 */ cpu->f[12] = fma(cpu->f[9], cpu->f[9], cpu->f[11]);
|
|
/* 022BA328 */ _t41 = cpu->r[1] + 0x00000028u;
|
|
/* 022BA328 */ rbrew_write32(cpu->mem, _t41, cpu->r[10]);
|
|
/* 022BA32C */ _t42 = cpu->r[1] + 0x00000028u;
|
|
/* 022BA32C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022BA330 */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 022BA334 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 022BA338 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA338 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022BA338 */ if (_t44) goto L_022BA360; else goto L_022BA33C;
|
|
L_022BA33C: ; // 0x22ba33c
|
|
/* 022BA33C */ /* nop */
|
|
/* 022BA340 */ /* nop */
|
|
/* 022BA344 */ /* nop */
|
|
/* 022BA348 */ /* nop */
|
|
/* 022BA34C */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA34C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022BA350 */ cpu->f[7] = fma(cpu->f[13], cpu->f[9], cpu->f[10]);
|
|
/* 022BA354 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[29]);
|
|
/* 022BA358 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BA358 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022BA358 */ if (_t47) goto L_022BA35C; else goto L_022BA3CC;
|
|
L_022BA35C: ; // 0x22ba35c
|
|
/* 022BA35C */ goto L_022BA3A4;
|
|
L_022BA360: ; // 0x22ba360
|
|
/* 022BA360 */ _ft48 = sqrt(cpu->f[11]);
|
|
/* 022BA360 */ _ft49 = (double)(int32_t)0x00000001u;
|
|
/* 022BA360 */ cpu->f[13] = _ft49 / _ft48;
|
|
/* 022BA364 */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 022BA368 */ cpu->f[9] = cpu->f[13] * cpu->f[30];
|
|
/* 022BA36C */ cpu->f[7] = -fma(cpu->f[7], cpu->f[11], -(cpu->f[31]));
|
|
/* 022BA370 */ cpu->f[13] = cpu->f[7] * cpu->f[9];
|
|
/* 022BA374 */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 022BA374 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022BA378 */ /* nop */
|
|
/* 022BA37C */ cpu->f[9] = cpu->f[9] * cpu->f[13];
|
|
/* 022BA380 */ /* nop */
|
|
/* 022BA384 */ /* nop */
|
|
/* 022BA388 */ /* nop */
|
|
/* 022BA38C */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA38C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022BA390 */ /* nop */
|
|
/* 022BA394 */ cpu->f[7] = fma(cpu->f[13], cpu->f[9], cpu->f[10]);
|
|
/* 022BA398 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[29]);
|
|
/* 022BA39C */ _t52 = cpu->r[1] + 0x00000028u;
|
|
/* 022BA39C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[9]);
|
|
/* 022BA3A0 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BA3A0 */ _t54 = _t53 & 0x00000001u;
|
|
/* 022BA3A0 */ if (_t54) goto L_022BA3A4; else goto L_022BA3CC;
|
|
L_022BA3A4: ; // 0x22ba3a4
|
|
/* 022BA3A4 */ _t55 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA3A4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022BA3A8 */ cpu->f[13] = -cpu->f[13];
|
|
/* 022BA3AC */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA3AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022BA3B0 */ cpu->f[8] = -cpu->f[10];
|
|
/* 022BA3B4 */ _t57 = cpu->r[1] + 0x00000028u;
|
|
/* 022BA3B4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022BA3B8 */ cpu->f[11] = -cpu->f[12];
|
|
/* 022BA3BC */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA3BC */ rbrew_write_f32(cpu->mem, _t58, cpu->f[8]);
|
|
/* 022BA3C0 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA3C0 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
/* 022BA3C4 */ /* nop */
|
|
/* 022BA3C8 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA3C8 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[13]);
|
|
L_022BA3CC: ; // 0x22ba3cc
|
|
/* 022BA3CC */ _t61 = cpu->r[31] + 0x00000010u;
|
|
/* 022BA3CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022BA3D0 */ _t62 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022BA3D0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022BA3D4 */ /* nop */
|
|
/* 022BA3D8 */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA3D8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022BA3DC */ /* nop */
|
|
/* 022BA3E0 */ _t64 = cpu->r[1] + 0x00000044u;
|
|
/* 022BA3E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022BA3E4 */ /* nop */
|
|
/* 022BA3E8 */ _t65 = cpu->r[1] + 0x00000048u;
|
|
/* 022BA3E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022BA3EC */ /* nop */
|
|
/* 022BA3F0 */ cpu->f[8] = cpu->f[9] * cpu->f[10];
|
|
/* 022BA3F4 */ _t66 = cpu->r[1] + 0x00000068u;
|
|
/* 022BA3F4 */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 022BA3F8 */ _t67 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BA3F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022BA3FC */ cpu->f[10] = cpu->f[12] * cpu->f[13];
|
|
/* 022BA400 */ _t68 = cpu->r[1] + 0x00000040u;
|
|
/* 022BA400 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[8]);
|
|
/* 022BA404 */ _t69 = cpu->r[1] + 0x00000040u;
|
|
/* 022BA404 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022BA408 */ _t70 = cpu->r[1] + 0x00000060u;
|
|
/* 022BA408 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 022BA40C */ _t71 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BA40C */ rbrew_write32(cpu->mem, _t71, cpu->r[11]);
|
|
/* 022BA410 */ /* nop */
|
|
/* 022BA414 */ _t72 = cpu->r[1] + 0x00000038u;
|
|
/* 022BA414 */ cpu->r[7] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022BA418 */ _t73 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BA418 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[10]);
|
|
/* 022BA41C */ _t74 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BA41C */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022BA420 */ _t75 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BA420 */ rbrew_write32(cpu->mem, _t75, cpu->r[7]);
|
|
/* 022BA424 */ /* nop */
|
|
/* 022BA428 */ _t76 = cpu->r[1] + 0x00000070u;
|
|
/* 022BA428 */ rbrew_write32(cpu->mem, _t76, cpu->r[0]);
|
|
/* 022BA42C */ _t77 = cpu->r[1] + 0x00000070u;
|
|
/* 022BA42C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 022BA430 */ /* nop */
|
|
/* 022BA434 */ _t78 = cpu->r[1] + 0x00000064u;
|
|
/* 022BA434 */ rbrew_write32(cpu->mem, _t78, cpu->r[9]);
|
|
/* 022BA438 */ _t79 = cpu->r[1] + 0x00000064u;
|
|
/* 022BA438 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022BA43C */ /* nop */
|
|
/* 022BA440 */ _t80 = cpu->r[1] + 0x00000050u;
|
|
/* 022BA440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022BA444 */ cpu->f[10] = cpu->f[11] + cpu->f[12];
|
|
/* 022BA448 */ _t81 = cpu->r[1] + 0x00000054u;
|
|
/* 022BA448 */ cpu->r[12] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022BA44C */ _t82 = cpu->r[30] + 0x00000000u;
|
|
/* 022BA44C */ rbrew_write32(cpu->mem, _t82, cpu->r[0]);
|
|
/* 022BA450 */ _t83 = cpu->r[1] + 0x00000058u;
|
|
/* 022BA450 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[10]);
|
|
/* 022BA454 */ _t84 = cpu->r[1] + 0x00000058u;
|
|
/* 022BA454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022BA458 */ _t85 = cpu->r[30] + 0x00000008u;
|
|
/* 022BA458 */ rbrew_write32(cpu->mem, _t85, cpu->r[0]);
|
|
/* 022BA45C */ _t86 = cpu->r[30] + 0x00000004u;
|
|
/* 022BA45C */ rbrew_write32(cpu->mem, _t86, cpu->r[12]);
|
|
/* 022BA460 */ _t87 = cpu->r[1] + 0x000000A8u;
|
|
/* 022BA460 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 022BA464 */ _t88 = cpu->r[1] + 0x00000088u;
|
|
/* 022BA464 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 022BA468 */ _t89 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BA468 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 022BA46C */ _t90 = cpu->r[1] + 0x00000098u;
|
|
/* 022BA46C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 022BA470 */ _t91 = cpu->r[1] + 0x00000080u;
|
|
/* 022BA470 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 022BA474 */ _t92 = cpu->r[1] + 0x00000090u;
|
|
/* 022BA474 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t92);
|
|
/* 022BA478 */ _t93 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BA478 */ cpu->r[31] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022BA47C */ _t94 = cpu->r[1] + 0x00000078u;
|
|
/* 022BA47C */ cpu->r[30] = rbrew_read32(cpu->mem, _t94);
|
|
/* 022BA480 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BA480 */ _t96 = _t95 & 0x00000001u;
|
|
/* 022BA480 */ if (_t96) goto L_022BA484; // else: addr-0 trap, fall-through
|
|
L_022BA484: ; // 0x22ba484
|
|
/* 022BA484 */ _t97 = cpu->r[1] + 0x000000B4u;
|
|
/* 022BA484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022BA488 */ cpu->lr = cpu->r[0];
|
|
/* 022BA48C */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 022BA490 */ return;
|
|
}
|
|
|
|
// fn_022BA494 @ 0x22ba494
|
|
void Gambit_fn_022BA494(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_022BA494: ; // 0x22ba494
|
|
/* 022BA494 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022BA494 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BA494 */ cpu->r[1] = _t0;
|
|
/* 022BA498 */ /* nop */
|
|
/* 022BA49C */ _t1 = cpu->r[4] + 0x0000002Cu;
|
|
/* 022BA49C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022BA4A0 */ /* nop */
|
|
/* 022BA4A4 */ /* nop */
|
|
/* 022BA4A8 */ _t2 = cpu->r[4] + 0x00000020u;
|
|
/* 022BA4A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BA4AC */ /* nop */
|
|
/* 022BA4B0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA4B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BA4B4 */ cpu->f[13] = cpu->f[0] * cpu->f[1];
|
|
/* 022BA4B8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA4B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BA4BC */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 022BA4BC */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 022BA4C0 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA4C0 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 022BA4C4 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA4C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BA4C8 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA4C8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022BA4CC */ /* nop */
|
|
/* 022BA4D0 */ _t9 = cpu->r[1] + 0x00000028u;
|
|
/* 022BA4D0 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 022BA4D4 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 022BA4D4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BA4D8 */ /* nop */
|
|
/* 022BA4DC */ /* nop */
|
|
/* 022BA4E0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA4E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BA4E4 */ cpu->f[0] = cpu->f[10] + cpu->f[12];
|
|
/* 022BA4E8 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 022BA4E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BA4EC */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 022BA4EC */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 022BA4F0 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA4F0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 022BA4F4 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BA4F8 */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 022BA4F8 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 022BA4FC */ _t17 = cpu->r[3] + 0x00000008u;
|
|
/* 022BA4FC */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022BA500 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022BA504 */ return;
|
|
}
|
|
|
|
// fn_022BA508 @ 0x22ba508
|
|
void Gambit_fn_022BA508(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
double _ft20, _ft21;
|
|
|
|
L_022BA508: ; // 0x22ba508
|
|
/* 022BA508 */ cpu->r[0] = cpu->lr;
|
|
/* 022BA50C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022BA50C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BA50C */ cpu->r[1] = _t0;
|
|
/* 022BA510 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA510 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BA514 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA514 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BA518 */ _t3 = cpu->r[4] + 0x00000008u;
|
|
/* 022BA518 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022BA51C */ _t4 = cpu->r[5] + 0x00000008u;
|
|
/* 022BA51C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022BA520 */ /* nop */
|
|
/* 022BA524 */ cpu->f[7] = cpu->f[8] - cpu->f[7];
|
|
/* 022BA528 */ /* nop */
|
|
/* 022BA52C */ /* nop */
|
|
/* 022BA530 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA530 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[7]);
|
|
/* 022BA534 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA534 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BA538 */ /* nop */
|
|
/* 022BA53C */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA53C */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 022BA540 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA540 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BA544 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BA548 */ cpu->f[7] = cpu->f[10] * cpu->f[10];
|
|
/* 022BA54C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA54C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022BA550 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA550 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BA554 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BA558 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 022BA558 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BA55C */ cpu->f[9] = fma(cpu->f[11], cpu->f[11], cpu->f[7]);
|
|
/* 022BA560 */ _t13 = cpu->r[9] + 0x0000402Cu;
|
|
/* 022BA560 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BA564 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA564 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022BA568 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 022BA56C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA56C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022BA570 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BA574 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA574 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BA574 */ if (_t17) goto L_022BA578; else goto L_022BA5B8;
|
|
L_022BA578: ; // 0x22ba578
|
|
/* 022BA578 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BA57C */ cpu->r[10] = 0x10060000u;
|
|
/* 022BA580 */ _t18 = cpu->r[11] + 0x00004030u;
|
|
/* 022BA580 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BA584 */ _t19 = cpu->r[10] + 0x00004028u;
|
|
/* 022BA584 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BA588 */ _ft20 = sqrt(cpu->f[9]);
|
|
/* 022BA588 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 022BA588 */ cpu->f[8] = _ft21 / _ft20;
|
|
/* 022BA58C */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 022BA590 */ cpu->f[0] = cpu->f[8] * cpu->f[12];
|
|
/* 022BA594 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[9], -(cpu->f[13]));
|
|
/* 022BA598 */ cpu->f[8] = cpu->f[11] * cpu->f[0];
|
|
/* 022BA59C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA59C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BA5A0 */ /* nop */
|
|
/* 022BA5A4 */ cpu->f[10] = cpu->f[10] * cpu->f[8];
|
|
/* 022BA5A8 */ /* nop */
|
|
/* 022BA5AC */ /* nop */
|
|
/* 022BA5B0 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA5B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BA5B4 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA5B4 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[10]);
|
|
L_022BA5B8: ; // 0x22ba5b8
|
|
/* 022BA5B8 */ _t25 = cpu->r[6] + 0x00000008u;
|
|
/* 022BA5B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BA5BC */ _t26 = cpu->r[6] + 0x00000000u;
|
|
/* 022BA5BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022BA5C0 */ cpu->f[13] = cpu->f[11] * cpu->f[12];
|
|
/* 022BA5C4 */ cpu->f[8] = cpu->f[10] * cpu->f[12];
|
|
/* 022BA5C8 */ cpu->f[1] = fma(cpu->f[10], cpu->f[0], -(cpu->f[13]));
|
|
/* 022BA5CC */ cpu->f[2] = fma(cpu->f[11], cpu->f[0], cpu->f[8]);
|
|
/* 022BA5D0 */ Gambit_fn_02C89074(cpu);
|
|
/* 022BA5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA5D8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA5D8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022BA5D8 */ if (_t28) goto L_022BA614; else goto L_022BA5DC;
|
|
L_022BA5DC: ; // 0x22ba5dc
|
|
/* 022BA5DC */ cpu->r[12] = 0x10060000u;
|
|
/* 022BA5E0 */ cpu->f[7] = fabs(cpu->f[1]);
|
|
/* 022BA5E4 */ _t29 = cpu->r[12] + 0x00004118u;
|
|
/* 022BA5E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022BA5E8 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BA5EC */ cpu->f[9] = cpu->f[7] * cpu->f[10];
|
|
/* 022BA5F0 */ _t30 = cpu->r[11] + 0x00004094u;
|
|
/* 022BA5F0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BA5F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[11]);
|
|
/* 022BA5F8 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BA5F8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BA5F8 */ if (_t32) goto L_022BA5FC; else goto L_022BA614;
|
|
L_022BA5FC: ; // 0x22ba5fc
|
|
/* 022BA5FC */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA5FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BA600 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA600 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BA604 */ cpu->lr = cpu->r[0];
|
|
/* 022BA608 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022BA60C */ cpu->r[3] = 0x00000001u;
|
|
/* 022BA610 */ return;
|
|
L_022BA614: ; // 0x22ba614
|
|
/* 022BA614 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022BA618 */ _t36 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA618 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022BA61C */ cpu->lr = cpu->r[0];
|
|
/* 022BA620 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022BA624 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BA628 */ return;
|
|
}
|
|
|
|
// fn_022BA50C @ 0x22ba50c
|
|
void Gambit_fn_022BA50C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
double _ft20, _ft21;
|
|
|
|
L_022BA50C: ; // 0x22ba50c
|
|
/* 022BA50C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022BA50C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BA50C */ cpu->r[1] = _t0;
|
|
/* 022BA510 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA510 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BA514 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA514 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BA518 */ _t3 = cpu->r[4] + 0x00000008u;
|
|
/* 022BA518 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022BA51C */ _t4 = cpu->r[5] + 0x00000008u;
|
|
/* 022BA51C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022BA520 */ /* nop */
|
|
/* 022BA524 */ cpu->f[7] = cpu->f[8] - cpu->f[7];
|
|
/* 022BA528 */ /* nop */
|
|
/* 022BA52C */ /* nop */
|
|
/* 022BA530 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA530 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[7]);
|
|
/* 022BA534 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA534 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BA538 */ /* nop */
|
|
/* 022BA53C */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA53C */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 022BA540 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA540 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BA544 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BA548 */ cpu->f[7] = cpu->f[10] * cpu->f[10];
|
|
/* 022BA54C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA54C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022BA550 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA550 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BA554 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BA558 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 022BA558 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BA55C */ cpu->f[9] = fma(cpu->f[11], cpu->f[11], cpu->f[7]);
|
|
/* 022BA560 */ _t13 = cpu->r[9] + 0x0000402Cu;
|
|
/* 022BA560 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BA564 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA564 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022BA568 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 022BA56C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA56C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022BA570 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BA574 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA574 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BA574 */ if (_t17) goto L_022BA578; else goto L_022BA5B8;
|
|
L_022BA578: ; // 0x22ba578
|
|
/* 022BA578 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BA57C */ cpu->r[10] = 0x10060000u;
|
|
/* 022BA580 */ _t18 = cpu->r[11] + 0x00004030u;
|
|
/* 022BA580 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BA584 */ _t19 = cpu->r[10] + 0x00004028u;
|
|
/* 022BA584 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BA588 */ _ft20 = sqrt(cpu->f[9]);
|
|
/* 022BA588 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 022BA588 */ cpu->f[8] = _ft21 / _ft20;
|
|
/* 022BA58C */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 022BA590 */ cpu->f[0] = cpu->f[8] * cpu->f[12];
|
|
/* 022BA594 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[9], -(cpu->f[13]));
|
|
/* 022BA598 */ cpu->f[8] = cpu->f[11] * cpu->f[0];
|
|
/* 022BA59C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA59C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BA5A0 */ /* nop */
|
|
/* 022BA5A4 */ cpu->f[10] = cpu->f[10] * cpu->f[8];
|
|
/* 022BA5A8 */ /* nop */
|
|
/* 022BA5AC */ /* nop */
|
|
/* 022BA5B0 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA5B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BA5B4 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA5B4 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[10]);
|
|
L_022BA5B8: ; // 0x22ba5b8
|
|
/* 022BA5B8 */ _t25 = cpu->r[6] + 0x00000008u;
|
|
/* 022BA5B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BA5BC */ _t26 = cpu->r[6] + 0x00000000u;
|
|
/* 022BA5BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022BA5C0 */ cpu->f[13] = cpu->f[11] * cpu->f[12];
|
|
/* 022BA5C4 */ cpu->f[8] = cpu->f[10] * cpu->f[12];
|
|
/* 022BA5C8 */ cpu->f[1] = fma(cpu->f[10], cpu->f[0], -(cpu->f[13]));
|
|
/* 022BA5CC */ cpu->f[2] = fma(cpu->f[11], cpu->f[0], cpu->f[8]);
|
|
/* 022BA5D0 */ Gambit_fn_02C89074(cpu);
|
|
/* 022BA5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA5D8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA5D8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022BA5D8 */ if (_t28) goto L_022BA614; else goto L_022BA5DC;
|
|
L_022BA5DC: ; // 0x22ba5dc
|
|
/* 022BA5DC */ cpu->r[12] = 0x10060000u;
|
|
/* 022BA5E0 */ cpu->f[7] = fabs(cpu->f[1]);
|
|
/* 022BA5E4 */ _t29 = cpu->r[12] + 0x00004118u;
|
|
/* 022BA5E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022BA5E8 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BA5EC */ cpu->f[9] = cpu->f[7] * cpu->f[10];
|
|
/* 022BA5F0 */ _t30 = cpu->r[11] + 0x00004094u;
|
|
/* 022BA5F0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BA5F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[11]);
|
|
/* 022BA5F8 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BA5F8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BA5F8 */ if (_t32) goto L_022BA5FC; else goto L_022BA614;
|
|
L_022BA5FC: ; // 0x22ba5fc
|
|
/* 022BA5FC */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA5FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BA600 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA600 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BA604 */ cpu->lr = cpu->r[0];
|
|
/* 022BA608 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022BA60C */ cpu->r[3] = 0x00000001u;
|
|
/* 022BA610 */ return;
|
|
L_022BA614: ; // 0x22ba614
|
|
/* 022BA614 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022BA618 */ _t36 = cpu->r[1] + 0x00000024u;
|
|
/* 022BA618 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022BA61C */ cpu->lr = cpu->r[0];
|
|
/* 022BA620 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022BA624 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BA628 */ return;
|
|
}
|
|
|
|
// fn_022BA62C @ 0x22ba62c
|
|
void Gambit_fn_022BA62C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_022BA62C: ; // 0x22ba62c
|
|
/* 022BA62C */ cpu->r[0] = cpu->lr;
|
|
/* 022BA630 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BA630 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BA630 */ cpu->r[1] = _t0;
|
|
/* 022BA634 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA634 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BA638 */ cpu->r[31] = cpu->r[4];
|
|
/* 022BA63C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA63C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022BA640 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BA644 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA644 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022BA648 */ cpu->r[7] = 0x101D0000u;
|
|
/* 022BA64C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA64C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022BA650 */ _t5 = cpu->r[7] + 0xFFFFFD8Cu;
|
|
/* 022BA650 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BA650 */ cpu->r[7] = _t5;
|
|
/* 022BA654 */ cpu->r[4] = cpu->r[4] + 0xFFFFFD88u;
|
|
/* 022BA658 */ cpu->r[30] = cpu->r[5];
|
|
/* 022BA65C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022BA660 */ cpu->r[29] = cpu->r[3];
|
|
/* 022BA664 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA664 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BA664 */ if (_t7) goto L_022BA668; else goto L_022BA67C;
|
|
L_022BA668: ; // 0x22ba668
|
|
/* 022BA668 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BA66C */ cpu->r[10] = 0x00000001u;
|
|
/* 022BA670 */ cpu->r[0] = cpu->r[0] + 0x00004064u;
|
|
/* 022BA674 */ _t8 = cpu->r[7] + 0x00000000u;
|
|
/* 022BA674 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 022BA678 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 022BA678 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_022BA67C: ; // 0x22ba67c
|
|
/* 022BA67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA680 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA680 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BA680 */ if (_t11) goto L_022BA6D0; else goto L_022BA684;
|
|
L_022BA684: ; // 0x22ba684
|
|
/* 022BA684 */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 022BA684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BA688 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 022BA688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BA68C */ cpu->ctr = cpu->r[0];
|
|
/* 022BA690 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA694 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BA698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BA69C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA69C */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BA69C */ if (_t15) goto L_022BA6D0; else goto L_022BA6A0;
|
|
L_022BA6A0: ; // 0x22ba6a0
|
|
/* 022BA6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA6A4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA6A4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BA6A4 */ if (_t17) goto L_022BA6D0; else goto L_022BA6A8;
|
|
L_022BA6A8: ; // 0x22ba6a8
|
|
/* 022BA6A8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BA6AC */ _t18 = cpu->r[29] + 0x000000E0u;
|
|
/* 022BA6AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BA6B0 */ _t19 = cpu->r[6] + 0x0000402Cu;
|
|
/* 022BA6B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BA6B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BA6B8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA6B8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022BA6B8 */ if (_t21) goto L_022BA6BC; else goto L_022BA6D0;
|
|
L_022BA6BC: ; // 0x22ba6bc
|
|
/* 022BA6BC */ cpu->r[6] = cpu->r[30];
|
|
/* 022BA6C0 */ cpu->r[5] = cpu->r[29];
|
|
/* 022BA6C4 */ cpu->r[4] = cpu->r[29] + 0x00000140u;
|
|
/* 022BA6C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA6CC */ Gambit_fn_0221AE00(cpu);
|
|
L_022BA6D0: ; // 0x22ba6d0
|
|
/* 022BA6D0 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA6D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BA6D4 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BA6D8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA6D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BA6DC */ cpu->lr = cpu->r[0];
|
|
/* 022BA6E0 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA6E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022BA6E4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BA6E8 */ return;
|
|
}
|
|
|
|
// fn_022BA630 @ 0x22ba630
|
|
void Gambit_fn_022BA630(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_022BA630: ; // 0x22ba630
|
|
/* 022BA630 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BA630 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BA630 */ cpu->r[1] = _t0;
|
|
/* 022BA634 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA634 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BA638 */ cpu->r[31] = cpu->r[4];
|
|
/* 022BA63C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA63C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022BA640 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BA644 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA644 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022BA648 */ cpu->r[7] = 0x101D0000u;
|
|
/* 022BA64C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA64C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022BA650 */ _t5 = cpu->r[7] + 0xFFFFFD8Cu;
|
|
/* 022BA650 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BA650 */ cpu->r[7] = _t5;
|
|
/* 022BA654 */ cpu->r[4] = cpu->r[4] + 0xFFFFFD88u;
|
|
/* 022BA658 */ cpu->r[30] = cpu->r[5];
|
|
/* 022BA65C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022BA660 */ cpu->r[29] = cpu->r[3];
|
|
/* 022BA664 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA664 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BA664 */ if (_t7) goto L_022BA668; else goto L_022BA67C;
|
|
L_022BA668: ; // 0x22ba668
|
|
/* 022BA668 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BA66C */ cpu->r[10] = 0x00000001u;
|
|
/* 022BA670 */ cpu->r[0] = cpu->r[0] + 0x00004064u;
|
|
/* 022BA674 */ _t8 = cpu->r[7] + 0x00000000u;
|
|
/* 022BA674 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 022BA678 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 022BA678 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_022BA67C: ; // 0x22ba67c
|
|
/* 022BA67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA680 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA680 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BA680 */ if (_t11) goto L_022BA6D0; else goto L_022BA684;
|
|
L_022BA684: ; // 0x22ba684
|
|
/* 022BA684 */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 022BA684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BA688 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 022BA688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BA68C */ cpu->ctr = cpu->r[0];
|
|
/* 022BA690 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA694 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BA698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BA69C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA69C */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BA69C */ if (_t15) goto L_022BA6D0; else goto L_022BA6A0;
|
|
L_022BA6A0: ; // 0x22ba6a0
|
|
/* 022BA6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA6A4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA6A4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BA6A4 */ if (_t17) goto L_022BA6D0; else goto L_022BA6A8;
|
|
L_022BA6A8: ; // 0x22ba6a8
|
|
/* 022BA6A8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BA6AC */ _t18 = cpu->r[29] + 0x000000E0u;
|
|
/* 022BA6AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BA6B0 */ _t19 = cpu->r[6] + 0x0000402Cu;
|
|
/* 022BA6B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BA6B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BA6B8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA6B8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022BA6B8 */ if (_t21) goto L_022BA6BC; else goto L_022BA6D0;
|
|
L_022BA6BC: ; // 0x22ba6bc
|
|
/* 022BA6BC */ cpu->r[6] = cpu->r[30];
|
|
/* 022BA6C0 */ cpu->r[5] = cpu->r[29];
|
|
/* 022BA6C4 */ cpu->r[4] = cpu->r[29] + 0x00000140u;
|
|
/* 022BA6C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA6CC */ Gambit_fn_0221AE00(cpu);
|
|
L_022BA6D0: ; // 0x22ba6d0
|
|
/* 022BA6D0 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA6D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BA6D4 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BA6D8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA6D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BA6DC */ cpu->lr = cpu->r[0];
|
|
/* 022BA6E0 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA6E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022BA6E4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BA6E8 */ return;
|
|
}
|
|
|
|
// fn_022BA6EC @ 0x22ba6ec
|
|
void Gambit_fn_022BA6EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_022BA6EC: ; // 0x22ba6ec
|
|
/* 022BA6EC */ cpu->r[0] = cpu->lr;
|
|
/* 022BA6F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BA6F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BA6F0 */ cpu->r[1] = _t0;
|
|
/* 022BA6F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA6F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BA6F8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA6F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022BA6FC */ cpu->r[31] = cpu->r[4];
|
|
/* 022BA700 */ cpu->r[7] = 0x101D0000u;
|
|
/* 022BA704 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA704 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BA708 */ _t4 = cpu->r[7] + 0xFFFFD9ECu;
|
|
/* 022BA708 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BA708 */ cpu->r[7] = _t4;
|
|
/* 022BA70C */ cpu->r[30] = cpu->r[3];
|
|
/* 022BA710 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BA714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022BA718 */ cpu->r[4] = cpu->r[4] + 0xFFFFFB4Cu;
|
|
/* 022BA71C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA71C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BA71C */ if (_t6) goto L_022BA720; else goto L_022BA734;
|
|
L_022BA720: ; // 0x22ba720
|
|
/* 022BA720 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BA724 */ cpu->r[9] = 0x00000001u;
|
|
/* 022BA728 */ cpu->r[10] = cpu->r[10] + 0x00004054u;
|
|
/* 022BA72C */ _t7 = cpu->r[7] + 0x00000000u;
|
|
/* 022BA72C */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 022BA730 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022BA730 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_022BA734: ; // 0x22ba734
|
|
/* 022BA734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA738 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA738 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BA738 */ if (_t10) goto L_022BA7EC; else goto L_022BA73C;
|
|
L_022BA73C: ; // 0x22ba73c
|
|
/* 022BA73C */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 022BA73C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BA740 */ _t12 = cpu->r[12] + 0x00000014u;
|
|
/* 022BA740 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BA744 */ cpu->ctr = cpu->r[6];
|
|
/* 022BA748 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA74C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BA750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BA754 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA754 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BA754 */ if (_t14) goto L_022BA7EC; else goto L_022BA758;
|
|
L_022BA758: ; // 0x22ba758
|
|
/* 022BA758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA75C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA75C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BA75C */ if (_t16) goto L_022BA7EC; else goto L_022BA760;
|
|
L_022BA760: ; // 0x22ba760
|
|
/* 022BA760 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BA764 */ _t17 = cpu->r[12] + 0xFFFFE5E4u;
|
|
/* 022BA764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BA764 */ cpu->r[12] = _t17;
|
|
/* 022BA768 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BA76C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BA770 */ cpu->r[4] = cpu->r[4] + 0xFFFFFB60u;
|
|
/* 022BA774 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA774 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BA774 */ if (_t19) goto L_022BA778; else goto L_022BA78C;
|
|
L_022BA778: ; // 0x22ba778
|
|
/* 022BA778 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BA77C */ cpu->r[6] = 0x00000001u;
|
|
/* 022BA780 */ cpu->r[0] = cpu->r[0] + 0x00004064u;
|
|
/* 022BA784 */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 022BA784 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 022BA788 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 022BA788 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
L_022BA78C: ; // 0x22ba78c
|
|
/* 022BA78C */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 022BA78C */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BA790 */ _t23 = cpu->r[12] + 0x00000014u;
|
|
/* 022BA790 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BA794 */ cpu->ctr = cpu->r[7];
|
|
/* 022BA798 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA79C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BA7A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BA7A4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA7A4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022BA7A4 */ if (_t25) goto L_022BA7EC; else goto L_022BA7A8;
|
|
L_022BA7A8: ; // 0x22ba7a8
|
|
/* 022BA7A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA7AC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA7AC */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BA7AC */ if (_t27) goto L_022BA7EC; else goto L_022BA7B0;
|
|
L_022BA7B0: ; // 0x22ba7b0
|
|
/* 022BA7B0 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022BA7B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BA7B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BA7B8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA7B8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022BA7B8 */ if (_t30) goto L_022BA7BC; else goto L_022BA7EC;
|
|
L_022BA7BC: ; // 0x22ba7bc
|
|
/* 022BA7BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BA7C0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA7C0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BA7C0 */ if (_t32) goto L_022BA7D0; else goto L_022BA7C4;
|
|
L_022BA7C4: ; // 0x22ba7c4
|
|
/* 022BA7C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BA7C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BA7CC */ Gambit_fn_023B3C84(cpu);
|
|
L_022BA7D0: ; // 0x22ba7d0
|
|
/* 022BA7D0 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA7D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BA7D4 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA7D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BA7D8 */ cpu->lr = cpu->r[0];
|
|
/* 022BA7DC */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA7DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022BA7E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BA7E4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BA7E8 */ return;
|
|
L_022BA7EC: ; // 0x22ba7ec
|
|
/* 022BA7EC */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA7EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022BA7F0 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA7F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022BA7F4 */ cpu->lr = cpu->r[0];
|
|
/* 022BA7F8 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA7F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022BA7FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BA800 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BA804 */ return;
|
|
}
|
|
|
|
// fn_022BA6F0 @ 0x22ba6f0
|
|
void Gambit_fn_022BA6F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_022BA6F0: ; // 0x22ba6f0
|
|
/* 022BA6F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BA6F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BA6F0 */ cpu->r[1] = _t0;
|
|
/* 022BA6F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA6F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BA6F8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA6F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022BA6FC */ cpu->r[31] = cpu->r[4];
|
|
/* 022BA700 */ cpu->r[7] = 0x101D0000u;
|
|
/* 022BA704 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA704 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BA708 */ _t4 = cpu->r[7] + 0xFFFFD9ECu;
|
|
/* 022BA708 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BA708 */ cpu->r[7] = _t4;
|
|
/* 022BA70C */ cpu->r[30] = cpu->r[3];
|
|
/* 022BA710 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BA714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022BA718 */ cpu->r[4] = cpu->r[4] + 0xFFFFFB4Cu;
|
|
/* 022BA71C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA71C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BA71C */ if (_t6) goto L_022BA720; else goto L_022BA734;
|
|
L_022BA720: ; // 0x22ba720
|
|
/* 022BA720 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BA724 */ cpu->r[9] = 0x00000001u;
|
|
/* 022BA728 */ cpu->r[10] = cpu->r[10] + 0x00004054u;
|
|
/* 022BA72C */ _t7 = cpu->r[7] + 0x00000000u;
|
|
/* 022BA72C */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 022BA730 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022BA730 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_022BA734: ; // 0x22ba734
|
|
/* 022BA734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA738 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA738 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BA738 */ if (_t10) goto L_022BA7EC; else goto L_022BA73C;
|
|
L_022BA73C: ; // 0x22ba73c
|
|
/* 022BA73C */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 022BA73C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BA740 */ _t12 = cpu->r[12] + 0x00000014u;
|
|
/* 022BA740 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BA744 */ cpu->ctr = cpu->r[6];
|
|
/* 022BA748 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA74C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BA750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BA754 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA754 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BA754 */ if (_t14) goto L_022BA7EC; else goto L_022BA758;
|
|
L_022BA758: ; // 0x22ba758
|
|
/* 022BA758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA75C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA75C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BA75C */ if (_t16) goto L_022BA7EC; else goto L_022BA760;
|
|
L_022BA760: ; // 0x22ba760
|
|
/* 022BA760 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BA764 */ _t17 = cpu->r[12] + 0xFFFFE5E4u;
|
|
/* 022BA764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BA764 */ cpu->r[12] = _t17;
|
|
/* 022BA768 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BA76C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BA770 */ cpu->r[4] = cpu->r[4] + 0xFFFFFB60u;
|
|
/* 022BA774 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA774 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BA774 */ if (_t19) goto L_022BA778; else goto L_022BA78C;
|
|
L_022BA778: ; // 0x22ba778
|
|
/* 022BA778 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BA77C */ cpu->r[6] = 0x00000001u;
|
|
/* 022BA780 */ cpu->r[0] = cpu->r[0] + 0x00004064u;
|
|
/* 022BA784 */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 022BA784 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 022BA788 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 022BA788 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
L_022BA78C: ; // 0x22ba78c
|
|
/* 022BA78C */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 022BA78C */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BA790 */ _t23 = cpu->r[12] + 0x00000014u;
|
|
/* 022BA790 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BA794 */ cpu->ctr = cpu->r[7];
|
|
/* 022BA798 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BA79C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BA7A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BA7A4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA7A4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022BA7A4 */ if (_t25) goto L_022BA7EC; else goto L_022BA7A8;
|
|
L_022BA7A8: ; // 0x22ba7a8
|
|
/* 022BA7A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BA7AC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA7AC */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BA7AC */ if (_t27) goto L_022BA7EC; else goto L_022BA7B0;
|
|
L_022BA7B0: ; // 0x22ba7b0
|
|
/* 022BA7B0 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022BA7B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BA7B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BA7B8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA7B8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022BA7B8 */ if (_t30) goto L_022BA7BC; else goto L_022BA7EC;
|
|
L_022BA7BC: ; // 0x22ba7bc
|
|
/* 022BA7BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BA7C0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BA7C0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BA7C0 */ if (_t32) goto L_022BA7D0; else goto L_022BA7C4;
|
|
L_022BA7C4: ; // 0x22ba7c4
|
|
/* 022BA7C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BA7C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BA7CC */ Gambit_fn_023B3C84(cpu);
|
|
L_022BA7D0: ; // 0x22ba7d0
|
|
/* 022BA7D0 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA7D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BA7D4 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA7D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BA7D8 */ cpu->lr = cpu->r[0];
|
|
/* 022BA7DC */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA7DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022BA7E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BA7E4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BA7E8 */ return;
|
|
L_022BA7EC: ; // 0x22ba7ec
|
|
/* 022BA7EC */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA7EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022BA7F0 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA7F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022BA7F4 */ cpu->lr = cpu->r[0];
|
|
/* 022BA7F8 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA7F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022BA7FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BA800 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BA804 */ return;
|
|
}
|
|
|
|
// fn_022BA808 @ 0x22ba808
|
|
void Gambit_fn_022BA808(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _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, _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, _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;
|
|
double _ft32, _ft33, _ft84, _ft85, _ft94, _ft95;
|
|
|
|
L_022BA808: ; // 0x22ba808
|
|
/* 022BA808 */ _t0 = cpu->r[1] + 0xFFFFFF28u;
|
|
/* 022BA808 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BA808 */ cpu->r[1] = _t0;
|
|
/* 022BA80C */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 022BA80C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BA810 */ cpu->r[0] = cpu->lr;
|
|
/* 022BA814 */ _t2 = cpu->r[1] + 0x000000C8u;
|
|
/* 022BA814 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BA818 */ /* nop */
|
|
/* 022BA81C */ _t3 = cpu->r[1] + 0x000000B8u;
|
|
/* 022BA81C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022BA820 */ _t4 = cpu->r[1] + 0x000000A8u;
|
|
/* 022BA820 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 022BA824 */ /* nop */
|
|
/* 022BA828 */ _t5 = cpu->r[1] + 0x000000D0u;
|
|
/* 022BA828 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 022BA82C */ /* nop */
|
|
/* 022BA830 */ _t6 = cpu->r[1] + 0x000000C0u;
|
|
/* 022BA830 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 022BA834 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 022BA834 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 022BA838 */ _t8 = cpu->r[1] + 0x000000DCu;
|
|
/* 022BA838 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022BA83C */ cpu->r[28] = cpu->r[4];
|
|
/* 022BA840 */ _t9 = cpu->r[1] + 0x000000B0u;
|
|
/* 022BA840 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 022BA844 */ _t10 = cpu->r[1] + 0x00000098u;
|
|
/* 022BA844 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[28]);
|
|
/* 022BA848 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BA848 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 022BA84C */ /* nop */
|
|
/* 022BA850 */ _t12 = cpu->r[1] + 0x00000088u;
|
|
/* 022BA850 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[27]);
|
|
/* 022BA854 */ _t13 = cpu->r[1] + 0x00000084u;
|
|
/* 022BA854 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 022BA858 */ /* nop */
|
|
/* 022BA85C */ _t14 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BA85C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[28]);
|
|
/* 022BA860 */ _t15 = cpu->r[1] + 0x00000090u;
|
|
/* 022BA860 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[27]);
|
|
/* 022BA864 */ cpu->r[29] = cpu->r[5];
|
|
/* 022BA868 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BA86C */ _t16 = cpu->r[28] + 0x00000004u;
|
|
/* 022BA86C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BA870 */ cpu->f[27] = cpu->f[2];
|
|
/* 022BA874 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BA878 */ _t17 = cpu->r[10] + 0x0000025Cu;
|
|
/* 022BA878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BA87C */ cpu->ctr = cpu->r[0];
|
|
/* 022BA880 */ cpu->f[28] = cpu->f[1];
|
|
/* 022BA884 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BA888 */ _t18 = cpu->r[3] + 0x00000000u;
|
|
/* 022BA888 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BA88C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BA890 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA890 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 022BA894 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 022BA894 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BA898 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA898 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]);
|
|
/* 022BA89C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BA89C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BA8A0 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 022BA8A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BA8A4 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 022BA8A8 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022BA8A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BA8AC */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA8AC */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 022BA8B0 */ cpu->f[0] = fma(cpu->f[12], cpu->f[12], cpu->f[13]);
|
|
/* 022BA8B4 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA8B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022BA8B8 */ _t27 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022BA8B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BA8BC */ cpu->r[12] = 0x10060000u;
|
|
/* 022BA8C0 */ cpu->f[0] = fma(cpu->f[10], cpu->f[10], cpu->f[0]);
|
|
/* 022BA8C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 022BA8C8 */ _t28 = cpu->r[12] + 0x00004030u;
|
|
/* 022BA8C8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022BA8CC */ cpu->r[9] = 0x10060000u;
|
|
/* 022BA8D0 */ _t29 = cpu->r[9] + 0x00004028u;
|
|
/* 022BA8D0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022BA8D4 */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA8D4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022BA8D4 */ if (_t31) goto L_022BA8D8; else goto L_022BA904;
|
|
L_022BA8D8: ; // 0x22ba8d8
|
|
/* 022BA8D8 */ _ft32 = sqrt(cpu->f[0]);
|
|
/* 022BA8D8 */ _ft33 = (double)(int32_t)0x00000001u;
|
|
/* 022BA8D8 */ cpu->f[7] = _ft33 / _ft32;
|
|
/* 022BA8DC */ cpu->f[8] = cpu->f[7] * cpu->f[7];
|
|
/* 022BA8E0 */ cpu->f[9] = cpu->f[7] * cpu->f[30];
|
|
/* 022BA8E4 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[0], -(cpu->f[29]));
|
|
/* 022BA8E8 */ cpu->f[7] = cpu->f[8] * cpu->f[9];
|
|
/* 022BA8EC */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA8EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022BA8F0 */ /* nop */
|
|
/* 022BA8F4 */ cpu->f[13] = cpu->f[13] * cpu->f[7];
|
|
/* 022BA8F8 */ /* nop */
|
|
/* 022BA8FC */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA8FC */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 022BA900 */ /* nop */
|
|
L_022BA904: ; // 0x22ba904
|
|
/* 022BA904 */ _t36 = cpu->r[28] + 0x00000004u;
|
|
/* 022BA904 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022BA908 */ _t37 = cpu->r[31] + 0x00000254u;
|
|
/* 022BA908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022BA90C */ cpu->ctr = cpu->r[0];
|
|
/* 022BA910 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BA914 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BA918 */ _t38 = cpu->r[31] + 0x0000025Cu;
|
|
/* 022BA918 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022BA91C */ cpu->r[31] = cpu->r[3];
|
|
/* 022BA920 */ cpu->ctr = cpu->r[10];
|
|
/* 022BA924 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BA928 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BA92C */ /* nop */
|
|
/* 022BA930 */ /* nop */
|
|
/* 022BA934 */ /* nop */
|
|
/* 022BA938 */ /* nop */
|
|
/* 022BA93C */ /* nop */
|
|
/* 022BA940 */ _t39 = cpu->r[31] + 0x00000008u;
|
|
/* 022BA940 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022BA944 */ _t40 = cpu->r[3] + 0x00000008u;
|
|
/* 022BA944 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BA948 */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BA948 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022BA94C */ _t42 = cpu->r[1] + 0x00000030u;
|
|
/* 022BA94C */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022BA950 */ cpu->f[13] = cpu->f[7] - cpu->f[8];
|
|
/* 022BA954 */ _t43 = cpu->r[1] + 0x00000068u;
|
|
/* 022BA954 */ rbrew_write32(cpu->mem, _t43, cpu->r[11]);
|
|
/* 022BA958 */ _t44 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BA958 */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 022BA95C */ /* nop */
|
|
/* 022BA960 */ _t45 = cpu->r[1] + 0x00000034u;
|
|
/* 022BA960 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[13]);
|
|
/* 022BA964 */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 022BA964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022BA968 */ _t47 = cpu->r[29] + 0x00000110u;
|
|
/* 022BA968 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BA96C */ /* nop */
|
|
/* 022BA970 */ _t48 = cpu->r[1] + 0x00000070u;
|
|
/* 022BA970 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 022BA974 */ _t49 = cpu->r[1] + 0x00000070u;
|
|
/* 022BA974 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022BA978 */ /* nop */
|
|
/* 022BA97C */ _t50 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BA97C */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022BA980 */ _t51 = cpu->r[1] + 0x00000038u;
|
|
/* 022BA980 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022BA984 */ _t52 = cpu->r[1] + 0x00000018u;
|
|
/* 022BA984 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
/* 022BA988 */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 022BA988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022BA98C */ cpu->f[8] = cpu->f[9] - cpu->f[10];
|
|
/* 022BA990 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA990 */ rbrew_write32(cpu->mem, _t54, cpu->r[12]);
|
|
/* 022BA994 */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 022BA994 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022BA998 */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 022BA99C */ _t56 = cpu->r[1] + 0x00000040u;
|
|
/* 022BA99C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[8]);
|
|
/* 022BA9A0 */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 022BA9A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022BA9A4 */ cpu->f[7] = fma(cpu->f[7], cpu->f[7], cpu->f[13]);
|
|
/* 022BA9A8 */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA9A8 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 022BA9AC */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA9AC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022BA9B0 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[7]);
|
|
/* 022BA9B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 022BA9B8 */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BA9B8 */ _t61 = _t60 & 0x00000001u;
|
|
/* 022BA9B8 */ if (_t61) goto L_022BAA94; else goto L_022BA9BC;
|
|
L_022BA9BC: ; // 0x22ba9bc
|
|
/* 022BA9BC */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 022BA9BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022BA9C0 */ /* nop */
|
|
/* 022BA9C4 */ cpu->f[11] = cpu->f[12] * cpu->f[27];
|
|
/* 022BA9C8 */ /* nop */
|
|
/* 022BA9CC */ /* nop */
|
|
/* 022BA9D0 */ _t63 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BA9D0 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[11]);
|
|
/* 022BA9D4 */ _t64 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BA9D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022BA9D8 */ /* nop */
|
|
/* 022BA9DC */ _t65 = cpu->r[1] + 0x00000044u;
|
|
/* 022BA9DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022BA9E0 */ _t66 = cpu->r[1] + 0x00000048u;
|
|
/* 022BA9E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022BA9E4 */ _t67 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BA9E4 */ rbrew_write32(cpu->mem, _t67, cpu->r[10]);
|
|
/* 022BA9E8 */ _t68 = cpu->r[1] + 0x00000060u;
|
|
/* 022BA9E8 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 022BA9EC */ /* nop */
|
|
/* 022BA9F0 */ _t69 = cpu->r[1] + 0x00000064u;
|
|
/* 022BA9F0 */ rbrew_write32(cpu->mem, _t69, cpu->r[9]);
|
|
/* 022BA9F4 */ _t70 = cpu->r[1] + 0x00000064u;
|
|
/* 022BA9F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022BA9F8 */ /* nop */
|
|
/* 022BA9FC */ _t71 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BA9FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022BAA00 */ /* nop */
|
|
/* 022BAA04 */ _t72 = cpu->r[1] + 0x00000054u;
|
|
/* 022BAA04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022BAA08 */ _t73 = cpu->r[1] + 0x00000050u;
|
|
/* 022BAA08 */ cpu->r[10] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022BAA0C */ cpu->f[9] = cpu->f[10] + cpu->f[13];
|
|
/* 022BAA10 */ _t74 = cpu->r[1] + 0x00000024u;
|
|
/* 022BAA10 */ rbrew_write32(cpu->mem, _t74, cpu->r[12]);
|
|
/* 022BAA14 */ _t75 = cpu->r[1] + 0x00000024u;
|
|
/* 022BAA14 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 022BAA18 */ _t76 = cpu->r[1] + 0x00000020u;
|
|
/* 022BAA18 */ rbrew_write32(cpu->mem, _t76, cpu->r[10]);
|
|
/* 022BAA1C */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 022BAA1C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[9]);
|
|
/* 022BAA20 */ cpu->f[10] = cpu->f[8] * cpu->f[8];
|
|
/* 022BAA24 */ _t78 = cpu->r[1] + 0x00000020u;
|
|
/* 022BAA24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 022BAA28 */ _t79 = cpu->r[1] + 0x00000058u;
|
|
/* 022BAA28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022BAA2C */ cpu->f[12] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 022BAA30 */ _t80 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAA30 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 022BAA34 */ _t81 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAA34 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 022BAA38 */ cpu->f[9] = fma(cpu->f[11], cpu->f[11], cpu->f[12]);
|
|
/* 022BAA3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 022BAA40 */ _t82 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BAA40 */ _t83 = _t82 & 0x00000001u;
|
|
/* 022BAA40 */ if (_t83) goto L_022BAA44; else goto L_022BAB44;
|
|
L_022BAA44: ; // 0x22baa44
|
|
/* 022BAA44 */ _ft84 = sqrt(cpu->f[9]);
|
|
/* 022BAA44 */ _ft85 = (double)(int32_t)0x00000001u;
|
|
/* 022BAA44 */ cpu->f[10] = _ft85 / _ft84;
|
|
/* 022BAA48 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 022BAA4C */ cpu->f[12] = cpu->f[10] * cpu->f[30];
|
|
/* 022BAA50 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[9], -(cpu->f[29]));
|
|
/* 022BAA54 */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 022BAA58 */ _t86 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAA58 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 022BAA5C */ /* nop */
|
|
/* 022BAA60 */ cpu->f[11] = cpu->f[8] * cpu->f[10];
|
|
/* 022BAA64 */ /* nop */
|
|
/* 022BAA68 */ /* nop */
|
|
/* 022BAA6C */ /* nop */
|
|
/* 022BAA70 */ _t87 = cpu->r[1] + 0x00000020u;
|
|
/* 022BAA70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022BAA74 */ cpu->f[12] = cpu->f[11] * cpu->f[28];
|
|
/* 022BAA78 */ _t88 = cpu->r[1] + 0x00000024u;
|
|
/* 022BAA78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022BAA7C */ _t89 = cpu->r[30] + 0x00000000u;
|
|
/* 022BAA7C */ rbrew_write32(cpu->mem, _t89, cpu->r[11]);
|
|
/* 022BAA80 */ _t90 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAA80 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[12]);
|
|
/* 022BAA84 */ _t91 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 022BAA88 */ _t92 = cpu->r[30] + 0x00000004u;
|
|
/* 022BAA88 */ rbrew_write32(cpu->mem, _t92, cpu->r[12]);
|
|
/* 022BAA8C */ _t93 = cpu->r[30] + 0x00000008u;
|
|
/* 022BAA8C */ rbrew_write32(cpu->mem, _t93, cpu->r[0]);
|
|
/* 022BAA90 */ goto L_022BAB70;
|
|
L_022BAA94: ; // 0x22baa94
|
|
/* 022BAA94 */ _ft94 = sqrt(cpu->f[0]);
|
|
/* 022BAA94 */ _ft95 = (double)(int32_t)0x00000001u;
|
|
/* 022BAA94 */ cpu->f[7] = _ft95 / _ft94;
|
|
/* 022BAA98 */ cpu->f[8] = cpu->f[7] * cpu->f[7];
|
|
/* 022BAA9C */ cpu->f[10] = cpu->f[7] * cpu->f[30];
|
|
/* 022BAAA0 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[0], -(cpu->f[29]));
|
|
/* 022BAAA4 */ cpu->f[7] = cpu->f[8] * cpu->f[10];
|
|
/* 022BAAA8 */ /* nop */
|
|
/* 022BAAAC */ /* nop */
|
|
/* 022BAAB0 */ /* nop */
|
|
/* 022BAAB4 */ _t96 = cpu->r[1] + 0x00000010u;
|
|
/* 022BAAB4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 022BAAB8 */ /* nop */
|
|
/* 022BAABC */ _t97 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BAABC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 022BAAC0 */ cpu->f[11] = cpu->f[12] * cpu->f[27];
|
|
/* 022BAAC4 */ /* nop */
|
|
/* 022BAAC8 */ _t98 = cpu->r[1] + 0x00000048u;
|
|
/* 022BAAC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 022BAACC */ cpu->f[13] = cpu->f[13] * cpu->f[7];
|
|
/* 022BAAD0 */ _t99 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BAAD0 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[11]);
|
|
/* 022BAAD4 */ _t100 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BAAD4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022BAAD8 */ _t101 = cpu->r[1] + 0x00000044u;
|
|
/* 022BAAD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t101);
|
|
/* 022BAADC */ _t102 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BAADC */ rbrew_write_f32(cpu->mem, _t102, cpu->f[13]);
|
|
/* 022BAAE0 */ cpu->f[10] = cpu->f[13];
|
|
/* 022BAAE4 */ _t103 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BAAE4 */ rbrew_write32(cpu->mem, _t103, cpu->r[10]);
|
|
/* 022BAAE8 */ _t104 = cpu->r[1] + 0x00000060u;
|
|
/* 022BAAE8 */ rbrew_write32(cpu->mem, _t104, cpu->r[0]);
|
|
/* 022BAAEC */ /* nop */
|
|
/* 022BAAF0 */ _t105 = cpu->r[1] + 0x00000064u;
|
|
/* 022BAAF0 */ rbrew_write32(cpu->mem, _t105, cpu->r[9]);
|
|
/* 022BAAF4 */ _t106 = cpu->r[1] + 0x00000064u;
|
|
/* 022BAAF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 022BAAF8 */ /* nop */
|
|
/* 022BAAFC */ /* nop */
|
|
/* 022BAB00 */ _t107 = cpu->r[1] + 0x00000054u;
|
|
/* 022BAB00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022BAB04 */ _t108 = cpu->r[1] + 0x00000050u;
|
|
/* 022BAB04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t108);
|
|
/* 022BAB08 */ cpu->f[9] = cpu->f[10] + cpu->f[13];
|
|
/* 022BAB0C */ _t109 = cpu->r[1] + 0x00000024u;
|
|
/* 022BAB0C */ rbrew_write32(cpu->mem, _t109, cpu->r[12]);
|
|
/* 022BAB10 */ _t110 = cpu->r[1] + 0x00000024u;
|
|
/* 022BAB10 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 022BAB14 */ _t111 = cpu->r[1] + 0x00000020u;
|
|
/* 022BAB14 */ rbrew_write32(cpu->mem, _t111, cpu->r[10]);
|
|
/* 022BAB18 */ _t112 = cpu->r[1] + 0x00000058u;
|
|
/* 022BAB18 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[9]);
|
|
/* 022BAB1C */ _t113 = cpu->r[1] + 0x00000058u;
|
|
/* 022BAB1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t113);
|
|
/* 022BAB20 */ cpu->f[10] = cpu->f[8] * cpu->f[8];
|
|
/* 022BAB24 */ _t114 = cpu->r[1] + 0x00000020u;
|
|
/* 022BAB24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 022BAB28 */ _t115 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAB28 */ rbrew_write32(cpu->mem, _t115, cpu->r[0]);
|
|
/* 022BAB2C */ cpu->f[12] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 022BAB30 */ _t116 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAB30 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 022BAB34 */ cpu->f[9] = fma(cpu->f[11], cpu->f[11], cpu->f[12]);
|
|
/* 022BAB38 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 022BAB3C */ /* nop */
|
|
/* 022BAB40 */ _t117 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BAB40 */ _t118 = _t117 & 0x00000001u;
|
|
/* 022BAB40 */ if (_t118) goto L_022BAA44; else goto L_022BAB44;
|
|
L_022BAB44: ; // 0x22bab44
|
|
/* 022BAB44 */ /* nop */
|
|
/* 022BAB48 */ /* nop */
|
|
/* 022BAB4C */ /* nop */
|
|
/* 022BAB50 */ _t119 = cpu->r[1] + 0x00000020u;
|
|
/* 022BAB50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t119);
|
|
/* 022BAB54 */ cpu->f[12] = cpu->f[11] * cpu->f[28];
|
|
/* 022BAB58 */ _t120 = cpu->r[1] + 0x00000024u;
|
|
/* 022BAB58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t120);
|
|
/* 022BAB5C */ _t121 = cpu->r[30] + 0x00000000u;
|
|
/* 022BAB5C */ rbrew_write32(cpu->mem, _t121, cpu->r[11]);
|
|
/* 022BAB60 */ _t122 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAB60 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[12]);
|
|
/* 022BAB64 */ _t123 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAB64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 022BAB68 */ _t124 = cpu->r[30] + 0x00000004u;
|
|
/* 022BAB68 */ rbrew_write32(cpu->mem, _t124, cpu->r[12]);
|
|
/* 022BAB6C */ _t125 = cpu->r[30] + 0x00000008u;
|
|
/* 022BAB6C */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
L_022BAB70: ; // 0x22bab70
|
|
/* 022BAB70 */ _t126 = cpu->r[1] + 0x00000078u;
|
|
/* 022BAB70 */ cpu->r[28] = rbrew_read32(cpu->mem, _t126);
|
|
/* 022BAB74 */ _t127 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BAB74 */ cpu->r[29] = rbrew_read32(cpu->mem, _t127);
|
|
/* 022BAB78 */ _t128 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BAB78 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 022BAB7C */ _t129 = cpu->r[1] + 0x00000090u;
|
|
/* 022BAB7C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 022BAB80 */ _t130 = cpu->r[1] + 0x00000098u;
|
|
/* 022BAB80 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 022BAB84 */ _t131 = cpu->r[1] + 0x000000B0u;
|
|
/* 022BAB84 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 022BAB88 */ _t132 = cpu->r[1] + 0x00000088u;
|
|
/* 022BAB88 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t132);
|
|
/* 022BAB8C */ _t133 = cpu->r[1] + 0x000000A8u;
|
|
/* 022BAB8C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 022BAB90 */ _t134 = cpu->r[1] + 0x000000D0u;
|
|
/* 022BAB90 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 022BAB94 */ _t135 = cpu->r[1] + 0x000000C0u;
|
|
/* 022BAB94 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 022BAB98 */ _t136 = cpu->r[1] + 0x000000C8u;
|
|
/* 022BAB98 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t136);
|
|
/* 022BAB9C */ _t137 = cpu->r[1] + 0x000000B8u;
|
|
/* 022BAB9C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t137);
|
|
/* 022BABA0 */ _t138 = cpu->r[1] + 0x00000084u;
|
|
/* 022BABA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t138);
|
|
/* 022BABA4 */ _t139 = cpu->r[1] + 0x00000080u;
|
|
/* 022BABA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t139);
|
|
/* 022BABA8 */ _t140 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BABA8 */ _t141 = _t140 & 0x00000001u;
|
|
/* 022BABA8 */ if (_t141) goto L_022BABAC; // else: addr-0 trap, fall-through
|
|
L_022BABAC: ; // 0x22babac
|
|
/* 022BABAC */ _t142 = cpu->r[1] + 0x000000DCu;
|
|
/* 022BABAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
/* 022BABB0 */ cpu->lr = cpu->r[0];
|
|
/* 022BABB4 */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 022BABB8 */ return;
|
|
}
|
|
|
|
// fn_022BABBC @ 0x22babbc
|
|
void Gambit_fn_022BABBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_022BABBC: ; // 0x22babbc
|
|
/* 022BABBC */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 022BABBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BABBC */ cpu->r[1] = _t0;
|
|
/* 022BABC0 */ cpu->r[0] = cpu->lr;
|
|
/* 022BABC4 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 022BABC4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BABC8 */ /* nop */
|
|
/* 022BABCC */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 022BABCC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 022BABD0 */ /* nop */
|
|
/* 022BABD4 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022BABD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022BABD8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BABDC */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 022BABDC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 022BABE0 */ cpu->f[30] = cpu->f[2];
|
|
/* 022BABE4 */ _t5 = cpu->r[1] + 0x00000050u;
|
|
/* 022BABE4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 022BABE8 */ cpu->f[31] = cpu->f[1];
|
|
/* 022BABEC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 022BABF0 */ _t6 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BABF0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022BABF4 */ Gambit_fn_02043AC4(cpu);
|
|
/* 022BABF8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BABFC */ cpu->r[11] = 0x101F0000u;
|
|
/* 022BAC00 */ _t7 = cpu->r[11] + 0x00006350u;
|
|
/* 022BAC00 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BAC00 */ cpu->r[11] = _t7;
|
|
/* 022BAC04 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 022BAC04 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BAC08 */ cpu->f[9] = -cpu->f[10];
|
|
/* 022BAC0C */ _t9 = cpu->r[12] + 0x0000402Cu;
|
|
/* 022BAC0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BAC10 */ cpu->r[12] = 0x101E0000u;
|
|
/* 022BAC14 */ _t10 = cpu->r[11] + 0x00000008u;
|
|
/* 022BAC14 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BAC18 */ cpu->f[11] = -cpu->f[12];
|
|
/* 022BAC1C */ _t11 = cpu->r[12] + 0xFFFF958Cu;
|
|
/* 022BAC1C */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BAC20 */ cpu->f[13] = -cpu->f[8];
|
|
/* 022BAC24 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BAC24 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[9]);
|
|
/* 022BAC28 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BAC28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BAC2C */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 022BAC2C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[11]);
|
|
/* 022BAC30 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 022BAC30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BAC34 */ cpu->r[10] = 0x101C0000u;
|
|
/* 022BAC38 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022BAC38 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 022BAC3C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022BAC3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BAC40 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 022BAC44 */ _t18 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAC44 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
/* 022BAC48 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BAC4C */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BAC4C */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 022BAC50 */ _t20 = cpu->r[10] + 0x00001EF8u;
|
|
/* 022BAC50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BAC54 */ _t21 = cpu->r[1] + 0x00000030u;
|
|
/* 022BAC54 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 022BAC58 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BAC58 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022BAC58 */ if (_t23) goto L_022BAC90; else goto L_022BAC5C;
|
|
L_022BAC5C: ; // 0x22bac5c
|
|
/* 022BAC5C */ cpu->r[5] = 0x00000000u;
|
|
/* 022BAC60 */ cpu->f[1] = cpu->f[31];
|
|
/* 022BAC64 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BAC64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BAC68 */ cpu->r[10] = cpu->r[5];
|
|
/* 022BAC6C */ cpu->r[0] = cpu->r[1] + 0x00000018u;
|
|
/* 022BAC70 */ cpu->f[2] = cpu->f[3];
|
|
/* 022BAC74 */ cpu->r[6] = cpu->r[5];
|
|
/* 022BAC78 */ cpu->r[8] = 0x000000FFu;
|
|
/* 022BAC7C */ cpu->r[7] = 0x00000001u;
|
|
/* 022BAC80 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 022BAC80 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 022BAC84 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022BAC88 */ cpu->r[3] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BAC8C */ goto L_022BACBC;
|
|
L_022BAC90: ; // 0x22bac90
|
|
/* 022BAC90 */ cpu->f[1] = cpu->f[30];
|
|
/* 022BAC94 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BAC94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022BAC98 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BAC9C */ cpu->r[7] = 0x000000FFu;
|
|
/* 022BACA0 */ cpu->f[2] = cpu->f[31];
|
|
/* 022BACA4 */ _t27 = cpu->r[9] + 0x00004094u;
|
|
/* 022BACA4 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BACA8 */ cpu->r[6] = 0x00000001u;
|
|
/* 022BACAC */ cpu->r[9] = cpu->r[1] + 0x00000018u;
|
|
/* 022BACB0 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 022BACB4 */ Gambit_fn_0204A864(cpu);
|
|
/* 022BACB8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
L_022BACBC: ; // 0x22bacbc
|
|
/* 022BACBC */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 022BACBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BACC0 */ _t29 = cpu->r[1] + 0x00000050u;
|
|
/* 022BACC0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022BACC4 */ _t30 = cpu->r[1] + 0x00000040u;
|
|
/* 022BACC4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BACC8 */ _t31 = cpu->r[1] + 0x00000048u;
|
|
/* 022BACC8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 022BACCC */ _t32 = cpu->r[1] + 0x00000038u;
|
|
/* 022BACCC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 022BACD0 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BACD0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022BACD0 */ if (_t34) goto L_022BACD4; // else: addr-0 trap, fall-through
|
|
L_022BACD4: ; // 0x22bacd4
|
|
/* 022BACD4 */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BACD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022BACD8 */ cpu->lr = cpu->r[0];
|
|
/* 022BACDC */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022BACE0 */ return;
|
|
}
|
|
|
|
// fn_022BACE4 @ 0x22bace4
|
|
void Gambit_fn_022BACE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BACE4: ; // 0x22bace4
|
|
/* 022BACE4 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 022BACE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BACE4 */ cpu->r[1] = _t0;
|
|
/* 022BACE8 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 022BACE8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 022BACEC */ /* nop */
|
|
/* 022BACF0 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 022BACF0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BACF4 */ /* nop */
|
|
/* 022BACF8 */ /* nop */
|
|
/* 022BACFC */ cpu->r[0] = cpu->lr;
|
|
/* 022BAD00 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 022BAD00 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022BAD04 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 022BAD04 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 022BAD08 */ /* nop */
|
|
/* 022BAD0C */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 022BAD0C */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 022BAD10 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 022BAD10 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 022BAD14 */ /* nop */
|
|
/* 022BAD18 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 022BAD18 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 022BAD1C */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 022BAD20 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 022BAD20 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 022BAD24 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 022BAD28 */ cpu->r[7] = 0x101E0000u;
|
|
/* 022BAD2C */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BAD2C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022BAD30 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 022BAD34 */ _t10 = cpu->r[7] + 0x00003AB0u;
|
|
/* 022BAD34 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 022BAD34 */ cpu->r[7] = _t10;
|
|
/* 022BAD38 */ cpu->r[5] = 0x101E0000u;
|
|
/* 022BAD3C */ cpu->r[10] = 0x101E0000u;
|
|
/* 022BAD40 */ _t11 = cpu->r[5] + 0x00003AB8u;
|
|
/* 022BAD40 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 022BAD40 */ cpu->r[5] = _t11;
|
|
/* 022BAD44 */ cpu->r[10] = cpu->r[10] + 0x00003AC8u;
|
|
/* 022BAD48 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 022BAD48 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 022BAD4C */ cpu->r[9] = 0x101F0000u;
|
|
/* 022BAD50 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 022BAD50 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 022BAD54 */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 022BAD58 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 022BAD58 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 022BAD5C */ cpu->r[12] = 0x101E0000u;
|
|
/* 022BAD60 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 022BAD60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BAD64 */ cpu->r[31] = 0x101E0000u;
|
|
/* 022BAD68 */ _t16 = cpu->r[12] + 0x00003AC0u;
|
|
/* 022BAD68 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 022BAD68 */ cpu->r[12] = _t16;
|
|
/* 022BAD6C */ cpu->r[11] = 0x00000002u;
|
|
/* 022BAD70 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 022BAD70 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BAD74 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 022BAD74 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BAD78 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022BAD78 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 022BAD7C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 022BAD7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BAD80 */ _t21 = cpu->r[31] + 0x00003ADCu;
|
|
/* 022BAD80 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 022BAD80 */ cpu->r[31] = _t21;
|
|
/* 022BAD84 */ cpu->r[0] = 0x00000004u;
|
|
/* 022BAD88 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 022BAD88 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 022BAD8C */ cpu->r[12] = 0x101F0000u;
|
|
/* 022BAD90 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 022BAD90 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BAD94 */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 022BAD94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BAD94 */ cpu->r[12] = _t24;
|
|
/* 022BAD98 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 022BAD98 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 022BAD9C */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 022BAD9C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 022BADA0 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 022BADA0 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 022BADA4 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022BADA4 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 022BADA8 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 022BADA8 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 022BADAC */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 022BADAC */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 022BADB0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 022BADB4 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 022BADB4 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 022BADB8 */ cpu->r[6] = 0x101F0000u;
|
|
/* 022BADBC */ _t32 = cpu->r[7] + 0x00003AD8u;
|
|
/* 022BADBC */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 022BADC0 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 022BADC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BADC0 */ cpu->r[6] = _t33;
|
|
/* 022BADC4 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 022BADC4 */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 022BADC8 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 022BADC8 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 022BADCC */ cpu->r[5] = 0x101E0000u;
|
|
/* 022BADD0 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 022BADD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022BADD4 */ _t37 = cpu->r[5] + 0x00003AD0u;
|
|
/* 022BADD4 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 022BADD4 */ cpu->r[5] = _t37;
|
|
/* 022BADD8 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 022BADD8 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 022BADDC */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 022BADDC */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 022BADE0 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 022BADE0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 022BADE4 */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 022BADE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022BADE8 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 022BADE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022BADEC */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 022BADEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BADF0 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 022BADF0 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 022BADF4 */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 022BADF4 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 022BADF8 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 022BADF8 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 022BADFC */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022BADFC */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 022BAE00 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 022BAE00 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 022BAE04 */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 022BAE04 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022BAE08 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 022BAE08 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 022BAE0C */ cpu->r[11] = 0x101F0000u;
|
|
/* 022BAE10 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 022BAE10 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022BAE14 */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 022BAE14 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022BAE14 */ cpu->r[11] = _t52;
|
|
/* 022BAE18 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 022BAE18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022BAE1C */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022BAE1C */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022BAE20 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 022BAE20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022BAE24 */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 022BAE24 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 022BAE28 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 022BAE28 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 022BAE2C */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 022BAE2C */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 022BAE30 */ cpu->r[12] = 0x101F0000u;
|
|
/* 022BAE34 */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022BAE34 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 022BAE38 */ cpu->r[5] = 0x101F0000u;
|
|
/* 022BAE3C */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 022BAE3C */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 022BAE40 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 022BAE44 */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 022BAE44 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022BAE44 */ cpu->r[12] = _t61;
|
|
/* 022BAE48 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 022BAE48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022BAE4C */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 022BAE4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022BAE50 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 022BAE50 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 022BAE54 */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 022BAE54 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 022BAE58 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 022BAE58 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 022BAE5C */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 022BAE5C */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 022BAE60 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 022BAE60 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022BAE64 */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 022BAE64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022BAE68 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 022BAE68 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 022BAE6C */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 022BAE6C */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 022BAE70 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 022BAE70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022BAE74 */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022BAE74 */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 022BAE78 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 022BAE78 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 022BAE7C */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 022BAE7C */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 022BAE80 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 022BAE80 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 022BAE84 */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 022BAE84 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 022BAE88 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 022BAE88 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 022BAE8C */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 022BAE8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022BAE90 */ cpu->r[10] = 0x101F0000u;
|
|
/* 022BAE94 */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 022BAE94 */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 022BAE98 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 022BAE98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022BAE98 */ cpu->r[10] = _t81;
|
|
/* 022BAE9C */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 022BAE9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 022BAEA0 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 022BAEA0 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 022BAEA4 */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 022BAEA4 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 022BAEA8 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 022BAEA8 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 022BAEAC */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 022BAEAC */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 022BAEB0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BAEB4 */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 022BAEB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022BAEB8 */ _t88 = cpu->r[12] + 0x00004094u;
|
|
/* 022BAEB8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 022BAEBC */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 022BAEBC */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 022BAEC0 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 022BAEC0 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 022BAEC4 */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 022BAEC4 */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 022BAEC8 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022BAEC8 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 022BAECC */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 022BAECC */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022BAED0 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 022BAED0 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 022BAED4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BAED8 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 022BAED8 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 022BAEDC */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 022BAEE0 */ _t96 = cpu->r[12] + 0x00004120u;
|
|
/* 022BAEE0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 022BAEE4 */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 022BAEE4 */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 022BAEE8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BAEEC */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 022BAEEC */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 022BAEF0 */ _t99 = cpu->r[12] + 0x0000411Cu;
|
|
/* 022BAEF0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 022BAEF4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BAEF8 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 022BAEF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022BAEFC */ _t101 = cpu->r[11] + 0x00004124u;
|
|
/* 022BAEFC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 022BAF00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 022BAF04 */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 022BAF04 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 022BAF08 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BAF08 */ _t104 = _t103 & 0x00000001u;
|
|
/* 022BAF08 */ if (_t104) goto L_022BAF0C; else goto L_022BAF1C;
|
|
L_022BAF0C: ; // 0x22baf0c
|
|
/* 022BAF0C */ cpu->r[3] = 0x00000010u;
|
|
/* 022BAF10 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BAF14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BAF18 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BAF18 */ _t106 = _t105 & 0x00000001u;
|
|
/* 022BAF18 */ if (_t106) goto L_022BAF2C; else goto L_022BAF1C;
|
|
L_022BAF1C: ; // 0x22baf1c
|
|
/* 022BAF1C */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 022BAF1C */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 022BAF20 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 022BAF20 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 022BAF24 */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 022BAF24 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 022BAF28 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022BAF28 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_022BAF2C: ; // 0x22baf2c
|
|
/* 022BAF2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 022BAF30 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 022BAF34 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BAF34 */ _t112 = _t111 & 0x00000001u;
|
|
/* 022BAF34 */ if (_t112) goto L_022BAF38; else goto L_022BAF48;
|
|
L_022BAF38: ; // 0x22baf38
|
|
/* 022BAF38 */ cpu->r[3] = 0x00000010u;
|
|
/* 022BAF3C */ Gambit_fn_02801A78(cpu);
|
|
/* 022BAF40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BAF44 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BAF44 */ _t114 = _t113 & 0x00000001u;
|
|
/* 022BAF44 */ if (_t114) goto L_022BAF58; else goto L_022BAF48;
|
|
L_022BAF48: ; // 0x22baf48
|
|
/* 022BAF48 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 022BAF48 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 022BAF4C */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 022BAF4C */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 022BAF50 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 022BAF50 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 022BAF54 */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022BAF54 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_022BAF58: ; // 0x22baf58
|
|
/* 022BAF58 */ cpu->r[8] = 0x101F0000u;
|
|
/* 022BAF5C */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 022BAF60 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 022BAF60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 022BAF64 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 022BAF64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 022BAF68 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 022BAF68 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 022BAF6C */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 022BAF6C */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 022BAF70 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 022BAF70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 022BAF74 */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 022BAF74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 022BAF78 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 022BAF78 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 022BAF7C */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 022BAF7C */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 022BAF80 */ /* nop */
|
|
/* 022BAF84 */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 022BAF84 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 022BAF88 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 022BAF88 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 022BAF8C */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 022BAF8C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 022BAF90 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 022BAF90 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 022BAF94 */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 022BAF94 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 022BAF98 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 022BAF98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 022BAF9C */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 022BAF9C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 022BAFA0 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 022BAFA0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 022BAFA4 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BAFA4 */ _t136 = _t135 & 0x00000001u;
|
|
/* 022BAFA4 */ if (_t136) goto L_022BAFA8; // else: addr-0 trap, fall-through
|
|
L_022BAFA8: ; // 0x22bafa8
|
|
/* 022BAFA8 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BAFA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 022BAFAC */ cpu->lr = cpu->r[0];
|
|
/* 022BAFB0 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 022BAFB4 */ return;
|
|
}
|
|
|
|
// fn_022BAFB8 @ 0x22bafb8
|
|
void Gambit_fn_022BAFB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306;
|
|
|
|
L_022BAFB8: ; // 0x22bafb8
|
|
/* 022BAFB8 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 022BAFB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BAFB8 */ cpu->r[1] = _t0;
|
|
/* 022BAFBC */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 022BAFBC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BAFC0 */ /* nop */
|
|
/* 022BAFC4 */ cpu->r[0] = cpu->lr;
|
|
/* 022BAFC8 */ /* nop */
|
|
/* 022BAFCC */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 022BAFCC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BAFD0 */ cpu->r[28] = cpu->r[3];
|
|
/* 022BAFD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022BAFD4 */ _t3 = cpu->r[1] + 0x00000064u;
|
|
/* 022BAFD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BAFD8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BAFD8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BAFD8 */ if (_t5) goto L_022BAFDC; else goto L_022BAFEC;
|
|
L_022BAFDC: ; // 0x22bafdc
|
|
/* 022BAFDC */ cpu->r[3] = 0x00000318u;
|
|
/* 022BAFE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BAFE4 */ cpu->r[28] = cpu->r[3];
|
|
/* 022BAFE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022BAFE8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BAFE8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BAFE8 */ if (_t7) goto L_022BB8C0; else goto L_022BAFEC;
|
|
L_022BAFEC: ; // 0x22bafec
|
|
/* 022BAFEC */ cpu->r[3] = cpu->r[28];
|
|
/* 022BAFF0 */ Gambit_fn_0226EA1C(cpu);
|
|
/* 022BAFF4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BAFF8 */ cpu->r[12] = cpu->r[12] + 0x000046A4u;
|
|
/* 022BAFFC */ cpu->r[0] = cpu->r[28] + 0x00000184u;
|
|
/* 022BAFFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BB000 */ _t8 = cpu->r[28] + 0x00000004u;
|
|
/* 022BB000 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022BB004 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB004 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BB004 */ if (_t10) goto L_022BB008; else goto L_022BB010;
|
|
L_022BB008: ; // 0x22bb008
|
|
/* 022BB008 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BB00C */ Gambit_fn_02801A78(cpu);
|
|
L_022BB010: ; // 0x22bb010
|
|
/* 022BB010 */ cpu->r[27] = 0x00000000u;
|
|
/* 022BB014 */ _t11 = cpu->r[28] + 0x00000190u;
|
|
/* 022BB014 */ rbrew_write32(cpu->mem, _t11, cpu->r[27]);
|
|
/* 022BB018 */ cpu->r[31] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BB01C */ _t12 = cpu->r[28] + 0x00000194u;
|
|
/* 022BB01C */ rbrew_write32(cpu->mem, _t12, cpu->r[27]);
|
|
/* 022BB020 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB020 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BB020 */ if (_t14) goto L_022BB024; else goto L_022BB034;
|
|
L_022BB024: ; // 0x22bb024
|
|
/* 022BB024 */ cpu->r[3] = 0x00000038u;
|
|
/* 022BB028 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB02C */ cpu->r[31] = cpu->r[3];
|
|
/* 022BB02C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BB030 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB030 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BB030 */ if (_t16) goto L_022BB064; else goto L_022BB034;
|
|
L_022BB034: ; // 0x22bb034
|
|
/* 022BB034 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BB038 */ Gambit_fn_027FC29C(cpu);
|
|
/* 022BB03C */ cpu->r[4] = 0x10060000u;
|
|
/* 022BB040 */ _t17 = cpu->r[31] + 0x00000030u;
|
|
/* 022BB040 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 022BB044 */ cpu->r[4] = cpu->r[4] + 0x00004674u;
|
|
/* 022BB048 */ _t18 = cpu->r[31] + 0x00000034u;
|
|
/* 022BB048 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
/* 022BB04C */ _t19 = cpu->r[31] + 0x00000004u;
|
|
/* 022BB04C */ rbrew_write32(cpu->mem, _t19, cpu->r[4]);
|
|
/* 022BB050 */ _t20 = cpu->r[31] + 0x00000024u;
|
|
/* 022BB050 */ rbrew_write32(cpu->mem, _t20, cpu->r[27]);
|
|
/* 022BB054 */ _t21 = cpu->r[31] + 0x00000028u;
|
|
/* 022BB054 */ rbrew_write32(cpu->mem, _t21, cpu->r[27]);
|
|
/* 022BB058 */ _t22 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022BB058 */ rbrew_write32(cpu->mem, _t22, cpu->r[27]);
|
|
/* 022BB05C */ _t23 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022BB05C */ rbrew_write32(cpu->mem, _t23, cpu->r[27]);
|
|
/* 022BB060 */ _t24 = cpu->r[31] + 0x00000020u;
|
|
/* 022BB060 */ rbrew_write32(cpu->mem, _t24, cpu->r[27]);
|
|
L_022BB064: ; // 0x22bb064
|
|
/* 022BB064 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BB068 */ cpu->r[3] = cpu->r[28] + 0x000001D4u;
|
|
/* 022BB068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB06C */ _t25 = cpu->r[10] + 0x000042C8u;
|
|
/* 022BB06C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BB070 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB070 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BB070 */ if (_t27) goto L_022BB074; else goto L_022BB084;
|
|
L_022BB074: ; // 0x22bb074
|
|
/* 022BB074 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BB078 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB07C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB080 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB080 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022BB080 */ if (_t29) goto L_022BB0A8; else goto L_022BB084;
|
|
L_022BB084: ; // 0x22bb084
|
|
/* 022BB084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB088 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB088 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022BB088 */ if (_t31) goto L_022BB08C; else goto L_022BB09C;
|
|
L_022BB08C: ; // 0x22bb08c
|
|
/* 022BB08C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BB090 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB098 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB098 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022BB098 */ if (_t33) goto L_022BB0A8; else goto L_022BB09C;
|
|
L_022BB09C: ; // 0x22bb09c
|
|
/* 022BB09C */ _t34 = cpu->r[3] + 0x00000004u;
|
|
/* 022BB09C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 022BB0A0 */ _t35 = cpu->r[3] + 0x00000000u;
|
|
/* 022BB0A0 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 022BB0A4 */ _t36 = cpu->r[3] + 0x00000008u;
|
|
/* 022BB0A4 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
L_022BB0A8: ; // 0x22bb0a8
|
|
/* 022BB0A8 */ _t37 = cpu->r[28] + 0x000001E8u;
|
|
/* 022BB0A8 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
/* 022BB0AC */ cpu->r[3] = cpu->r[28] + 0x000001F4u;
|
|
/* 022BB0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB0B0 */ _t38 = cpu->r[28] + 0x000001E0u;
|
|
/* 022BB0B0 */ rbrew_write32(cpu->mem, _t38, cpu->r[27]);
|
|
/* 022BB0B4 */ _t39 = cpu->r[28] + 0x000001E4u;
|
|
/* 022BB0B4 */ rbrew_write32(cpu->mem, _t39, cpu->r[27]);
|
|
/* 022BB0B8 */ _t40 = cpu->r[28] + 0x000001F0u;
|
|
/* 022BB0B8 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]);
|
|
/* 022BB0BC */ _t41 = cpu->r[28] + 0x000001ECu;
|
|
/* 022BB0BC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[31]);
|
|
/* 022BB0C0 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB0C0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022BB0C0 */ if (_t43) goto L_022BB0C4; else goto L_022BB0D4;
|
|
L_022BB0C4: ; // 0x22bb0c4
|
|
/* 022BB0C4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BB0C8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB0CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB0D0 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB0D0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022BB0D0 */ if (_t45) goto L_022BB0F8; else goto L_022BB0D4;
|
|
L_022BB0D4: ; // 0x22bb0d4
|
|
/* 022BB0D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB0D8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB0D8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022BB0D8 */ if (_t47) goto L_022BB0DC; else goto L_022BB0EC;
|
|
L_022BB0DC: ; // 0x22bb0dc
|
|
/* 022BB0DC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BB0E0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB0E8 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB0E8 */ _t49 = _t48 & 0x00000001u;
|
|
/* 022BB0E8 */ if (_t49) goto L_022BB0F8; else goto L_022BB0EC;
|
|
L_022BB0EC: ; // 0x22bb0ec
|
|
/* 022BB0EC */ _t50 = cpu->r[3] + 0x00000004u;
|
|
/* 022BB0EC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 022BB0F0 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 022BB0F0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
/* 022BB0F4 */ _t52 = cpu->r[3] + 0x00000008u;
|
|
/* 022BB0F4 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[31]);
|
|
L_022BB0F8: ; // 0x22bb0f8
|
|
/* 022BB0F8 */ _t53 = cpu->r[28] + 0x00000208u;
|
|
/* 022BB0F8 */ rbrew_write32(cpu->mem, _t53, cpu->r[27]);
|
|
/* 022BB0FC */ cpu->r[5] = 0x101F0000u;
|
|
/* 022BB100 */ _t54 = cpu->r[28] + 0x00000200u;
|
|
/* 022BB100 */ rbrew_write32(cpu->mem, _t54, cpu->r[27]);
|
|
/* 022BB104 */ _t55 = cpu->r[28] + 0x0000020Cu;
|
|
/* 022BB104 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[31]);
|
|
/* 022BB108 */ _t56 = cpu->r[5] + 0x00006338u;
|
|
/* 022BB108 */ cpu->r[6] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022BB108 */ cpu->r[5] = _t56;
|
|
/* 022BB10C */ _t57 = cpu->r[28] + 0x00000210u;
|
|
/* 022BB10C */ rbrew_write32(cpu->mem, _t57, cpu->r[6]);
|
|
/* 022BB110 */ _t58 = cpu->r[5] + 0x00000004u;
|
|
/* 022BB110 */ cpu->r[7] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022BB114 */ _t59 = cpu->r[28] + 0x00000214u;
|
|
/* 022BB114 */ rbrew_write32(cpu->mem, _t59, cpu->r[7]);
|
|
/* 022BB118 */ _t60 = cpu->r[5] + 0x00000008u;
|
|
/* 022BB118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022BB11C */ _t61 = cpu->r[28] + 0x0000021Cu;
|
|
/* 022BB11C */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[27]);
|
|
/* 022BB120 */ _t62 = cpu->r[28] + 0x00000218u;
|
|
/* 022BB120 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 022BB124 */ _t63 = cpu->r[28] + 0x00000230u;
|
|
/* 022BB124 */ rbrew_write32(cpu->mem, _t63, cpu->r[27]);
|
|
/* 022BB128 */ _t64 = cpu->r[28] + 0x00000248u;
|
|
/* 022BB128 */ rbrew_write32(cpu->mem, _t64, cpu->r[27]);
|
|
/* 022BB12C */ _t65 = cpu->r[28] + 0x0000022Cu;
|
|
/* 022BB12C */ rbrew_write32(cpu->mem, _t65, cpu->r[27]);
|
|
/* 022BB130 */ _t66 = cpu->r[28] + 0x00000244u;
|
|
/* 022BB130 */ rbrew_write32(cpu->mem, _t66, cpu->r[27]);
|
|
/* 022BB134 */ _t67 = cpu->r[28] + 0x00000228u;
|
|
/* 022BB134 */ rbrew_write32(cpu->mem, _t67, cpu->r[27]);
|
|
/* 022BB138 */ _t68 = cpu->r[28] + 0x0000023Cu;
|
|
/* 022BB138 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[31]);
|
|
/* 022BB13C */ cpu->r[3] = cpu->r[28] + 0x0000024Cu;
|
|
/* 022BB140 */ _t69 = cpu->r[28] + 0x00000234u;
|
|
/* 022BB140 */ rbrew_write32(cpu->mem, _t69, cpu->r[27]);
|
|
/* 022BB144 */ Gambit_fn_023F9DB0(cpu);
|
|
/* 022BB148 */ cpu->r[3] = cpu->r[28] + 0x000002B0u;
|
|
/* 022BB14C */ Gambit_fn_023F9FC0(cpu);
|
|
/* 022BB150 */ cpu->r[3] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB154 */ _t70 = cpu->r[28] + 0x00000310u;
|
|
/* 022BB154 */ rbrew_write32(cpu->mem, _t70, cpu->r[27]);
|
|
/* 022BB158 */ cpu->r[0] = 0x00000007u;
|
|
/* 022BB15C */ cpu->r[4] = cpu->r[28];
|
|
/* 022BB160 */ _t71 = cpu->r[28] + 0x00000314u;
|
|
/* 022BB160 */ rbrew_write32(cpu->mem, _t71, cpu->r[27]);
|
|
/* 022BB164 */ cpu->r[6] = 0x00000000u;
|
|
/* 022BB168 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022BB16C */ _t72 = cpu->r[1] + 0x00000008u;
|
|
/* 022BB16C */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[0]);
|
|
/* 022BB170 */ Gambit_fn_022C0178(cpu);
|
|
/* 022BB174 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BB178 */ cpu->r[4] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB17C */ Gambit_fn_02000834(cpu);
|
|
/* 022BB180 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BB184 */ cpu->r[26] = 0x022C0000u;
|
|
/* 022BB188 */ cpu->r[12] = cpu->r[12] + 0x000042E8u;
|
|
/* 022BB18C */ cpu->r[25] = 0x10060000u;
|
|
/* 022BB190 */ cpu->r[26] = cpu->r[26] + 0xFFFFFB38u;
|
|
/* 022BB194 */ cpu->r[25] = cpu->r[25] + 0x00004138u;
|
|
/* 022BB198 */ cpu->ctr = cpu->r[26];
|
|
/* 022BB19C */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB19C */ rbrew_write32(cpu->mem, _t73, cpu->r[25]);
|
|
/* 022BB1A0 */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB1A0 */ rbrew_write32(cpu->mem, _t74, cpu->r[12]);
|
|
/* 022BB1A4 */ _t75 = cpu->r[28] + 0x000001B0u;
|
|
/* 022BB1A4 */ cpu->r[24] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022BB1A8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB1AC */ _t76 = cpu->r[24] + 0x00000000u;
|
|
/* 022BB1AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022BB1B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB1B4 */ cpu->r[29] = 0x10110000u;
|
|
/* 022BB1B8 */ _t77 = cpu->r[29] + 0x00007399u;
|
|
/* 022BB1B8 */ cpu->r[29] = rbrew_read8(cpu->mem, _t77);
|
|
/* 022BB1BC */ _t78 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB1BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022BB1C0 */ _t79 = cpu->r[12] + 0x00000000u;
|
|
/* 022BB1C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t79);
|
|
/* 022BB1C4 */ cpu->r[31] = 0x00000000u;
|
|
/* 022BB1C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 022BB1CC */ cpu->r[6] = 0x00080000u;
|
|
/* 022BB1D0 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB1D0 */ _t81 = _t80 & 0x00000001u;
|
|
/* 022BB1D0 */ if (_t81) goto L_022BB1F8; else goto L_022BB1D4;
|
|
L_022BB1D4: ; // 0x22bb1d4
|
|
/* 022BB1D4 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022BB1D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 022BB1DC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022BB1E0 */ _t82 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB1E0 */ _t83 = _t82 & 0x00000001u;
|
|
/* 022BB1E0 */ if (_t83) goto L_022BB1F4; else goto L_022BB1E4;
|
|
L_022BB1E4: ; // 0x22bb1e4
|
|
/* 022BB1E4 */ _t84 = cpu->r[12] + 0x00000000u;
|
|
/* 022BB1E4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t84);
|
|
/* 022BB1E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[29]);
|
|
/* 022BB1EC */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB1EC */ _t86 = _t85 & 0x00000001u;
|
|
/* 022BB1EC */ if (_t86) goto L_022BB1F0; else goto L_022BB1D4;
|
|
L_022BB1F0: ; // 0x22bb1f0
|
|
/* 022BB1F0 */ goto L_022BB1F8;
|
|
L_022BB1F4: ; // 0x22bb1f4
|
|
/* 022BB1F4 */ cpu->r[31] = 0x00000000u;
|
|
L_022BB1F8: ; // 0x22bb1f8
|
|
/* 022BB1F8 */ _t87 = cpu->r[24] + 0x00000008u;
|
|
/* 022BB1F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022BB1FC */ _t88 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB1FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022BB200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 022BB204 */ _t89 = cpu->r[5] + 0x00000014u;
|
|
/* 022BB204 */ cpu->r[6] = rbrew_read32(cpu->mem, _t89);
|
|
/* 022BB208 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BB208 */ _t91 = _t90 & 0x00000001u;
|
|
/* 022BB208 */ if (_t91) goto L_022BB210; else goto L_022BB20C;
|
|
L_022BB20C: ; // 0x22bb20c
|
|
/* 022BB20C */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_022BB210: ; // 0x22bb210
|
|
/* 022BB210 */ cpu->ctr = cpu->r[6];
|
|
/* 022BB214 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB218 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB21C */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB21C */ cpu->r[4] = rbrew_read32(cpu->mem, _t92);
|
|
/* 022BB220 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BB224 */ cpu->r[5] = cpu->r[31];
|
|
/* 022BB228 */ cpu->r[6] = 0x00000000u;
|
|
/* 022BB22C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022BB230 */ _t93 = cpu->r[30] + cpu->r[31];
|
|
/* 022BB230 */ rbrew_write8(cpu->mem, _t93, (uint8_t)cpu->r[29]);
|
|
/* 022BB234 */ cpu->r[0] = 0x00000000u;
|
|
/* 022BB238 */ _t94 = cpu->r[1] + 0x00000028u;
|
|
/* 022BB238 */ rbrew_write32(cpu->mem, _t94, cpu->r[27]);
|
|
/* 022BB23C */ cpu->r[12] = 0x022C0000u;
|
|
/* 022BB240 */ _t95 = cpu->r[1] + 0x00000026u;
|
|
/* 022BB240 */ rbrew_write16(cpu->mem, _t95, (uint16_t)cpu->r[27]);
|
|
/* 022BB244 */ cpu->r[12] = cpu->r[12] + 0xFFFFEAC0u;
|
|
/* 022BB248 */ _t96 = cpu->r[1] + 0x00000008u;
|
|
/* 022BB248 */ rbrew_write8(cpu->mem, _t96, (uint8_t)cpu->r[0]);
|
|
/* 022BB24C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 022BB250 */ _t97 = cpu->r[1] + 0x00000020u;
|
|
/* 022BB250 */ rbrew_write32(cpu->mem, _t97, cpu->r[12]);
|
|
/* 022BB254 */ _t98 = cpu->r[1] + 0x00000024u;
|
|
/* 022BB254 */ rbrew_write16(cpu->mem, _t98, (uint16_t)cpu->r[27]);
|
|
/* 022BB258 */ cpu->r[9] = 0x022C0000u;
|
|
/* 022BB25C */ _t99 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB25C */ rbrew_write16(cpu->mem, _t99, (uint16_t)cpu->r[27]);
|
|
/* 022BB260 */ cpu->r[9] = cpu->r[9] + 0xFFFFEA30u;
|
|
/* 022BB264 */ cpu->r[3] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB268 */ _t100 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022BB268 */ rbrew_write16(cpu->mem, _t100, (uint16_t)cpu->r[4]);
|
|
/* 022BB26C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022BB270 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022BB274 */ _t101 = cpu->r[1] + 0x00000018u;
|
|
/* 022BB274 */ rbrew_write32(cpu->mem, _t101, cpu->r[9]);
|
|
/* 022BB278 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 022BB27C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022BB280 */ _t102 = cpu->r[1] + 0x00000014u;
|
|
/* 022BB280 */ rbrew_write16(cpu->mem, _t102, (uint16_t)cpu->r[27]);
|
|
/* 022BB284 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB288 */ _t103 = cpu->r[1] + 0x00000016u;
|
|
/* 022BB288 */ rbrew_write16(cpu->mem, _t103, (uint16_t)cpu->r[9]);
|
|
/* 022BB28C */ Gambit_fn_022C0428(cpu);
|
|
/* 022BB290 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BB294 */ _t104 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB294 */ rbrew_write32(cpu->mem, _t104, cpu->r[25]);
|
|
/* 022BB298 */ cpu->r[9] = cpu->r[9] + 0x000042D8u;
|
|
/* 022BB29C */ _t105 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB29C */ rbrew_write32(cpu->mem, _t105, cpu->r[9]);
|
|
/* 022BB2A0 */ _t106 = cpu->r[28] + 0x000001ACu;
|
|
/* 022BB2A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022BB2A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022BB2A8 */ _t107 = cpu->r[28] + 0x000001B0u;
|
|
/* 022BB2A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022BB2AC */ _t108 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB2AC */ _t109 = _t108 & 0x00000001u;
|
|
/* 022BB2AC */ if (_t109) goto L_022BB2B0; else goto L_022BB2B4;
|
|
L_022BB2B0: ; // 0x22bb2b0
|
|
/* 022BB2B0 */ cpu->r[30] = cpu->r[30] + 0x00000024u;
|
|
L_022BB2B4: ; // 0x22bb2b4
|
|
/* 022BB2B4 */ cpu->ctr = cpu->r[26];
|
|
/* 022BB2B8 */ _t110 = cpu->r[30] + 0x00000000u;
|
|
/* 022BB2B8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t110);
|
|
/* 022BB2BC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB2C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB2C4 */ _t111 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB2C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t111);
|
|
/* 022BB2C8 */ _t112 = cpu->r[8] + 0x00000000u;
|
|
/* 022BB2C8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t112);
|
|
/* 022BB2CC */ cpu->r[31] = 0x00000000u;
|
|
/* 022BB2D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[29]);
|
|
/* 022BB2D4 */ cpu->r[10] = 0x00080000u;
|
|
/* 022BB2D8 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB2D8 */ _t114 = _t113 & 0x00000001u;
|
|
/* 022BB2D8 */ if (_t114) goto L_022BB300; else goto L_022BB2DC;
|
|
L_022BB2DC: ; // 0x22bb2dc
|
|
/* 022BB2DC */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022BB2E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 022BB2E4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 022BB2E8 */ _t115 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB2E8 */ _t116 = _t115 & 0x00000001u;
|
|
/* 022BB2E8 */ if (_t116) goto L_022BB2FC; else goto L_022BB2EC;
|
|
L_022BB2EC: ; // 0x22bb2ec
|
|
/* 022BB2EC */ _t117 = cpu->r[8] + 0x00000000u;
|
|
/* 022BB2EC */ cpu->r[0] = rbrew_read8(cpu->mem, _t117);
|
|
/* 022BB2F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 022BB2F4 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB2F4 */ _t119 = _t118 & 0x00000001u;
|
|
/* 022BB2F4 */ if (_t119) goto L_022BB2F8; else goto L_022BB2DC;
|
|
L_022BB2F8: ; // 0x22bb2f8
|
|
/* 022BB2F8 */ goto L_022BB300;
|
|
L_022BB2FC: ; // 0x22bb2fc
|
|
/* 022BB2FC */ cpu->r[31] = 0x00000000u;
|
|
L_022BB300: ; // 0x22bb300
|
|
/* 022BB300 */ _t120 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB300 */ cpu->r[10] = rbrew_read32(cpu->mem, _t120);
|
|
/* 022BB304 */ _t121 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB304 */ cpu->r[9] = rbrew_read32(cpu->mem, _t121);
|
|
/* 022BB308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 022BB30C */ _t122 = cpu->r[9] + 0x00000014u;
|
|
/* 022BB30C */ cpu->r[0] = rbrew_read32(cpu->mem, _t122);
|
|
/* 022BB310 */ _t123 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BB310 */ _t124 = _t123 & 0x00000001u;
|
|
/* 022BB310 */ if (_t124) goto L_022BB318; else goto L_022BB314;
|
|
L_022BB314: ; // 0x22bb314
|
|
/* 022BB314 */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_022BB318: ; // 0x22bb318
|
|
/* 022BB318 */ cpu->ctr = cpu->r[0];
|
|
/* 022BB31C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB320 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB324 */ _t125 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB324 */ cpu->r[4] = rbrew_read32(cpu->mem, _t125);
|
|
/* 022BB328 */ cpu->r[3] = cpu->r[24];
|
|
/* 022BB32C */ cpu->r[5] = cpu->r[31];
|
|
/* 022BB330 */ cpu->r[6] = 0x00000000u;
|
|
/* 022BB334 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022BB338 */ _t126 = cpu->r[24] + cpu->r[31];
|
|
/* 022BB338 */ rbrew_write8(cpu->mem, _t126, (uint8_t)cpu->r[29]);
|
|
/* 022BB33C */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 022BB340 */ _t127 = cpu->r[1] + 0x00000014u;
|
|
/* 022BB340 */ rbrew_write16(cpu->mem, _t127, (uint16_t)cpu->r[27]);
|
|
/* 022BB344 */ cpu->r[9] = 0x022C0000u;
|
|
/* 022BB348 */ _t128 = cpu->r[1] + 0x00000016u;
|
|
/* 022BB348 */ rbrew_write16(cpu->mem, _t128, (uint16_t)cpu->r[10]);
|
|
/* 022BB34C */ cpu->r[9] = cpu->r[9] + 0xFFFFED1Cu;
|
|
/* 022BB350 */ _t129 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB350 */ rbrew_write16(cpu->mem, _t129, (uint16_t)cpu->r[27]);
|
|
/* 022BB354 */ cpu->r[12] = 0x022C0000u;
|
|
/* 022BB358 */ _t130 = cpu->r[1] + 0x00000024u;
|
|
/* 022BB358 */ rbrew_write16(cpu->mem, _t130, (uint16_t)cpu->r[27]);
|
|
/* 022BB35C */ _t131 = cpu->r[1] + 0x00000018u;
|
|
/* 022BB35C */ rbrew_write32(cpu->mem, _t131, cpu->r[9]);
|
|
/* 022BB360 */ cpu->r[12] = cpu->r[12] + 0xFFFFEED8u;
|
|
/* 022BB364 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022BB368 */ _t132 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022BB368 */ rbrew_write16(cpu->mem, _t132, (uint16_t)cpu->r[10]);
|
|
/* 022BB36C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022BB370 */ cpu->r[4] = 0x022C0000u;
|
|
/* 022BB374 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 022BB374 */ rbrew_write32(cpu->mem, _t133, cpu->r[12]);
|
|
/* 022BB378 */ cpu->r[3] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB37C */ cpu->r[4] = cpu->r[4] + 0xFFFFEB04u;
|
|
/* 022BB380 */ _t134 = cpu->r[1] + 0x00000026u;
|
|
/* 022BB380 */ rbrew_write16(cpu->mem, _t134, (uint16_t)cpu->r[10]);
|
|
/* 022BB384 */ cpu->r[8] = 0x00000001u;
|
|
/* 022BB388 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BB38C */ _t135 = cpu->r[1] + 0x00000020u;
|
|
/* 022BB38C */ rbrew_write32(cpu->mem, _t135, cpu->r[4]);
|
|
/* 022BB390 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB394 */ _t136 = cpu->r[1] + 0x00000008u;
|
|
/* 022BB394 */ rbrew_write8(cpu->mem, _t136, (uint8_t)cpu->r[8]);
|
|
/* 022BB398 */ Gambit_fn_022C0428(cpu);
|
|
/* 022BB39C */ cpu->r[0] = 0x10060000u;
|
|
/* 022BB3A0 */ _t137 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB3A0 */ rbrew_write32(cpu->mem, _t137, cpu->r[25]);
|
|
/* 022BB3A4 */ cpu->r[0] = cpu->r[0] + 0x000042F8u;
|
|
/* 022BB3A8 */ _t138 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB3A8 */ rbrew_write32(cpu->mem, _t138, cpu->r[0]);
|
|
/* 022BB3AC */ _t139 = cpu->r[28] + 0x000001ACu;
|
|
/* 022BB3AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t139);
|
|
/* 022BB3B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000002u);
|
|
/* 022BB3B4 */ _t140 = cpu->r[28] + 0x000001B0u;
|
|
/* 022BB3B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t140);
|
|
/* 022BB3B8 */ _t141 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB3B8 */ _t142 = _t141 & 0x00000001u;
|
|
/* 022BB3B8 */ if (_t142) goto L_022BB3BC; else goto L_022BB3C0;
|
|
L_022BB3BC: ; // 0x22bb3bc
|
|
/* 022BB3BC */ cpu->r[30] = cpu->r[30] + 0x00000048u;
|
|
L_022BB3C0: ; // 0x22bb3c0
|
|
/* 022BB3C0 */ cpu->ctr = cpu->r[26];
|
|
/* 022BB3C4 */ _t143 = cpu->r[30] + 0x00000000u;
|
|
/* 022BB3C4 */ cpu->r[24] = rbrew_read32(cpu->mem, _t143);
|
|
/* 022BB3C8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB3CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB3D0 */ _t144 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB3D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t144);
|
|
/* 022BB3D4 */ _t145 = cpu->r[11] + 0x00000000u;
|
|
/* 022BB3D4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t145);
|
|
/* 022BB3D8 */ cpu->r[31] = 0x00000000u;
|
|
/* 022BB3DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 022BB3E0 */ cpu->r[12] = 0x00080000u;
|
|
/* 022BB3E4 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB3E4 */ _t147 = _t146 & 0x00000001u;
|
|
/* 022BB3E4 */ if (_t147) goto L_022BB40C; else goto L_022BB3E8;
|
|
L_022BB3E8: ; // 0x22bb3e8
|
|
/* 022BB3E8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022BB3EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 022BB3F0 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 022BB3F4 */ _t148 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB3F4 */ _t149 = _t148 & 0x00000001u;
|
|
/* 022BB3F4 */ if (_t149) goto L_022BB408; else goto L_022BB3F8;
|
|
L_022BB3F8: ; // 0x22bb3f8
|
|
/* 022BB3F8 */ _t150 = cpu->r[11] + 0x00000000u;
|
|
/* 022BB3F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t150);
|
|
/* 022BB3FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 022BB400 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB400 */ _t152 = _t151 & 0x00000001u;
|
|
/* 022BB400 */ if (_t152) goto L_022BB404; else goto L_022BB3E8;
|
|
L_022BB404: ; // 0x22bb404
|
|
/* 022BB404 */ goto L_022BB40C;
|
|
L_022BB408: ; // 0x22bb408
|
|
/* 022BB408 */ cpu->r[31] = 0x00000000u;
|
|
L_022BB40C: ; // 0x22bb40c
|
|
/* 022BB40C */ _t153 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB40C */ cpu->r[12] = rbrew_read32(cpu->mem, _t153);
|
|
/* 022BB410 */ _t154 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB410 */ cpu->r[5] = rbrew_read32(cpu->mem, _t154);
|
|
/* 022BB414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 022BB418 */ _t155 = cpu->r[5] + 0x00000014u;
|
|
/* 022BB418 */ cpu->r[6] = rbrew_read32(cpu->mem, _t155);
|
|
/* 022BB41C */ _t156 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BB41C */ _t157 = _t156 & 0x00000001u;
|
|
/* 022BB41C */ if (_t157) goto L_022BB424; else goto L_022BB420;
|
|
L_022BB420: ; // 0x22bb420
|
|
/* 022BB420 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_022BB424: ; // 0x22bb424
|
|
/* 022BB424 */ cpu->ctr = cpu->r[6];
|
|
/* 022BB428 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB42C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB430 */ _t158 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB430 */ cpu->r[4] = rbrew_read32(cpu->mem, _t158);
|
|
/* 022BB434 */ cpu->r[6] = 0x00000000u;
|
|
/* 022BB438 */ cpu->r[5] = cpu->r[31];
|
|
/* 022BB43C */ cpu->r[3] = cpu->r[24];
|
|
/* 022BB440 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022BB444 */ _t159 = cpu->r[24] + cpu->r[31];
|
|
/* 022BB444 */ rbrew_write8(cpu->mem, _t159, (uint8_t)cpu->r[29]);
|
|
/* 022BB448 */ cpu->r[0] = 0x00000002u;
|
|
/* 022BB44C */ _t160 = cpu->r[1] + 0x00000024u;
|
|
/* 022BB44C */ rbrew_write16(cpu->mem, _t160, (uint16_t)cpu->r[27]);
|
|
/* 022BB450 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 022BB454 */ _t161 = cpu->r[1] + 0x00000008u;
|
|
/* 022BB454 */ rbrew_write8(cpu->mem, _t161, (uint8_t)cpu->r[0]);
|
|
/* 022BB458 */ cpu->r[9] = 0x022C0000u;
|
|
/* 022BB45C */ _t162 = cpu->r[1] + 0x00000016u;
|
|
/* 022BB45C */ rbrew_write16(cpu->mem, _t162, (uint16_t)cpu->r[10]);
|
|
/* 022BB460 */ cpu->r[12] = 0x022C0000u;
|
|
/* 022BB464 */ _t163 = cpu->r[1] + 0x00000026u;
|
|
/* 022BB464 */ rbrew_write16(cpu->mem, _t163, (uint16_t)cpu->r[27]);
|
|
/* 022BB468 */ _t164 = cpu->r[1] + 0x00000014u;
|
|
/* 022BB468 */ rbrew_write16(cpu->mem, _t164, (uint16_t)cpu->r[27]);
|
|
/* 022BB46C */ cpu->r[12] = cpu->r[12] + 0xFFFFFFC0u;
|
|
/* 022BB470 */ _t165 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022BB470 */ rbrew_write16(cpu->mem, _t165, (uint16_t)cpu->r[10]);
|
|
/* 022BB474 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022BB478 */ _t166 = cpu->r[1] + 0x00000018u;
|
|
/* 022BB478 */ rbrew_write32(cpu->mem, _t166, cpu->r[12]);
|
|
/* 022BB47C */ cpu->r[9] = cpu->r[9] + 0xFFFFEF44u;
|
|
/* 022BB480 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BB484 */ _t167 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB484 */ rbrew_write16(cpu->mem, _t167, (uint16_t)cpu->r[27]);
|
|
/* 022BB488 */ cpu->r[3] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB48C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022BB490 */ _t168 = cpu->r[1] + 0x00000020u;
|
|
/* 022BB490 */ rbrew_write32(cpu->mem, _t168, cpu->r[9]);
|
|
/* 022BB494 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB498 */ _t169 = cpu->r[1] + 0x00000028u;
|
|
/* 022BB498 */ rbrew_write32(cpu->mem, _t169, cpu->r[27]);
|
|
/* 022BB49C */ Gambit_fn_022C0428(cpu);
|
|
/* 022BB4A0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BB4A4 */ _t170 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB4A4 */ rbrew_write32(cpu->mem, _t170, cpu->r[25]);
|
|
/* 022BB4A8 */ cpu->r[5] = cpu->r[5] + 0x00004308u;
|
|
/* 022BB4AC */ _t171 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB4AC */ rbrew_write32(cpu->mem, _t171, cpu->r[5]);
|
|
/* 022BB4B0 */ _t172 = cpu->r[28] + 0x000001ACu;
|
|
/* 022BB4B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t172);
|
|
/* 022BB4B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 022BB4B8 */ _t173 = cpu->r[28] + 0x000001B0u;
|
|
/* 022BB4B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t173);
|
|
/* 022BB4BC */ _t174 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB4BC */ _t175 = _t174 & 0x00000001u;
|
|
/* 022BB4BC */ if (_t175) goto L_022BB4C0; else goto L_022BB4C4;
|
|
L_022BB4C0: ; // 0x22bb4c0
|
|
/* 022BB4C0 */ cpu->r[30] = cpu->r[30] + 0x0000006Cu;
|
|
L_022BB4C4: ; // 0x22bb4c4
|
|
/* 022BB4C4 */ cpu->ctr = cpu->r[26];
|
|
/* 022BB4C8 */ _t176 = cpu->r[30] + 0x00000000u;
|
|
/* 022BB4C8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t176);
|
|
/* 022BB4CC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB4D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB4D4 */ _t177 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB4D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t177);
|
|
/* 022BB4D8 */ _t178 = cpu->r[6] + 0x00000000u;
|
|
/* 022BB4D8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t178);
|
|
/* 022BB4DC */ cpu->r[31] = 0x00000000u;
|
|
/* 022BB4E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]);
|
|
/* 022BB4E4 */ cpu->r[7] = 0x00080000u;
|
|
/* 022BB4E8 */ _t179 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB4E8 */ _t180 = _t179 & 0x00000001u;
|
|
/* 022BB4E8 */ if (_t180) goto L_022BB510; else goto L_022BB4EC;
|
|
L_022BB4EC: ; // 0x22bb4ec
|
|
/* 022BB4EC */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022BB4F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 022BB4F4 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 022BB4F8 */ _t181 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB4F8 */ _t182 = _t181 & 0x00000001u;
|
|
/* 022BB4F8 */ if (_t182) goto L_022BB50C; else goto L_022BB4FC;
|
|
L_022BB4FC: ; // 0x22bb4fc
|
|
/* 022BB4FC */ _t183 = cpu->r[6] + 0x00000000u;
|
|
/* 022BB4FC */ cpu->r[8] = rbrew_read8(cpu->mem, _t183);
|
|
/* 022BB500 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]);
|
|
/* 022BB504 */ _t184 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB504 */ _t185 = _t184 & 0x00000001u;
|
|
/* 022BB504 */ if (_t185) goto L_022BB508; else goto L_022BB4EC;
|
|
L_022BB508: ; // 0x22bb508
|
|
/* 022BB508 */ goto L_022BB510;
|
|
L_022BB50C: ; // 0x22bb50c
|
|
/* 022BB50C */ cpu->r[31] = 0x00000000u;
|
|
L_022BB510: ; // 0x22bb510
|
|
/* 022BB510 */ _t186 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB510 */ cpu->r[6] = rbrew_read32(cpu->mem, _t186);
|
|
/* 022BB514 */ _t187 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB514 */ cpu->r[9] = rbrew_read32(cpu->mem, _t187);
|
|
/* 022BB518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 022BB51C */ _t188 = cpu->r[9] + 0x00000014u;
|
|
/* 022BB51C */ cpu->r[0] = rbrew_read32(cpu->mem, _t188);
|
|
/* 022BB520 */ _t189 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BB520 */ _t190 = _t189 & 0x00000001u;
|
|
/* 022BB520 */ if (_t190) goto L_022BB528; else goto L_022BB524;
|
|
L_022BB524: ; // 0x22bb524
|
|
/* 022BB524 */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_022BB528: ; // 0x22bb528
|
|
/* 022BB528 */ cpu->ctr = cpu->r[0];
|
|
/* 022BB52C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB530 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB534 */ _t191 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB534 */ cpu->r[4] = rbrew_read32(cpu->mem, _t191);
|
|
/* 022BB538 */ cpu->r[6] = 0x00000000u;
|
|
/* 022BB53C */ cpu->r[5] = cpu->r[31];
|
|
/* 022BB540 */ cpu->r[3] = cpu->r[24];
|
|
/* 022BB544 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022BB548 */ _t192 = cpu->r[24] + cpu->r[31];
|
|
/* 022BB548 */ rbrew_write8(cpu->mem, _t192, (uint8_t)cpu->r[29]);
|
|
/* 022BB54C */ cpu->r[10] = 0x00000003u;
|
|
/* 022BB550 */ _t193 = cpu->r[1] + 0x00000028u;
|
|
/* 022BB550 */ rbrew_write32(cpu->mem, _t193, cpu->r[27]);
|
|
/* 022BB554 */ cpu->r[12] = 0x022C0000u;
|
|
/* 022BB558 */ _t194 = cpu->r[1] + 0x00000008u;
|
|
/* 022BB558 */ rbrew_write8(cpu->mem, _t194, (uint8_t)cpu->r[10]);
|
|
/* 022BB55C */ cpu->r[9] = 0x022C0000u;
|
|
/* 022BB560 */ _t195 = cpu->r[1] + 0x00000024u;
|
|
/* 022BB560 */ rbrew_write16(cpu->mem, _t195, (uint16_t)cpu->r[27]);
|
|
/* 022BB564 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFC4u;
|
|
/* 022BB568 */ _t196 = cpu->r[1] + 0x00000026u;
|
|
/* 022BB568 */ rbrew_write16(cpu->mem, _t196, (uint16_t)cpu->r[27]);
|
|
/* 022BB56C */ _t197 = cpu->r[1] + 0x00000018u;
|
|
/* 022BB56C */ rbrew_write32(cpu->mem, _t197, cpu->r[9]);
|
|
/* 022BB570 */ cpu->r[12] = cpu->r[12] + 0xFFFFEFA0u;
|
|
/* 022BB574 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022BB578 */ _t198 = cpu->r[1] + 0x00000020u;
|
|
/* 022BB578 */ rbrew_write32(cpu->mem, _t198, cpu->r[12]);
|
|
/* 022BB57C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 022BB580 */ _t199 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB580 */ rbrew_write16(cpu->mem, _t199, (uint16_t)cpu->r[27]);
|
|
/* 022BB584 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BB588 */ _t200 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022BB588 */ rbrew_write16(cpu->mem, _t200, (uint16_t)cpu->r[4]);
|
|
/* 022BB58C */ cpu->r[3] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB590 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022BB594 */ _t201 = cpu->r[1] + 0x00000016u;
|
|
/* 022BB594 */ rbrew_write16(cpu->mem, _t201, (uint16_t)cpu->r[4]);
|
|
/* 022BB598 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB59C */ _t202 = cpu->r[1] + 0x00000014u;
|
|
/* 022BB59C */ rbrew_write16(cpu->mem, _t202, (uint16_t)cpu->r[27]);
|
|
/* 022BB5A0 */ Gambit_fn_022C0428(cpu);
|
|
/* 022BB5A4 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BB5A8 */ _t203 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB5A8 */ rbrew_write32(cpu->mem, _t203, cpu->r[25]);
|
|
/* 022BB5AC */ cpu->r[10] = cpu->r[10] + 0x0000431Cu;
|
|
/* 022BB5B0 */ _t204 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB5B0 */ rbrew_write32(cpu->mem, _t204, cpu->r[10]);
|
|
/* 022BB5B4 */ _t205 = cpu->r[28] + 0x000001ACu;
|
|
/* 022BB5B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t205);
|
|
/* 022BB5B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000004u);
|
|
/* 022BB5BC */ _t206 = cpu->r[28] + 0x000001B0u;
|
|
/* 022BB5BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t206);
|
|
/* 022BB5C0 */ _t207 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB5C0 */ _t208 = _t207 & 0x00000001u;
|
|
/* 022BB5C0 */ if (_t208) goto L_022BB5C4; else goto L_022BB5C8;
|
|
L_022BB5C4: ; // 0x22bb5c4
|
|
/* 022BB5C4 */ cpu->r[30] = cpu->r[30] + 0x00000090u;
|
|
L_022BB5C8: ; // 0x22bb5c8
|
|
/* 022BB5C8 */ cpu->ctr = cpu->r[26];
|
|
/* 022BB5CC */ _t209 = cpu->r[30] + 0x00000000u;
|
|
/* 022BB5CC */ cpu->r[24] = rbrew_read32(cpu->mem, _t209);
|
|
/* 022BB5D0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB5D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB5D8 */ _t210 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB5D8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t210);
|
|
/* 022BB5DC */ _t211 = cpu->r[4] + 0x00000000u;
|
|
/* 022BB5DC */ cpu->r[12] = rbrew_read8(cpu->mem, _t211);
|
|
/* 022BB5E0 */ cpu->r[31] = 0x00000000u;
|
|
/* 022BB5E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[29]);
|
|
/* 022BB5E8 */ cpu->r[5] = 0x00080000u;
|
|
/* 022BB5EC */ _t212 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB5EC */ _t213 = _t212 & 0x00000001u;
|
|
/* 022BB5EC */ if (_t213) goto L_022BB614; else goto L_022BB5F0;
|
|
L_022BB5F0: ; // 0x22bb5f0
|
|
/* 022BB5F0 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022BB5F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 022BB5F8 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 022BB5FC */ _t214 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB5FC */ _t215 = _t214 & 0x00000001u;
|
|
/* 022BB5FC */ if (_t215) goto L_022BB610; else goto L_022BB600;
|
|
L_022BB600: ; // 0x22bb600
|
|
/* 022BB600 */ _t216 = cpu->r[4] + 0x00000000u;
|
|
/* 022BB600 */ cpu->r[0] = rbrew_read8(cpu->mem, _t216);
|
|
/* 022BB604 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 022BB608 */ _t217 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB608 */ _t218 = _t217 & 0x00000001u;
|
|
/* 022BB608 */ if (_t218) goto L_022BB60C; else goto L_022BB5F0;
|
|
L_022BB60C: ; // 0x22bb60c
|
|
/* 022BB60C */ goto L_022BB614;
|
|
L_022BB610: ; // 0x22bb610
|
|
/* 022BB610 */ cpu->r[31] = 0x00000000u;
|
|
L_022BB614: ; // 0x22bb614
|
|
/* 022BB614 */ _t219 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB614 */ cpu->r[7] = rbrew_read32(cpu->mem, _t219);
|
|
/* 022BB618 */ _t220 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB618 */ cpu->r[4] = rbrew_read32(cpu->mem, _t220);
|
|
/* 022BB61C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 022BB620 */ _t221 = cpu->r[4] + 0x00000014u;
|
|
/* 022BB620 */ cpu->r[5] = rbrew_read32(cpu->mem, _t221);
|
|
/* 022BB624 */ _t222 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BB624 */ _t223 = _t222 & 0x00000001u;
|
|
/* 022BB624 */ if (_t223) goto L_022BB62C; else goto L_022BB628;
|
|
L_022BB628: ; // 0x22bb628
|
|
/* 022BB628 */ cpu->r[31] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_022BB62C: ; // 0x22bb62c
|
|
/* 022BB62C */ cpu->ctr = cpu->r[5];
|
|
/* 022BB630 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB634 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB638 */ _t224 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB638 */ cpu->r[4] = rbrew_read32(cpu->mem, _t224);
|
|
/* 022BB63C */ cpu->r[6] = 0x00000000u;
|
|
/* 022BB640 */ cpu->r[5] = cpu->r[31];
|
|
/* 022BB644 */ cpu->r[3] = cpu->r[24];
|
|
/* 022BB648 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022BB64C */ _t225 = cpu->r[24] + cpu->r[31];
|
|
/* 022BB64C */ rbrew_write8(cpu->mem, _t225, (uint8_t)cpu->r[29]);
|
|
/* 022BB650 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022BB654 */ _t226 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB654 */ rbrew_write16(cpu->mem, _t226, (uint16_t)cpu->r[27]);
|
|
/* 022BB658 */ cpu->r[8] = 0x022C0000u;
|
|
/* 022BB65C */ _t227 = cpu->r[1] + 0x00000014u;
|
|
/* 022BB65C */ rbrew_write16(cpu->mem, _t227, (uint16_t)cpu->r[27]);
|
|
/* 022BB660 */ cpu->r[10] = 0x022C0000u;
|
|
/* 022BB664 */ _t228 = cpu->r[1] + 0x00000024u;
|
|
/* 022BB664 */ rbrew_write16(cpu->mem, _t228, (uint16_t)cpu->r[27]);
|
|
/* 022BB668 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFCCu;
|
|
/* 022BB66C */ cpu->r[5] = 0x00000004u;
|
|
/* 022BB670 */ _t229 = cpu->r[1] + 0x00000016u;
|
|
/* 022BB670 */ rbrew_write16(cpu->mem, _t229, (uint16_t)cpu->r[0]);
|
|
/* 022BB674 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFC8u;
|
|
/* 022BB678 */ _t230 = cpu->r[1] + 0x00000028u;
|
|
/* 022BB678 */ rbrew_write32(cpu->mem, _t230, cpu->r[10]);
|
|
/* 022BB67C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB680 */ _t231 = cpu->r[1] + 0x00000008u;
|
|
/* 022BB680 */ rbrew_write8(cpu->mem, _t231, (uint8_t)cpu->r[5]);
|
|
/* 022BB684 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BB688 */ cpu->r[6] = 0x022C0000u;
|
|
/* 022BB68C */ _t232 = cpu->r[1] + 0x00000026u;
|
|
/* 022BB68C */ rbrew_write16(cpu->mem, _t232, (uint16_t)cpu->r[0]);
|
|
/* 022BB690 */ cpu->r[6] = cpu->r[6] + 0xFFFFF004u;
|
|
/* 022BB694 */ _t233 = cpu->r[1] + 0x00000018u;
|
|
/* 022BB694 */ rbrew_write32(cpu->mem, _t233, cpu->r[8]);
|
|
/* 022BB698 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022BB69C */ cpu->r[3] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB6A0 */ _t234 = cpu->r[1] + 0x00000020u;
|
|
/* 022BB6A0 */ rbrew_write32(cpu->mem, _t234, cpu->r[6]);
|
|
/* 022BB6A4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022BB6A8 */ _t235 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022BB6A8 */ rbrew_write16(cpu->mem, _t235, (uint16_t)cpu->r[0]);
|
|
/* 022BB6AC */ Gambit_fn_022C0428(cpu);
|
|
/* 022BB6B0 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BB6B4 */ _t236 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB6B4 */ rbrew_write32(cpu->mem, _t236, cpu->r[25]);
|
|
/* 022BB6B8 */ cpu->r[11] = cpu->r[11] + 0x0000432Cu;
|
|
/* 022BB6BC */ _t237 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB6BC */ rbrew_write32(cpu->mem, _t237, cpu->r[11]);
|
|
/* 022BB6C0 */ _t238 = cpu->r[28] + 0x000001ACu;
|
|
/* 022BB6C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t238);
|
|
/* 022BB6C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000005u);
|
|
/* 022BB6C8 */ _t239 = cpu->r[28] + 0x000001B0u;
|
|
/* 022BB6C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t239);
|
|
/* 022BB6CC */ _t240 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB6CC */ _t241 = _t240 & 0x00000001u;
|
|
/* 022BB6CC */ if (_t241) goto L_022BB6D0; else goto L_022BB6D4;
|
|
L_022BB6D0: ; // 0x22bb6d0
|
|
/* 022BB6D0 */ cpu->r[30] = cpu->r[30] + 0x000000B4u;
|
|
L_022BB6D4: ; // 0x22bb6d4
|
|
/* 022BB6D4 */ cpu->ctr = cpu->r[26];
|
|
/* 022BB6D8 */ _t242 = cpu->r[30] + 0x00000000u;
|
|
/* 022BB6D8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t242);
|
|
/* 022BB6DC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB6E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB6E4 */ _t243 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB6E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t243);
|
|
/* 022BB6E8 */ _t244 = cpu->r[11] + 0x00000000u;
|
|
/* 022BB6E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t244);
|
|
/* 022BB6EC */ cpu->r[31] = 0x00000000u;
|
|
/* 022BB6F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 022BB6F4 */ cpu->r[0] = 0x00080000u;
|
|
/* 022BB6F8 */ _t245 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB6F8 */ _t246 = _t245 & 0x00000001u;
|
|
/* 022BB6F8 */ if (_t246) goto L_022BB720; else goto L_022BB6FC;
|
|
L_022BB6FC: ; // 0x22bb6fc
|
|
/* 022BB6FC */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022BB700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 022BB704 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 022BB708 */ _t247 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB708 */ _t248 = _t247 & 0x00000001u;
|
|
/* 022BB708 */ if (_t248) goto L_022BB71C; else goto L_022BB70C;
|
|
L_022BB70C: ; // 0x22bb70c
|
|
/* 022BB70C */ _t249 = cpu->r[11] + 0x00000000u;
|
|
/* 022BB70C */ cpu->r[4] = rbrew_read8(cpu->mem, _t249);
|
|
/* 022BB710 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[29]);
|
|
/* 022BB714 */ _t250 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB714 */ _t251 = _t250 & 0x00000001u;
|
|
/* 022BB714 */ if (_t251) goto L_022BB718; else goto L_022BB6FC;
|
|
L_022BB718: ; // 0x22bb718
|
|
/* 022BB718 */ goto L_022BB720;
|
|
L_022BB71C: ; // 0x22bb71c
|
|
/* 022BB71C */ cpu->r[31] = 0x00000000u;
|
|
L_022BB720: ; // 0x22bb720
|
|
/* 022BB720 */ _t252 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB720 */ cpu->r[9] = rbrew_read32(cpu->mem, _t252);
|
|
/* 022BB724 */ _t253 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB724 */ cpu->r[5] = rbrew_read32(cpu->mem, _t253);
|
|
/* 022BB728 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022BB72C */ _t254 = cpu->r[5] + 0x00000014u;
|
|
/* 022BB72C */ cpu->r[0] = rbrew_read32(cpu->mem, _t254);
|
|
/* 022BB730 */ _t255 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BB730 */ _t256 = _t255 & 0x00000001u;
|
|
/* 022BB730 */ if (_t256) goto L_022BB738; else goto L_022BB734;
|
|
L_022BB734: ; // 0x22bb734
|
|
/* 022BB734 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_022BB738: ; // 0x22bb738
|
|
/* 022BB738 */ cpu->ctr = cpu->r[0];
|
|
/* 022BB73C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB740 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB744 */ _t257 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB744 */ cpu->r[4] = rbrew_read32(cpu->mem, _t257);
|
|
/* 022BB748 */ cpu->r[3] = cpu->r[24];
|
|
/* 022BB74C */ cpu->r[5] = cpu->r[31];
|
|
/* 022BB750 */ cpu->r[6] = 0x00000000u;
|
|
/* 022BB754 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022BB758 */ _t258 = cpu->r[24] + cpu->r[31];
|
|
/* 022BB758 */ rbrew_write8(cpu->mem, _t258, (uint8_t)cpu->r[29]);
|
|
/* 022BB75C */ cpu->r[12] = 0x00000005u;
|
|
/* 022BB760 */ _t259 = cpu->r[1] + 0x00000024u;
|
|
/* 022BB760 */ rbrew_write16(cpu->mem, _t259, (uint16_t)cpu->r[27]);
|
|
/* 022BB764 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 022BB768 */ _t260 = cpu->r[1] + 0x00000014u;
|
|
/* 022BB768 */ rbrew_write16(cpu->mem, _t260, (uint16_t)cpu->r[27]);
|
|
/* 022BB76C */ cpu->r[7] = 0x022C0000u;
|
|
/* 022BB770 */ _t261 = cpu->r[1] + 0x00000026u;
|
|
/* 022BB770 */ rbrew_write16(cpu->mem, _t261, (uint16_t)cpu->r[8]);
|
|
/* 022BB774 */ cpu->r[7] = cpu->r[7] + 0xFFFFF07Cu;
|
|
/* 022BB778 */ _t262 = cpu->r[1] + 0x00000016u;
|
|
/* 022BB778 */ rbrew_write16(cpu->mem, _t262, (uint16_t)cpu->r[8]);
|
|
/* 022BB77C */ _t263 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022BB77C */ rbrew_write16(cpu->mem, _t263, (uint16_t)cpu->r[8]);
|
|
/* 022BB780 */ cpu->r[9] = 0x022C0000u;
|
|
/* 022BB784 */ _t264 = cpu->r[1] + 0x00000008u;
|
|
/* 022BB784 */ rbrew_write8(cpu->mem, _t264, (uint8_t)cpu->r[12]);
|
|
/* 022BB788 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFD0u;
|
|
/* 022BB78C */ cpu->r[3] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB790 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB794 */ _t265 = cpu->r[1] + 0x00000018u;
|
|
/* 022BB794 */ rbrew_write32(cpu->mem, _t265, cpu->r[9]);
|
|
/* 022BB798 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BB79C */ cpu->r[11] = 0x022C0000u;
|
|
/* 022BB7A0 */ _t266 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB7A0 */ rbrew_write16(cpu->mem, _t266, (uint16_t)cpu->r[27]);
|
|
/* 022BB7A4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022BB7A8 */ cpu->r[11] = cpu->r[11] + 0xFFFFF0D8u;
|
|
/* 022BB7AC */ _t267 = cpu->r[1] + 0x00000020u;
|
|
/* 022BB7AC */ rbrew_write32(cpu->mem, _t267, cpu->r[7]);
|
|
/* 022BB7B0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022BB7B4 */ _t268 = cpu->r[1] + 0x00000028u;
|
|
/* 022BB7B4 */ rbrew_write32(cpu->mem, _t268, cpu->r[11]);
|
|
/* 022BB7B8 */ Gambit_fn_022C0428(cpu);
|
|
/* 022BB7BC */ cpu->r[0] = 0x10060000u;
|
|
/* 022BB7C0 */ _t269 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB7C0 */ rbrew_write32(cpu->mem, _t269, cpu->r[25]);
|
|
/* 022BB7C4 */ cpu->r[0] = cpu->r[0] + 0x000042CCu;
|
|
/* 022BB7C8 */ _t270 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB7C8 */ rbrew_write32(cpu->mem, _t270, cpu->r[0]);
|
|
/* 022BB7CC */ _t271 = cpu->r[28] + 0x000001ACu;
|
|
/* 022BB7CC */ cpu->r[4] = rbrew_read32(cpu->mem, _t271);
|
|
/* 022BB7D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000006u);
|
|
/* 022BB7D4 */ _t272 = cpu->r[28] + 0x000001B0u;
|
|
/* 022BB7D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t272);
|
|
/* 022BB7D8 */ _t273 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB7D8 */ _t274 = _t273 & 0x00000001u;
|
|
/* 022BB7D8 */ if (_t274) goto L_022BB7DC; else goto L_022BB7E0;
|
|
L_022BB7DC: ; // 0x22bb7dc
|
|
/* 022BB7DC */ cpu->r[30] = cpu->r[30] + 0x000000D8u;
|
|
L_022BB7E0: ; // 0x22bb7e0
|
|
/* 022BB7E0 */ cpu->ctr = cpu->r[26];
|
|
/* 022BB7E4 */ _t275 = cpu->r[30] + 0x00000000u;
|
|
/* 022BB7E4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t275);
|
|
/* 022BB7E8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB7EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB7F0 */ _t276 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB7F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t276);
|
|
/* 022BB7F4 */ _t277 = cpu->r[7] + 0x00000000u;
|
|
/* 022BB7F4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t277);
|
|
/* 022BB7F8 */ cpu->r[31] = 0x00000000u;
|
|
/* 022BB7FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]);
|
|
/* 022BB800 */ cpu->r[8] = 0x00080000u;
|
|
/* 022BB804 */ _t278 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB804 */ _t279 = _t278 & 0x00000001u;
|
|
/* 022BB804 */ if (_t279) goto L_022BB82C; else goto L_022BB808;
|
|
L_022BB808: ; // 0x22bb808
|
|
/* 022BB808 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022BB80C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 022BB810 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 022BB814 */ _t280 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BB814 */ _t281 = _t280 & 0x00000001u;
|
|
/* 022BB814 */ if (_t281) goto L_022BB828; else goto L_022BB818;
|
|
L_022BB818: ; // 0x22bb818
|
|
/* 022BB818 */ _t282 = cpu->r[7] + 0x00000000u;
|
|
/* 022BB818 */ cpu->r[6] = rbrew_read8(cpu->mem, _t282);
|
|
/* 022BB81C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]);
|
|
/* 022BB820 */ _t283 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB820 */ _t284 = _t283 & 0x00000001u;
|
|
/* 022BB820 */ if (_t284) goto L_022BB824; else goto L_022BB808;
|
|
L_022BB824: ; // 0x22bb824
|
|
/* 022BB824 */ goto L_022BB82C;
|
|
L_022BB828: ; // 0x22bb828
|
|
/* 022BB828 */ cpu->r[31] = 0x00000000u;
|
|
L_022BB82C: ; // 0x22bb82c
|
|
/* 022BB82C */ _t285 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB82C */ cpu->r[4] = rbrew_read32(cpu->mem, _t285);
|
|
/* 022BB830 */ _t286 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB830 */ cpu->r[7] = rbrew_read32(cpu->mem, _t286);
|
|
/* 022BB834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 022BB838 */ _t287 = cpu->r[7] + 0x00000014u;
|
|
/* 022BB838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t287);
|
|
/* 022BB83C */ _t288 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BB83C */ _t289 = _t288 & 0x00000001u;
|
|
/* 022BB83C */ if (_t289) goto L_022BB844; else goto L_022BB840;
|
|
L_022BB840: ; // 0x22bb840
|
|
/* 022BB840 */ cpu->r[31] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_022BB844: ; // 0x22bb844
|
|
/* 022BB844 */ cpu->ctr = cpu->r[0];
|
|
/* 022BB848 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB84C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BB850 */ _t290 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB850 */ cpu->r[4] = rbrew_read32(cpu->mem, _t290);
|
|
/* 022BB854 */ cpu->r[6] = 0x00000000u;
|
|
/* 022BB858 */ cpu->r[5] = cpu->r[31];
|
|
/* 022BB85C */ cpu->r[3] = cpu->r[25];
|
|
/* 022BB860 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022BB864 */ _t291 = cpu->r[25] + cpu->r[31];
|
|
/* 022BB864 */ rbrew_write8(cpu->mem, _t291, (uint8_t)cpu->r[29]);
|
|
/* 022BB868 */ cpu->r[11] = 0x00000006u;
|
|
/* 022BB86C */ _t292 = cpu->r[1] + 0x00000028u;
|
|
/* 022BB86C */ rbrew_write32(cpu->mem, _t292, cpu->r[27]);
|
|
/* 022BB870 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 022BB874 */ _t293 = cpu->r[1] + 0x00000026u;
|
|
/* 022BB874 */ rbrew_write16(cpu->mem, _t293, (uint16_t)cpu->r[27]);
|
|
/* 022BB878 */ cpu->r[0] = 0x022C0000u;
|
|
/* 022BB87C */ _t294 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022BB87C */ rbrew_write16(cpu->mem, _t294, (uint16_t)cpu->r[5]);
|
|
/* 022BB880 */ cpu->r[9] = 0x022C0000u;
|
|
/* 022BB884 */ _t295 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB884 */ rbrew_write16(cpu->mem, _t295, (uint16_t)cpu->r[27]);
|
|
/* 022BB888 */ cpu->r[0] = cpu->r[0] + 0xFFFFFFD4u;
|
|
/* 022BB88C */ _t296 = cpu->r[1] + 0x00000016u;
|
|
/* 022BB88C */ rbrew_write16(cpu->mem, _t296, (uint16_t)cpu->r[5]);
|
|
/* 022BB890 */ cpu->r[9] = cpu->r[9] + 0xFFFFF0E8u;
|
|
/* 022BB894 */ _t297 = cpu->r[1] + 0x00000024u;
|
|
/* 022BB894 */ rbrew_write16(cpu->mem, _t297, (uint16_t)cpu->r[27]);
|
|
/* 022BB898 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BB89C */ _t298 = cpu->r[1] + 0x00000020u;
|
|
/* 022BB89C */ rbrew_write32(cpu->mem, _t298, cpu->r[9]);
|
|
/* 022BB8A0 */ cpu->r[3] = cpu->r[28] + 0x00000198u;
|
|
/* 022BB8A4 */ _t299 = cpu->r[1] + 0x00000014u;
|
|
/* 022BB8A4 */ rbrew_write16(cpu->mem, _t299, (uint16_t)cpu->r[27]);
|
|
/* 022BB8A8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB8AC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022BB8B0 */ _t300 = cpu->r[1] + 0x00000018u;
|
|
/* 022BB8B0 */ rbrew_write32(cpu->mem, _t300, cpu->r[0]);
|
|
/* 022BB8B4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022BB8B8 */ _t301 = cpu->r[1] + 0x00000008u;
|
|
/* 022BB8B8 */ rbrew_write8(cpu->mem, _t301, (uint8_t)cpu->r[11]);
|
|
/* 022BB8BC */ Gambit_fn_022C0428(cpu);
|
|
L_022BB8C0: ; // 0x22bb8c0
|
|
/* 022BB8C0 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BB8C4 */ /* nop */
|
|
/* 022BB8C8 */ _t302 = cpu->r[1] + 0x00000058u;
|
|
/* 022BB8C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t302);
|
|
/* 022BB8CC */ _t303 = cpu->r[1] + 0x00000050u;
|
|
/* 022BB8CC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t303);
|
|
/* 022BB8D0 */ _t304 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BB8D0 */ _t305 = _t304 & 0x00000001u;
|
|
/* 022BB8D0 */ if (_t305) goto L_022BB8D4; // else: addr-0 trap, fall-through
|
|
L_022BB8D4: ; // 0x22bb8d4
|
|
/* 022BB8D4 */ _t306 = cpu->r[1] + 0x00000064u;
|
|
/* 022BB8D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t306);
|
|
/* 022BB8D8 */ cpu->lr = cpu->r[0];
|
|
/* 022BB8DC */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 022BB8E0 */ return;
|
|
}
|
|
|
|
// fn_022BB8E4 @ 0x22bb8e4
|
|
void Gambit_fn_022BB8E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BB8E4: ; // 0x22bb8e4
|
|
/* 022BB8E4 */ cpu->r[0] = cpu->lr;
|
|
/* 022BB8E8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BB8E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BB8E8 */ cpu->r[1] = _t0;
|
|
/* 022BB8EC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB8EC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BB8F0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB8F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022BB8F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BB8F8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BB8F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022BB8FC */ cpu->r[3] = 0x00000000u;
|
|
/* 022BB900 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB900 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022BB904 */ Gambit_fn_02043B8C(cpu);
|
|
/* 022BB908 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BB90C */ _t5 = cpu->r[30] + 0x000001E0u;
|
|
/* 022BB90C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 022BB910 */ _t6 = cpu->r[11] + 0x0000433Cu;
|
|
/* 022BB910 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BB914 */ _t7 = cpu->r[30] + 0x00000070u;
|
|
/* 022BB914 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BB918 */ Gambit_fn_0231DF64(cpu);
|
|
/* 022BB91C */ cpu->r[3] = 0x00000050u;
|
|
/* 022BB920 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB928 */ cpu->r[11] = cpu->r[3];
|
|
/* 022BB92C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB92C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022BB92C */ if (_t9) goto L_022BB938; else goto L_022BB930;
|
|
L_022BB930: ; // 0x22bb930
|
|
/* 022BB930 */ Gambit_fn_027C5DC8(cpu);
|
|
/* 022BB934 */ cpu->r[11] = cpu->r[3];
|
|
L_022BB938: ; // 0x22bb938
|
|
/* 022BB938 */ _t10 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB938 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BB93C */ _t11 = cpu->r[30] + 0x00000234u;
|
|
/* 022BB93C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 022BB940 */ cpu->r[3] = 0x00000050u;
|
|
/* 022BB944 */ _t12 = cpu->r[11] + 0x00000000u;
|
|
/* 022BB944 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 022BB948 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB94C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB950 */ cpu->r[12] = cpu->r[3];
|
|
/* 022BB954 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB954 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BB954 */ if (_t14) goto L_022BB960; else goto L_022BB958;
|
|
L_022BB958: ; // 0x22bb958
|
|
/* 022BB958 */ Gambit_fn_027C5DC8(cpu);
|
|
/* 022BB95C */ cpu->r[12] = cpu->r[3];
|
|
L_022BB960: ; // 0x22bb960
|
|
/* 022BB960 */ _t15 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB960 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BB964 */ _t16 = cpu->r[30] + 0x00000244u;
|
|
/* 022BB964 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 022BB968 */ cpu->r[3] = 0x00000050u;
|
|
/* 022BB96C */ _t17 = cpu->r[12] + 0x00000000u;
|
|
/* 022BB96C */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 022BB970 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB978 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB978 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BB978 */ if (_t19) goto L_022BB980; else goto L_022BB97C;
|
|
L_022BB97C: ; // 0x22bb97c
|
|
/* 022BB97C */ Gambit_fn_027C5DC8(cpu);
|
|
L_022BB980: ; // 0x22bb980
|
|
/* 022BB980 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BB984 */ _t21 = cpu->r[30] + 0x00000248u;
|
|
/* 022BB984 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 022BB988 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 022BB988 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 022BB98C */ _t23 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BB98C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BB990 */ Gambit_fn_02393BC8(cpu);
|
|
/* 022BB994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB998 */ cpu->r[29] = 0x00000000u;
|
|
/* 022BB99C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB99C */ _t25 = _t24 & 0x00000001u;
|
|
/* 022BB99C */ if (_t25) goto L_022BB9C4; else goto L_022BB9A0;
|
|
L_022BB9A0: ; // 0x22bb9a0
|
|
/* 022BB9A0 */ cpu->r[3] = 0x000000A0u;
|
|
/* 022BB9A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB9A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB9AC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9AC */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BB9AC */ if (_t27) goto L_022BB9B4; else goto L_022BB9B0;
|
|
L_022BB9B0: ; // 0x22bb9b0
|
|
/* 022BB9B0 */ Gambit_fn_023AFBAC(cpu);
|
|
L_022BB9B4: ; // 0x22bb9b4
|
|
/* 022BB9B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB9B8 */ _t28 = cpu->r[30] + 0x00000314u;
|
|
/* 022BB9B8 */ rbrew_write32(cpu->mem, _t28, cpu->r[3]);
|
|
/* 022BB9BC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9BC */ _t30 = _t29 & 0x00000001u;
|
|
/* 022BB9BC */ if (_t30) goto L_022BB9E8; else goto L_022BB9C0;
|
|
L_022BB9C0: ; // 0x22bb9c0
|
|
/* 022BB9C0 */ goto L_022BB9E0;
|
|
L_022BB9C4: ; // 0x22bb9c4
|
|
/* 022BB9C4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BB9C8 */ _t31 = cpu->r[30] + 0x00000314u;
|
|
/* 022BB9C8 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 022BB9CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BB9D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB9D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BB9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BB9D8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9D8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022BB9D8 */ if (_t33) goto L_022BBA30; else goto L_022BB9DC;
|
|
L_022BB9DC: ; // 0x22bb9dc
|
|
/* 022BB9DC */ goto L_022BB9F8;
|
|
L_022BB9E0: ; // 0x22bb9e0
|
|
/* 022BB9E0 */ _t34 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BB9E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BB9E4 */ Gambit_fn_023B0294(cpu);
|
|
L_022BB9E8: ; // 0x22bb9e8
|
|
/* 022BB9E8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BB9EC */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB9F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BB9F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BB9F4 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9F4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022BB9F4 */ if (_t36) goto L_022BBA30; else goto L_022BB9F8;
|
|
L_022BB9F8: ; // 0x22bb9f8
|
|
/* 022BB9F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BB9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB9FC */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9FC */ _t38 = _t37 & 0x00000001u;
|
|
/* 022BB9FC */ if (_t38) goto L_022BBA00; else goto L_022BBA10;
|
|
L_022BBA00: ; // 0x22bba00
|
|
/* 022BBA00 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BBA04 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BBA08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBA0C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBA0C */ _t40 = _t39 & 0x00000001u;
|
|
/* 022BBA0C */ if (_t40) goto L_022BBA24; else goto L_022BBA10;
|
|
L_022BBA10: ; // 0x22bba10
|
|
/* 022BBA10 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BBA14 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 022BBA14 */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
/* 022BBA18 */ cpu->r[0] = cpu->r[0] + 0x000041E8u;
|
|
/* 022BBA1C */ _t42 = cpu->r[3] + 0x00000000u;
|
|
/* 022BBA1C */ rbrew_write32(cpu->mem, _t42, cpu->r[29]);
|
|
/* 022BBA20 */ _t43 = cpu->r[3] + 0x00000008u;
|
|
/* 022BBA20 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
L_022BBA24: ; // 0x22bba24
|
|
/* 022BBA24 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BBA28 */ cpu->r[10] = cpu->r[10] + 0x000041F8u;
|
|
/* 022BBA2C */ _t44 = cpu->r[31] + 0x00000008u;
|
|
/* 022BBA2C */ rbrew_write32(cpu->mem, _t44, cpu->r[10]);
|
|
L_022BBA30: ; // 0x22bba30
|
|
/* 022BBA30 */ cpu->r[4] = 0x00000000u;
|
|
/* 022BBA34 */ cpu->r[3] = cpu->r[30] + 0x0000024Cu;
|
|
/* 022BBA38 */ _t45 = cpu->r[30] + 0x00000224u;
|
|
/* 022BBA38 */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 022BBA3C */ Gambit_fn_023F9D38(cpu);
|
|
/* 022BBA40 */ cpu->r[4] = 0x00000000u;
|
|
/* 022BBA44 */ _t46 = cpu->r[30] + 0x000002ACu;
|
|
/* 022BBA44 */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
/* 022BBA48 */ cpu->r[3] = cpu->r[30] + 0x000002B0u;
|
|
/* 022BBA4C */ Gambit_fn_023F9D38(cpu);
|
|
/* 022BBA50 */ _t47 = cpu->r[30] + 0x00000004u;
|
|
/* 022BBA50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022BBA54 */ _t48 = cpu->r[12] + 0x00000434u;
|
|
/* 022BBA54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022BBA58 */ cpu->ctr = cpu->r[8];
|
|
/* 022BBA5C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BBA60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BBA64 */ _t49 = cpu->r[30] + 0x00000070u;
|
|
/* 022BBA64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022BBA68 */ cpu->r[12] = 0x00000001u;
|
|
/* 022BBA6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBA70 */ _t50 = cpu->r[9] + 0x00000010u;
|
|
/* 022BBA70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022BBA74 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBA74 */ _t52 = _t51 & 0x00000001u;
|
|
/* 022BBA74 */ if (_t52) goto L_022BBA7C; else goto L_022BBA78;
|
|
L_022BBA78: ; // 0x22bba78
|
|
/* 022BBA78 */ cpu->r[12] = 0x00000003u;
|
|
L_022BBA7C: ; // 0x22bba7c
|
|
/* 022BBA7C */ cpu->r[0] = cpu->r[0] | cpu->r[12];
|
|
/* 022BBA80 */ _t53 = cpu->r[9] + 0x00000010u;
|
|
/* 022BBA80 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 022BBA84 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBA84 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022BBA88 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BBA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022BBA8C */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 022BBA8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022BBA90 */ cpu->lr = cpu->r[0];
|
|
/* 022BBA94 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBA94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022BBA98 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BBA9C */ return;
|
|
}
|
|
|
|
// fn_022BB8E8 @ 0x22bb8e8
|
|
void Gambit_fn_022BB8E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BB8E8: ; // 0x22bb8e8
|
|
/* 022BB8E8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BB8E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BB8E8 */ cpu->r[1] = _t0;
|
|
/* 022BB8EC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022BB8EC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BB8F0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BB8F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022BB8F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BB8F8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BB8F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022BB8FC */ cpu->r[3] = 0x00000000u;
|
|
/* 022BB900 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BB900 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022BB904 */ Gambit_fn_02043B8C(cpu);
|
|
/* 022BB908 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BB90C */ _t5 = cpu->r[30] + 0x000001E0u;
|
|
/* 022BB90C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 022BB910 */ _t6 = cpu->r[11] + 0x0000433Cu;
|
|
/* 022BB910 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BB914 */ _t7 = cpu->r[30] + 0x00000070u;
|
|
/* 022BB914 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BB918 */ Gambit_fn_0231DF64(cpu);
|
|
/* 022BB91C */ cpu->r[3] = 0x00000050u;
|
|
/* 022BB920 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB928 */ cpu->r[11] = cpu->r[3];
|
|
/* 022BB92C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB92C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022BB92C */ if (_t9) goto L_022BB938; else goto L_022BB930;
|
|
L_022BB930: ; // 0x22bb930
|
|
/* 022BB930 */ Gambit_fn_027C5DC8(cpu);
|
|
/* 022BB934 */ cpu->r[11] = cpu->r[3];
|
|
L_022BB938: ; // 0x22bb938
|
|
/* 022BB938 */ _t10 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB938 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BB93C */ _t11 = cpu->r[30] + 0x00000234u;
|
|
/* 022BB93C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 022BB940 */ cpu->r[3] = 0x00000050u;
|
|
/* 022BB944 */ _t12 = cpu->r[11] + 0x00000000u;
|
|
/* 022BB944 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 022BB948 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB94C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB950 */ cpu->r[12] = cpu->r[3];
|
|
/* 022BB954 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB954 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BB954 */ if (_t14) goto L_022BB960; else goto L_022BB958;
|
|
L_022BB958: ; // 0x22bb958
|
|
/* 022BB958 */ Gambit_fn_027C5DC8(cpu);
|
|
/* 022BB95C */ cpu->r[12] = cpu->r[3];
|
|
L_022BB960: ; // 0x22bb960
|
|
/* 022BB960 */ _t15 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB960 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BB964 */ _t16 = cpu->r[30] + 0x00000244u;
|
|
/* 022BB964 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 022BB968 */ cpu->r[3] = 0x00000050u;
|
|
/* 022BB96C */ _t17 = cpu->r[12] + 0x00000000u;
|
|
/* 022BB96C */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 022BB970 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB978 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB978 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BB978 */ if (_t19) goto L_022BB980; else goto L_022BB97C;
|
|
L_022BB97C: ; // 0x22bb97c
|
|
/* 022BB97C */ Gambit_fn_027C5DC8(cpu);
|
|
L_022BB980: ; // 0x22bb980
|
|
/* 022BB980 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 022BB980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BB984 */ _t21 = cpu->r[30] + 0x00000248u;
|
|
/* 022BB984 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 022BB988 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 022BB988 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 022BB98C */ _t23 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BB98C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BB990 */ Gambit_fn_02393BC8(cpu);
|
|
/* 022BB994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB998 */ cpu->r[29] = 0x00000000u;
|
|
/* 022BB99C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB99C */ _t25 = _t24 & 0x00000001u;
|
|
/* 022BB99C */ if (_t25) goto L_022BB9C4; else goto L_022BB9A0;
|
|
L_022BB9A0: ; // 0x22bb9a0
|
|
/* 022BB9A0 */ cpu->r[3] = 0x000000A0u;
|
|
/* 022BB9A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB9A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB9AC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9AC */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BB9AC */ if (_t27) goto L_022BB9B4; else goto L_022BB9B0;
|
|
L_022BB9B0: ; // 0x22bb9b0
|
|
/* 022BB9B0 */ Gambit_fn_023AFBAC(cpu);
|
|
L_022BB9B4: ; // 0x22bb9b4
|
|
/* 022BB9B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB9B8 */ _t28 = cpu->r[30] + 0x00000314u;
|
|
/* 022BB9B8 */ rbrew_write32(cpu->mem, _t28, cpu->r[3]);
|
|
/* 022BB9BC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9BC */ _t30 = _t29 & 0x00000001u;
|
|
/* 022BB9BC */ if (_t30) goto L_022BB9E8; else goto L_022BB9C0;
|
|
L_022BB9C0: ; // 0x22bb9c0
|
|
/* 022BB9C0 */ goto L_022BB9E0;
|
|
L_022BB9C4: ; // 0x22bb9c4
|
|
/* 022BB9C4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BB9C8 */ _t31 = cpu->r[30] + 0x00000314u;
|
|
/* 022BB9C8 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 022BB9CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BB9D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB9D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BB9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BB9D8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9D8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022BB9D8 */ if (_t33) goto L_022BBA30; else goto L_022BB9DC;
|
|
L_022BB9DC: ; // 0x22bb9dc
|
|
/* 022BB9DC */ goto L_022BB9F8;
|
|
L_022BB9E0: ; // 0x22bb9e0
|
|
/* 022BB9E0 */ _t34 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BB9E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BB9E4 */ Gambit_fn_023B0294(cpu);
|
|
L_022BB9E8: ; // 0x22bb9e8
|
|
/* 022BB9E8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BB9EC */ Gambit_fn_02801A78(cpu);
|
|
/* 022BB9F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BB9F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BB9F4 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9F4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022BB9F4 */ if (_t36) goto L_022BBA30; else goto L_022BB9F8;
|
|
L_022BB9F8: ; // 0x22bb9f8
|
|
/* 022BB9F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BB9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BB9FC */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BB9FC */ _t38 = _t37 & 0x00000001u;
|
|
/* 022BB9FC */ if (_t38) goto L_022BBA00; else goto L_022BBA10;
|
|
L_022BBA00: ; // 0x22bba00
|
|
/* 022BBA00 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022BBA04 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BBA08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBA0C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBA0C */ _t40 = _t39 & 0x00000001u;
|
|
/* 022BBA0C */ if (_t40) goto L_022BBA24; else goto L_022BBA10;
|
|
L_022BBA10: ; // 0x22bba10
|
|
/* 022BBA10 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BBA14 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 022BBA14 */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
/* 022BBA18 */ cpu->r[0] = cpu->r[0] + 0x000041E8u;
|
|
/* 022BBA1C */ _t42 = cpu->r[3] + 0x00000000u;
|
|
/* 022BBA1C */ rbrew_write32(cpu->mem, _t42, cpu->r[29]);
|
|
/* 022BBA20 */ _t43 = cpu->r[3] + 0x00000008u;
|
|
/* 022BBA20 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
L_022BBA24: ; // 0x22bba24
|
|
/* 022BBA24 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BBA28 */ cpu->r[10] = cpu->r[10] + 0x000041F8u;
|
|
/* 022BBA2C */ _t44 = cpu->r[31] + 0x00000008u;
|
|
/* 022BBA2C */ rbrew_write32(cpu->mem, _t44, cpu->r[10]);
|
|
L_022BBA30: ; // 0x22bba30
|
|
/* 022BBA30 */ cpu->r[4] = 0x00000000u;
|
|
/* 022BBA34 */ cpu->r[3] = cpu->r[30] + 0x0000024Cu;
|
|
/* 022BBA38 */ _t45 = cpu->r[30] + 0x00000224u;
|
|
/* 022BBA38 */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 022BBA3C */ Gambit_fn_023F9D38(cpu);
|
|
/* 022BBA40 */ cpu->r[4] = 0x00000000u;
|
|
/* 022BBA44 */ _t46 = cpu->r[30] + 0x000002ACu;
|
|
/* 022BBA44 */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
/* 022BBA48 */ cpu->r[3] = cpu->r[30] + 0x000002B0u;
|
|
/* 022BBA4C */ Gambit_fn_023F9D38(cpu);
|
|
/* 022BBA50 */ _t47 = cpu->r[30] + 0x00000004u;
|
|
/* 022BBA50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022BBA54 */ _t48 = cpu->r[12] + 0x00000434u;
|
|
/* 022BBA54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022BBA58 */ cpu->ctr = cpu->r[8];
|
|
/* 022BBA5C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BBA60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BBA64 */ _t49 = cpu->r[30] + 0x00000070u;
|
|
/* 022BBA64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022BBA68 */ cpu->r[12] = 0x00000001u;
|
|
/* 022BBA6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBA70 */ _t50 = cpu->r[9] + 0x00000010u;
|
|
/* 022BBA70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022BBA74 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBA74 */ _t52 = _t51 & 0x00000001u;
|
|
/* 022BBA74 */ if (_t52) goto L_022BBA7C; else goto L_022BBA78;
|
|
L_022BBA78: ; // 0x22bba78
|
|
/* 022BBA78 */ cpu->r[12] = 0x00000003u;
|
|
L_022BBA7C: ; // 0x22bba7c
|
|
/* 022BBA7C */ cpu->r[0] = cpu->r[0] | cpu->r[12];
|
|
/* 022BBA80 */ _t53 = cpu->r[9] + 0x00000010u;
|
|
/* 022BBA80 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 022BBA84 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBA84 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022BBA88 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BBA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022BBA8C */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 022BBA8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022BBA90 */ cpu->lr = cpu->r[0];
|
|
/* 022BBA94 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBA94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022BBA98 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BBA9C */ return;
|
|
}
|
|
|
|
// fn_022BBAA0 @ 0x22bbaa0
|
|
void Gambit_fn_022BBAA0(CPUState* cpu) {
|
|
uint32_t _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_022BBAA0: ; // 0x22bbaa0
|
|
/* 022BBAA0 */ cpu->r[0] = cpu->lr;
|
|
/* 022BBAA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BBAA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BBAA4 */ cpu->r[1] = _t0;
|
|
/* 022BBAA8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBAA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BBAAC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBAAC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BBAB0 */ _t3 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BBAB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BBAB4 */ _t4 = cpu->r[11] + 0x000046C0u;
|
|
/* 022BBAB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BBAB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BBABC */ cpu->r[3] = cpu->r[4];
|
|
/* 022BBAC0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBAC0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BBAC0 */ if (_t6) goto L_022BBAC4; else goto L_022BBAD4;
|
|
L_022BBAC4: ; // 0x22bbac4
|
|
/* 022BBAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBAC8 */ cpu->r[31] = 0x00000001u;
|
|
/* 022BBACC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBACC */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BBACC */ if (_t8) goto L_022BBB08; else goto L_022BBAD0;
|
|
L_022BBAD0: ; // 0x22bbad0
|
|
/* 022BBAD0 */ goto L_022BBB18;
|
|
L_022BBAD4: ; // 0x22bbad4
|
|
/* 022BBAD4 */ _t9 = cpu->r[11] + 0x000046C0u;
|
|
/* 022BBAD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BBAD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022BBADC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBADC */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BBADC */ if (_t11) goto L_022BBAE0; else goto L_022BBAF0;
|
|
L_022BBAE0: ; // 0x22bbae0
|
|
/* 022BBAE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBAE4 */ cpu->r[31] = 0x00000002u;
|
|
/* 022BBAE8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBAE8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022BBAE8 */ if (_t13) goto L_022BBB08; else goto L_022BBAEC;
|
|
L_022BBAEC: ; // 0x22bbaec
|
|
/* 022BBAEC */ goto L_022BBB18;
|
|
L_022BBAF0: ; // 0x22bbaf0
|
|
/* 022BBAF0 */ _t14 = cpu->r[11] + 0x000046C0u;
|
|
/* 022BBAF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BBAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000003u);
|
|
/* 022BBAF8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBAF8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BBAF8 */ if (_t16) goto L_022BBB00; else goto L_022BBAFC;
|
|
L_022BBAFC: ; // 0x22bbafc
|
|
/* 022BBAFC */ cpu->r[31] = 0x00000000u;
|
|
L_022BBB00: ; // 0x22bbb00
|
|
/* 022BBB00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBB04 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBB04 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BBB04 */ if (_t18) goto L_022BBB08; else goto L_022BBB18;
|
|
L_022BBB08: ; // 0x22bbb08
|
|
/* 022BBB08 */ cpu->r[3] = 0x00000004u;
|
|
/* 022BBB0C */ Gambit_fn_02801A78(cpu);
|
|
/* 022BBB10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBB14 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBB14 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BBB14 */ if (_t20) goto L_022BBB1C; else goto L_022BBB18;
|
|
L_022BBB18: ; // 0x22bbb18
|
|
/* 022BBB18 */ _t21 = cpu->r[3] + 0x00000000u;
|
|
/* 022BBB18 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
L_022BBB1C: ; // 0x22bbb1c
|
|
/* 022BBB1C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBB1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BBB20 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBB20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BBB24 */ cpu->lr = cpu->r[0];
|
|
/* 022BBB28 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BBB2C */ return;
|
|
}
|
|
|
|
// fn_022BBAA4 @ 0x22bbaa4
|
|
void Gambit_fn_022BBAA4(CPUState* cpu) {
|
|
uint32_t _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_022BBAA4: ; // 0x22bbaa4
|
|
/* 022BBAA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BBAA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BBAA4 */ cpu->r[1] = _t0;
|
|
/* 022BBAA8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBAA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BBAAC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBAAC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BBAB0 */ _t3 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BBAB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BBAB4 */ _t4 = cpu->r[11] + 0x000046C0u;
|
|
/* 022BBAB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BBAB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BBABC */ cpu->r[3] = cpu->r[4];
|
|
/* 022BBAC0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBAC0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BBAC0 */ if (_t6) goto L_022BBAC4; else goto L_022BBAD4;
|
|
L_022BBAC4: ; // 0x22bbac4
|
|
/* 022BBAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBAC8 */ cpu->r[31] = 0x00000001u;
|
|
/* 022BBACC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBACC */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BBACC */ if (_t8) goto L_022BBB08; else goto L_022BBAD0;
|
|
L_022BBAD0: ; // 0x22bbad0
|
|
/* 022BBAD0 */ goto L_022BBB18;
|
|
L_022BBAD4: ; // 0x22bbad4
|
|
/* 022BBAD4 */ _t9 = cpu->r[11] + 0x000046C0u;
|
|
/* 022BBAD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BBAD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022BBADC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBADC */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BBADC */ if (_t11) goto L_022BBAE0; else goto L_022BBAF0;
|
|
L_022BBAE0: ; // 0x22bbae0
|
|
/* 022BBAE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBAE4 */ cpu->r[31] = 0x00000002u;
|
|
/* 022BBAE8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBAE8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022BBAE8 */ if (_t13) goto L_022BBB08; else goto L_022BBAEC;
|
|
L_022BBAEC: ; // 0x22bbaec
|
|
/* 022BBAEC */ goto L_022BBB18;
|
|
L_022BBAF0: ; // 0x22bbaf0
|
|
/* 022BBAF0 */ _t14 = cpu->r[11] + 0x000046C0u;
|
|
/* 022BBAF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BBAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000003u);
|
|
/* 022BBAF8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBAF8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BBAF8 */ if (_t16) goto L_022BBB00; else goto L_022BBAFC;
|
|
L_022BBAFC: ; // 0x22bbafc
|
|
/* 022BBAFC */ cpu->r[31] = 0x00000000u;
|
|
L_022BBB00: ; // 0x22bbb00
|
|
/* 022BBB00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBB04 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBB04 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BBB04 */ if (_t18) goto L_022BBB08; else goto L_022BBB18;
|
|
L_022BBB08: ; // 0x22bbb08
|
|
/* 022BBB08 */ cpu->r[3] = 0x00000004u;
|
|
/* 022BBB0C */ Gambit_fn_02801A78(cpu);
|
|
/* 022BBB10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBB14 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBB14 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BBB14 */ if (_t20) goto L_022BBB1C; else goto L_022BBB18;
|
|
L_022BBB18: ; // 0x22bbb18
|
|
/* 022BBB18 */ _t21 = cpu->r[3] + 0x00000000u;
|
|
/* 022BBB18 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
L_022BBB1C: ; // 0x22bbb1c
|
|
/* 022BBB1C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBB1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BBB20 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBB20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BBB24 */ cpu->lr = cpu->r[0];
|
|
/* 022BBB28 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BBB2C */ return;
|
|
}
|
|
|
|
// fn_022BBB30 @ 0x22bbb30
|
|
void Gambit_fn_022BBB30(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BBB30: ; // 0x22bbb30
|
|
/* 022BBB30 */ _t0 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BBB30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BBB34 */ _t1 = cpu->r[12] + 0x000046D4u;
|
|
/* 022BBB34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BBB38 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022BBB3C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 022BBB40 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 022BBB44 */ return;
|
|
}
|
|
|
|
// fn_022BBB48 @ 0x22bbb48
|
|
void Gambit_fn_022BBB48(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BBB48: ; // 0x22bbb48
|
|
/* 022BBB48 */ _t0 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BBB48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BBB4C */ _t1 = cpu->r[12] + 0x000046C8u;
|
|
/* 022BBB4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BBB50 */ cpu->r[12] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022BBB54 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022BBB58 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 022BBB5C */ return;
|
|
}
|
|
|
|
// fn_022BBB60 @ 0x22bbb60
|
|
void Gambit_fn_022BBB60(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BBB60: ; // 0x22bbb60
|
|
/* 022BBB60 */ _t0 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BBB60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BBB64 */ _t1 = cpu->r[12] + 0x000046D4u;
|
|
/* 022BBB64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BBB68 */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 022BBB6C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 022BBB70 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 022BBB74 */ return;
|
|
}
|
|
|
|
// fn_022BBB78 @ 0x22bbb78
|
|
void Gambit_fn_022BBB78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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;
|
|
|
|
L_022BBB78: ; // 0x22bbb78
|
|
/* 022BBB78 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022BBB78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BBB78 */ cpu->r[1] = _t0;
|
|
/* 022BBB7C */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 022BBB7C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022BBB80 */ cpu->r[0] = cpu->lr;
|
|
/* 022BBB84 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 022BBB84 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BBB88 */ /* nop */
|
|
/* 022BBB8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBB8C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022BBB90 */ /* nop */
|
|
/* 022BBB94 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BBB94 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022BBB98 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBB9C */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 022BBB9C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 022BBBA0 */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 022BBBA0 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 022BBBA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BBBA8 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 022BBBA8 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 022BBBAC */ _t8 = cpu->r[1] + 0x00000044u;
|
|
/* 022BBBAC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022BBBB0 */ Gambit_fn_022BBAA0(cpu);
|
|
/* 022BBBB4 */ _t9 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022BBBB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BBBB8 */ cpu->r[30] = 0x00000000u;
|
|
/* 022BBBBC */ _t10 = cpu->r[31] + 0x00000314u;
|
|
/* 022BBBBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BBBC0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBBC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BBBC4 */ _t12 = cpu->r[31] + 0x00000194u;
|
|
/* 022BBBC4 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 022BBBC8 */ _t13 = cpu->r[31] + 0x00000194u;
|
|
/* 022BBBC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BBBCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBBD0 */ _t14 = cpu->r[31] + 0x00000190u;
|
|
/* 022BBBD0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 022BBBD4 */ _t15 = cpu->r[6] + 0x00000000u;
|
|
/* 022BBBD4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BBBD8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBBD8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BBBD8 */ if (_t17) goto L_022BBBE0; else goto L_022BBBDC;
|
|
L_022BBBDC: ; // 0x22bbbdc
|
|
/* 022BBBDC */ Gambit_fn_023B054C(cpu);
|
|
L_022BBBE0: ; // 0x22bbbe0
|
|
/* 022BBBE0 */ _t18 = cpu->r[31] + 0x00000314u;
|
|
/* 022BBBE0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BBBE4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BBBE8 */ _t19 = cpu->r[12] + 0xFFFF9918u;
|
|
/* 022BBBE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BBBEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBBF0 */ _t20 = cpu->r[31] + 0x000001E4u;
|
|
/* 022BBBF0 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 022BBBF4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBBF4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022BBBF4 */ if (_t22) goto L_022BBC58; else goto L_022BBBF8;
|
|
L_022BBBF8: ; // 0x22bbbf8
|
|
/* 022BBBF8 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 022BBBF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BBBFC */ _t24 = cpu->r[31] + 0x0000011Cu;
|
|
/* 022BBBFC */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 022BBC00 */ _t25 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022BBC00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BBC04 */ _t26 = cpu->r[31] + 0x00000120u;
|
|
/* 022BBC04 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 022BBC08 */ _t27 = cpu->r[3] + 0x00000010u;
|
|
/* 022BBC08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BBC0C */ _t28 = cpu->r[31] + 0x00000124u;
|
|
/* 022BBC0C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 022BBC10 */ _t29 = cpu->r[3] + 0x00000014u;
|
|
/* 022BBC10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022BBC14 */ _t30 = cpu->r[31] + 0x00000128u;
|
|
/* 022BBC14 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 022BBC18 */ _t31 = cpu->r[3] + 0x00000018u;
|
|
/* 022BBC18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022BBC1C */ _t32 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022BBC1C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[13]);
|
|
/* 022BBC20 */ _t33 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022BBC20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BBC24 */ _t34 = cpu->r[31] + 0x00000130u;
|
|
/* 022BBC24 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 022BBC28 */ _t35 = cpu->r[3] + 0x00000020u;
|
|
/* 022BBC28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022BBC2C */ _t36 = cpu->r[31] + 0x00000134u;
|
|
/* 022BBC2C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 022BBC30 */ _t37 = cpu->r[3] + 0x00000024u;
|
|
/* 022BBC30 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022BBC34 */ _t38 = cpu->r[31] + 0x00000138u;
|
|
/* 022BBC34 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 022BBC38 */ _t39 = cpu->r[3] + 0x00000028u;
|
|
/* 022BBC38 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022BBC3C */ _t40 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022BBC3C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[13]);
|
|
/* 022BBC40 */ _t41 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022BBC40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022BBC44 */ _t42 = cpu->r[31] + 0x00000140u;
|
|
/* 022BBC44 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 022BBC48 */ _t43 = cpu->r[3] + 0x00000030u;
|
|
/* 022BBC48 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022BBC4C */ _t44 = cpu->r[31] + 0x00000144u;
|
|
/* 022BBC4C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[13]);
|
|
/* 022BBC50 */ _t45 = cpu->r[3] + 0x00000034u;
|
|
/* 022BBC50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022BBC54 */ _t46 = cpu->r[31] + 0x00000148u;
|
|
/* 022BBC54 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
L_022BBC58: ; // 0x22bbc58
|
|
/* 022BBC58 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BBC5C */ _t47 = cpu->r[8] + 0x000042C8u;
|
|
/* 022BBC5C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BBC60 */ _t48 = cpu->r[31] + 0x000001E8u;
|
|
/* 022BBC60 */ rbrew_write32(cpu->mem, _t48, cpu->r[30]);
|
|
/* 022BBC64 */ _t49 = cpu->r[31] + 0x000001D4u;
|
|
/* 022BBC64 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[31]);
|
|
/* 022BBC68 */ _t50 = cpu->r[31] + 0x000001F0u;
|
|
/* 022BBC68 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 022BBC6C */ _t51 = cpu->r[31] + 0x000001D8u;
|
|
/* 022BBC6C */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
/* 022BBC70 */ _t52 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BBC70 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[31]);
|
|
/* 022BBC74 */ cpu->r[7] = 0x101F0000u;
|
|
/* 022BBC78 */ _t53 = cpu->r[31] + 0x000001ECu;
|
|
/* 022BBC78 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[31]);
|
|
/* 022BBC7C */ _t54 = cpu->r[7] + 0x00006338u;
|
|
/* 022BBC7C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022BBC7C */ cpu->r[7] = _t54;
|
|
/* 022BBC80 */ _t55 = cpu->r[31] + 0x000001F4u;
|
|
/* 022BBC80 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 022BBC84 */ _t56 = cpu->r[7] + 0x00000004u;
|
|
/* 022BBC84 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022BBC88 */ _t57 = cpu->r[31] + 0x000001F8u;
|
|
/* 022BBC88 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[13]);
|
|
/* 022BBC8C */ _t58 = cpu->r[7] + 0x00000008u;
|
|
/* 022BBC8C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022BBC90 */ _t59 = cpu->r[31] + 0x00000200u;
|
|
/* 022BBC90 */ rbrew_write32(cpu->mem, _t59, cpu->r[30]);
|
|
/* 022BBC94 */ _t60 = cpu->r[31] + 0x000001FCu;
|
|
/* 022BBC94 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 022BBC98 */ _t61 = cpu->r[31] + 0x0000021Cu;
|
|
/* 022BBC98 */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[30]);
|
|
/* 022BBC9C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BBCA0 */ _t62 = cpu->r[31] + 0x00000238u;
|
|
/* 022BBCA0 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[31]);
|
|
/* 022BBCA4 */ Gambit_fn_022BBB30(cpu);
|
|
/* 022BBCA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBCAC */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBCAC */ _t64 = _t63 & 0x00000001u;
|
|
/* 022BBCAC */ if (_t64) goto L_022BBCD4; else goto L_022BBCB0;
|
|
L_022BBCB0: ; // 0x22bbcb0
|
|
/* 022BBCB0 */ _t65 = cpu->r[31] + 0x00000070u;
|
|
/* 022BBCB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022BBCB4 */ _t66 = cpu->r[9] + 0x00000010u;
|
|
/* 022BBCB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022BBCB8 */ cpu->r[8] = cpu->r[8] | 0x00000004u;
|
|
/* 022BBCBC */ _t67 = cpu->r[9] + 0x00000010u;
|
|
/* 022BBCBC */ rbrew_write32(cpu->mem, _t67, cpu->r[8]);
|
|
/* 022BBCC0 */ _t68 = cpu->r[31] + 0x00000314u;
|
|
/* 022BBCC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022BBCC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBCC8 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBCC8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 022BBCC8 */ if (_t70) goto L_022BBCD4; else goto L_022BBCCC;
|
|
L_022BBCCC: ; // 0x22bbccc
|
|
/* 022BBCCC */ cpu->r[0] = 0x00000001u;
|
|
/* 022BBCD0 */ _t71 = cpu->r[3] + 0x0000003Bu;
|
|
/* 022BBCD0 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[0]);
|
|
L_022BBCD4: ; // 0x22bbcd4
|
|
/* 022BBCD4 */ _t72 = cpu->r[31] + 0x00000090u;
|
|
/* 022BBCD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022BBCD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BBCDC */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBCDC */ _t74 = _t73 & 0x00000001u;
|
|
/* 022BBCDC */ if (_t74) goto L_022BBD14; else goto L_022BBCE0;
|
|
L_022BBCE0: ; // 0x22bbce0
|
|
/* 022BBCE0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BBCE4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BBCE8 */ cpu->r[5] = cpu->r[5] + 0x00004360u;
|
|
/* 022BBCEC */ cpu->r[3] = cpu->r[29];
|
|
/* 022BBCF0 */ Gambit_fn_027DBAD4(cpu);
|
|
/* 022BBCF4 */ _t75 = cpu->r[1] + 0x00000008u;
|
|
/* 022BBCF4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022BBCF8 */ cpu->r[6] = cpu->r[4] + 0x00000001u;
|
|
/* 022BBCFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000003u);
|
|
/* 022BBD00 */ _t76 = cpu->r[31] + 0x00000090u;
|
|
/* 022BBD00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022BBD04 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BBD04 */ _t78 = _t77 & 0x00000001u;
|
|
/* 022BBD04 */ if (_t78) goto L_022BBD10; else goto L_022BBD08;
|
|
L_022BBD08: ; // 0x22bbd08
|
|
/* 022BBD08 */ cpu->r[4] = 0x00000001u;
|
|
/* 022BBD0C */ _t79 = cpu->r[1] + 0x00000008u;
|
|
/* 022BBD0C */ rbrew_write32(cpu->mem, _t79, cpu->r[4]);
|
|
L_022BBD10: ; // 0x22bbd10
|
|
/* 022BBD10 */ Gambit_fn_02390F04(cpu);
|
|
L_022BBD14: ; // 0x22bbd14
|
|
/* 022BBD14 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022BBD18 */ cpu->r[30] = cpu->r[30] + 0x00003BD4u;
|
|
/* 022BBD1C */ _t80 = cpu->r[30] + 0x00000004u;
|
|
/* 022BBD1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022BBD20 */ _t81 = cpu->r[8] + 0x00000014u;
|
|
/* 022BBD20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022BBD24 */ cpu->ctr = cpu->r[0];
|
|
/* 022BBD28 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BBD2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BBD30 */ _t82 = cpu->r[30] + 0x00000000u;
|
|
/* 022BBD30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t82);
|
|
/* 022BBD34 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BBD38 */ _t83 = cpu->r[31] + 0x00000094u;
|
|
/* 022BBD38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t83);
|
|
/* 022BBD3C */ Gambit_fn_02398850(cpu);
|
|
/* 022BBD40 */ cpu->r[4] = 0x10060000u;
|
|
/* 022BBD44 */ _t84 = cpu->r[31] + 0x00000234u;
|
|
/* 022BBD44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022BBD48 */ cpu->r[4] = cpu->r[4] + 0x00004350u;
|
|
/* 022BBD4C */ Gambit_fn_027C6084(cpu);
|
|
/* 022BBD50 */ cpu->r[4] = 0x10060000u;
|
|
/* 022BBD54 */ _t85 = cpu->r[31] + 0x00000244u;
|
|
/* 022BBD54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t85);
|
|
/* 022BBD58 */ cpu->r[4] = cpu->r[4] + 0x00004358u;
|
|
/* 022BBD5C */ Gambit_fn_027C6084(cpu);
|
|
/* 022BBD60 */ cpu->r[0] = 0x00000006u;
|
|
/* 022BBD64 */ _t86 = cpu->r[31] + 0x00000244u;
|
|
/* 022BBD64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022BBD68 */ cpu->f[13] = cpu->f[31];
|
|
/* 022BBD6C */ cpu->ctr = cpu->r[0];
|
|
/* 022BBD70 */ cpu->r[6] = cpu->r[11] + 0xFFFFFFF8u;
|
|
L_022BBD74: ; // 0x22bbd74
|
|
/* 022BBD74 */ _t87 = cpu->r[6] + 0x00000014u;
|
|
/* 022BBD74 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[13]);
|
|
/* 022BBD78 */ cpu->r[6] = cpu->r[6] + 0x0000000Cu;
|
|
/* 022BBD7C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022BBD7C */ _t88 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022BBD7C */ _t89 = _t88 >> (0x00000002u & 31u);
|
|
/* 022BBD7C */ _t90 = _t89 & 0x00000001u;
|
|
/* 022BBD7C */ if (_t90) goto L_022BBD74; else goto L_022BBD80;
|
|
L_022BBD80: ; // 0x22bbd80
|
|
/* 022BBD80 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BBD84 */ Gambit_fn_022BBB48(cpu);
|
|
/* 022BBD88 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BBD8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBD90 */ _t91 = cpu->r[11] + 0x00004340u;
|
|
/* 022BBD90 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 022BBD94 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBD94 */ _t93 = _t92 & 0x00000001u;
|
|
/* 022BBD94 */ if (_t93) goto L_022BBD98; else goto L_022BBDD0;
|
|
L_022BBD98: ; // 0x22bbd98
|
|
/* 022BBD98 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BBD9C */ _t94 = cpu->r[31] + 0x00000244u;
|
|
/* 022BBD9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t94);
|
|
/* 022BBDA0 */ _t95 = cpu->r[9] + 0x00004344u;
|
|
/* 022BBDA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 022BBDA4 */ _t96 = cpu->r[10] + 0x00000038u;
|
|
/* 022BBDA4 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[0]);
|
|
/* 022BBDA8 */ _t97 = cpu->r[31] + 0x00000244u;
|
|
/* 022BBDA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022BBDAC */ Gambit_fn_027C5E34(cpu);
|
|
/* 022BBDB0 */ _t98 = cpu->r[31] + 0x00000004u;
|
|
/* 022BBDB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 022BBDB4 */ _t99 = cpu->r[12] + 0x00000434u;
|
|
/* 022BBDB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022BBDB8 */ cpu->ctr = cpu->r[6];
|
|
/* 022BBDBC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BBDC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BBDC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBDC8 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBDC8 */ _t101 = _t100 & 0x00000001u;
|
|
/* 022BBDC8 */ if (_t101) goto L_022BBE60; else goto L_022BBDCC;
|
|
L_022BBDCC: ; // 0x22bbdcc
|
|
/* 022BBDCC */ goto L_022BBE0C;
|
|
L_022BBDD0: ; // 0x22bbdd0
|
|
/* 022BBDD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BBDD4 */ Gambit_fn_022BBB60(cpu);
|
|
/* 022BBDD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBDDC */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBDDC */ _t103 = _t102 & 0x00000001u;
|
|
/* 022BBDDC */ if (_t103) goto L_022BBDE0; else goto L_022BBDE8;
|
|
L_022BBDE0: ; // 0x22bbde0
|
|
/* 022BBDE0 */ _t104 = cpu->r[31] + 0x00000244u;
|
|
/* 022BBDE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022BBDE4 */ _t105 = cpu->r[11] + 0x00000038u;
|
|
/* 022BBDE4 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[30]);
|
|
L_022BBDE8: ; // 0x22bbde8
|
|
/* 022BBDE8 */ _t106 = cpu->r[31] + 0x00000244u;
|
|
/* 022BBDE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022BBDEC */ Gambit_fn_027C5E34(cpu);
|
|
/* 022BBDF0 */ _t107 = cpu->r[31] + 0x00000004u;
|
|
/* 022BBDF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022BBDF4 */ _t108 = cpu->r[12] + 0x00000434u;
|
|
/* 022BBDF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t108);
|
|
/* 022BBDF8 */ cpu->ctr = cpu->r[6];
|
|
/* 022BBDFC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BBE00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BBE04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBE08 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBE08 */ _t110 = _t109 & 0x00000001u;
|
|
/* 022BBE08 */ if (_t110) goto L_022BBE60; else goto L_022BBE0C;
|
|
L_022BBE0C: ; // 0x22bbe0c
|
|
/* 022BBE0C */ cpu->r[4] = 0x10060000u;
|
|
/* 022BBE10 */ _t111 = cpu->r[31] + 0x00000248u;
|
|
/* 022BBE10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t111);
|
|
/* 022BBE14 */ cpu->r[4] = cpu->r[4] + 0x00004348u;
|
|
/* 022BBE18 */ Gambit_fn_027C6084(cpu);
|
|
/* 022BBE1C */ cpu->r[10] = 0x00000006u;
|
|
/* 022BBE20 */ _t112 = cpu->r[31] + 0x00000248u;
|
|
/* 022BBE20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t112);
|
|
/* 022BBE24 */ cpu->f[13] = cpu->f[31];
|
|
/* 022BBE28 */ cpu->ctr = cpu->r[10];
|
|
/* 022BBE2C */ cpu->r[12] = cpu->r[7] + 0xFFFFFFF8u;
|
|
L_022BBE30: ; // 0x22bbe30
|
|
/* 022BBE30 */ _t113 = cpu->r[12] + 0x00000014u;
|
|
/* 022BBE30 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[13]);
|
|
/* 022BBE34 */ cpu->r[12] = cpu->r[12] + 0x0000000Cu;
|
|
/* 022BBE38 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022BBE38 */ _t114 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022BBE38 */ _t115 = _t114 >> (0x00000002u & 31u);
|
|
/* 022BBE38 */ _t116 = _t115 & 0x00000001u;
|
|
/* 022BBE38 */ if (_t116) goto L_022BBE30; else goto L_022BBE3C;
|
|
L_022BBE3C: ; // 0x22bbe3c
|
|
/* 022BBE3C */ _t117 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022BBE3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t117);
|
|
/* 022BBE40 */ _t118 = cpu->r[7] + 0x00004714u;
|
|
/* 022BBE40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 022BBE44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022BBE48 */ _t119 = cpu->r[31] + 0x00000248u;
|
|
/* 022BBE48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t119);
|
|
/* 022BBE4C */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBE4C */ _t121 = _t120 & 0x00000001u;
|
|
/* 022BBE4C */ if (_t121) goto L_022BBE54; else goto L_022BBE50;
|
|
L_022BBE50: ; // 0x22bbe50
|
|
/* 022BBE50 */ cpu->f[31] = cpu->f[30];
|
|
L_022BBE54: ; // 0x22bbe54
|
|
/* 022BBE54 */ _t122 = cpu->r[9] + 0x0000002Cu;
|
|
/* 022BBE54 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[31]);
|
|
/* 022BBE58 */ _t123 = cpu->r[31] + 0x00000248u;
|
|
/* 022BBE58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t123);
|
|
/* 022BBE5C */ Gambit_fn_027C5E34(cpu);
|
|
L_022BBE60: ; // 0x22bbe60
|
|
/* 022BBE60 */ _t124 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBE60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t124);
|
|
/* 022BBE64 */ _t125 = cpu->r[1] + 0x00000038u;
|
|
/* 022BBE64 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 022BBE68 */ _t126 = cpu->r[1] + 0x00000028u;
|
|
/* 022BBE68 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 022BBE6C */ _t127 = cpu->r[1] + 0x00000030u;
|
|
/* 022BBE6C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t127);
|
|
/* 022BBE70 */ _t128 = cpu->r[1] + 0x00000020u;
|
|
/* 022BBE70 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t128);
|
|
/* 022BBE74 */ _t129 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BBE74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t129);
|
|
/* 022BBE78 */ _t130 = cpu->r[1] + 0x00000018u;
|
|
/* 022BBE78 */ cpu->r[30] = rbrew_read32(cpu->mem, _t130);
|
|
/* 022BBE7C */ _t131 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BBE7C */ _t132 = _t131 & 0x00000001u;
|
|
/* 022BBE7C */ if (_t132) goto L_022BBE80; // else: addr-0 trap, fall-through
|
|
L_022BBE80: ; // 0x22bbe80
|
|
/* 022BBE80 */ _t133 = cpu->r[1] + 0x00000044u;
|
|
/* 022BBE80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t133);
|
|
/* 022BBE84 */ cpu->lr = cpu->r[0];
|
|
/* 022BBE88 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022BBE8C */ return;
|
|
}
|
|
|
|
// fn_022BBE90 @ 0x22bbe90
|
|
void Gambit_fn_022BBE90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_022BBE90: ; // 0x22bbe90
|
|
/* 022BBE90 */ _t0 = cpu->r[3] + 0x000001E8u;
|
|
/* 022BBE90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BBE94 */ cpu->r[0] = 0x00000000u;
|
|
/* 022BBE98 */ cpu->r[12] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 022BBE98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BBE9C */ _t1 = cpu->r[3] + 0x00000200u;
|
|
/* 022BBE9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BBEA0 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BBEA0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BBEA0 */ if (_t3) goto L_022BBEA4; else goto L_022BBEA8;
|
|
L_022BBEA4: ; // 0x22bbea4
|
|
/* 022BBEA4 */ cpu->r[12] = cpu->r[0];
|
|
L_022BBEA8: ; // 0x22bbea8
|
|
/* 022BBEA8 */ _t4 = cpu->r[3] + 0x000001E8u;
|
|
/* 022BBEA8 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022BBEAC */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 022BBEAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022BBEB0 */ _t5 = cpu->r[3] + 0x00000208u;
|
|
/* 022BBEB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BBEB4 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BBEB4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BBEB4 */ if (_t7) goto L_022BBEB8; else goto L_022BBEBC;
|
|
L_022BBEB8: ; // 0x22bbeb8
|
|
/* 022BBEB8 */ cpu->r[10] = cpu->r[0];
|
|
L_022BBEBC: ; // 0x22bbebc
|
|
/* 022BBEBC */ _t8 = cpu->r[3] + 0x00000200u;
|
|
/* 022BBEBC */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 022BBEC0 */ cpu->r[9] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 022BBEC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022BBEC4 */ _t9 = cpu->r[3] + 0x00000220u;
|
|
/* 022BBEC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BBEC8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BBEC8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BBEC8 */ if (_t11) goto L_022BBECC; else goto L_022BBED0;
|
|
L_022BBECC: ; // 0x22bbecc
|
|
/* 022BBECC */ cpu->r[9] = cpu->r[0];
|
|
L_022BBED0: ; // 0x22bbed0
|
|
/* 022BBED0 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022BBED0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BBED4 */ _t12 = cpu->r[3] + 0x00000208u;
|
|
/* 022BBED4 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 022BBED8 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BBED8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BBED8 */ if (_t14) goto L_022BBEDC; else goto L_022BBEE0;
|
|
L_022BBEDC: ; // 0x22bbedc
|
|
/* 022BBEDC */ cpu->r[12] = cpu->r[0];
|
|
L_022BBEE0: ; // 0x22bbee0
|
|
/* 022BBEE0 */ _t15 = cpu->r[3] + 0x00000220u;
|
|
/* 022BBEE0 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 022BBEE4 */ return;
|
|
}
|
|
|
|
// fn_022BBEE8 @ 0x22bbee8
|
|
void Gambit_fn_022BBEE8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022BBEE8: ; // 0x22bbee8
|
|
/* 022BBEE8 */ _t0 = cpu->r[3] + 0x000001A4u;
|
|
/* 022BBEE8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022BBEEC */ /* nop */
|
|
/* 022BBEF0 */ cpu->r[0] = cpu->r[0] ^ 0x00000006u;
|
|
/* 022BBEF4 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 022BBEF8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 022BBEFC */ return;
|
|
}
|
|
|
|
// fn_022BBF00 @ 0x22bbf00
|
|
void Gambit_fn_022BBF00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022BBF00: ; // 0x22bbf00
|
|
/* 022BBF00 */ cpu->r[0] = cpu->lr;
|
|
/* 022BBF04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BBF04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BBF04 */ cpu->r[1] = _t0;
|
|
/* 022BBF08 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BBF0C */ _t1 = cpu->r[11] + 0x000042C8u;
|
|
/* 022BBF0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022BBF10 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBF10 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BBF14 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBF14 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BBF18 */ _t4 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BBF18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BBF1C */ _t5 = cpu->r[12] + 0x000046F4u;
|
|
/* 022BBF1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BBF20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BBF24 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BBF24 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BBF24 */ if (_t7) goto L_022BBF28; else goto L_022BBF40;
|
|
L_022BBF28: ; // 0x22bbf28
|
|
/* 022BBF28 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBF28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BBF2C */ _t9 = cpu->r[12] + 0x000046F4u;
|
|
/* 022BBF2C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BBF30 */ cpu->lr = cpu->r[0];
|
|
/* 022BBF34 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBF34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BBF38 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BBF3C */ return;
|
|
L_022BBF40: ; // 0x22bbf40
|
|
/* 022BBF40 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BBF44 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022BBF48 */ _t11 = cpu->r[9] + 0x000001B0u;
|
|
/* 022BBF48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BBF48 */ cpu->r[9] = _t11;
|
|
/* 022BBF4C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BBF50 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BBF54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022BBF58 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BBF5C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBF5C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022BBF5C */ if (_t13) goto L_022BBF60; else goto L_022BBF74;
|
|
L_022BBF60: ; // 0x22bbf60
|
|
/* 022BBF60 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BBF64 */ cpu->r[12] = 0x00000001u;
|
|
/* 022BBF68 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BBF6C */ _t14 = cpu->r[9] + 0x00000000u;
|
|
/* 022BBF6C */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 022BBF70 */ _t15 = cpu->r[4] + 0x00000000u;
|
|
/* 022BBF70 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
L_022BBF74: ; // 0x22bbf74
|
|
/* 022BBF74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BBF78 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBF78 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BBF78 */ if (_t17) goto L_022BBF98; else goto L_022BBF7C;
|
|
L_022BBF7C: ; // 0x22bbf7c
|
|
/* 022BBF7C */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 022BBF7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BBF80 */ _t19 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022BBF80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BBF84 */ cpu->ctr = cpu->r[8];
|
|
/* 022BBF88 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BBF8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BBF90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBF94 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBF94 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022BBF94 */ if (_t21) goto L_022BBF98; else goto L_022BBF9C;
|
|
L_022BBF98: ; // 0x22bbf98
|
|
/* 022BBF98 */ cpu->r[31] = 0x00000000u;
|
|
L_022BBF9C: ; // 0x22bbf9c
|
|
/* 022BBF9C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBF9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BBFA0 */ _t23 = cpu->r[31] + 0x000002C8u;
|
|
/* 022BBFA0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BBFA4 */ cpu->lr = cpu->r[0];
|
|
/* 022BBFA8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBFA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BBFAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BBFB0 */ return;
|
|
}
|
|
|
|
// fn_022BBF04 @ 0x22bbf04
|
|
void Gambit_fn_022BBF04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022BBF04: ; // 0x22bbf04
|
|
/* 022BBF04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BBF04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BBF04 */ cpu->r[1] = _t0;
|
|
/* 022BBF08 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BBF0C */ _t1 = cpu->r[11] + 0x000042C8u;
|
|
/* 022BBF0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022BBF10 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBF10 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BBF14 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBF14 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BBF18 */ _t4 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BBF18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BBF1C */ _t5 = cpu->r[12] + 0x000046F4u;
|
|
/* 022BBF1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BBF20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BBF24 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BBF24 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BBF24 */ if (_t7) goto L_022BBF28; else goto L_022BBF40;
|
|
L_022BBF28: ; // 0x22bbf28
|
|
/* 022BBF28 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBF28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BBF2C */ _t9 = cpu->r[12] + 0x000046F4u;
|
|
/* 022BBF2C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BBF30 */ cpu->lr = cpu->r[0];
|
|
/* 022BBF34 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBF34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BBF38 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BBF3C */ return;
|
|
L_022BBF40: ; // 0x22bbf40
|
|
/* 022BBF40 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BBF44 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022BBF48 */ _t11 = cpu->r[9] + 0x000001B0u;
|
|
/* 022BBF48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BBF48 */ cpu->r[9] = _t11;
|
|
/* 022BBF4C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BBF50 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BBF54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022BBF58 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BBF5C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBF5C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022BBF5C */ if (_t13) goto L_022BBF60; else goto L_022BBF74;
|
|
L_022BBF60: ; // 0x22bbf60
|
|
/* 022BBF60 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BBF64 */ cpu->r[12] = 0x00000001u;
|
|
/* 022BBF68 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BBF6C */ _t14 = cpu->r[9] + 0x00000000u;
|
|
/* 022BBF6C */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 022BBF70 */ _t15 = cpu->r[4] + 0x00000000u;
|
|
/* 022BBF70 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
L_022BBF74: ; // 0x22bbf74
|
|
/* 022BBF74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BBF78 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBF78 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BBF78 */ if (_t17) goto L_022BBF98; else goto L_022BBF7C;
|
|
L_022BBF7C: ; // 0x22bbf7c
|
|
/* 022BBF7C */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 022BBF7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BBF80 */ _t19 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022BBF80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BBF84 */ cpu->ctr = cpu->r[8];
|
|
/* 022BBF88 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BBF8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BBF90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BBF94 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBF94 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022BBF94 */ if (_t21) goto L_022BBF98; else goto L_022BBF9C;
|
|
L_022BBF98: ; // 0x22bbf98
|
|
/* 022BBF98 */ cpu->r[31] = 0x00000000u;
|
|
L_022BBF9C: ; // 0x22bbf9c
|
|
/* 022BBF9C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBF9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BBFA0 */ _t23 = cpu->r[31] + 0x000002C8u;
|
|
/* 022BBFA0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BBFA4 */ cpu->lr = cpu->r[0];
|
|
/* 022BBFA8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBFA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BBFAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BBFB0 */ return;
|
|
}
|
|
|
|
// fn_022BBFB4 @ 0x22bbfb4
|
|
void Gambit_fn_022BBFB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022BBFB4: ; // 0x22bbfb4
|
|
/* 022BBFB4 */ cpu->r[0] = cpu->lr;
|
|
/* 022BBFB8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BBFB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BBFB8 */ cpu->r[1] = _t0;
|
|
/* 022BBFBC */ cpu->r[10] = 0x10060000u;
|
|
/* 022BBFC0 */ _t1 = cpu->r[10] + 0x000042C8u;
|
|
/* 022BBFC0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022BBFC4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBFC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BBFC8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBFC8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BBFCC */ _t4 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BBFCC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BBFD0 */ _t5 = cpu->r[9] + 0x000046FCu;
|
|
/* 022BBFD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BBFD4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BBFD8 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BBFD8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BBFD8 */ if (_t7) goto L_022BBFDC; else goto L_022BC050;
|
|
L_022BBFDC: ; // 0x22bbfdc
|
|
/* 022BBFDC */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BBFE0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BBFE4 */ _t8 = cpu->r[12] + 0x000001B0u;
|
|
/* 022BBFE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BBFE4 */ cpu->r[12] = _t8;
|
|
/* 022BBFE8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BBFEC */ cpu->r[31] = cpu->r[3];
|
|
/* 022BBFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BBFF4 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BBFF8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBFF8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BBFF8 */ if (_t10) goto L_022BBFFC; else goto L_022BC010;
|
|
L_022BBFFC: ; // 0x22bbffc
|
|
/* 022BBFFC */ cpu->r[0] = 0x10060000u;
|
|
/* 022BC000 */ cpu->r[9] = 0x00000001u;
|
|
/* 022BC004 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BC008 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022BC008 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 022BC00C */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 022BC00C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_022BC010: ; // 0x22bc010
|
|
/* 022BC010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BC014 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC014 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BC014 */ if (_t14) goto L_022BC034; else goto L_022BC018;
|
|
L_022BC018: ; // 0x22bc018
|
|
/* 022BC018 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 022BC018 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BC01C */ _t16 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022BC01C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BC020 */ cpu->ctr = cpu->r[10];
|
|
/* 022BC024 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC028 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC02C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC030 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC030 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BC030 */ if (_t18) goto L_022BC034; else goto L_022BC038;
|
|
L_022BC034: ; // 0x22bc034
|
|
/* 022BC034 */ cpu->r[31] = 0x00000000u;
|
|
L_022BC038: ; // 0x22bc038
|
|
/* 022BC038 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC038 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BC03C */ _t20 = cpu->r[31] + 0x00000328u;
|
|
/* 022BC03C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022BC040 */ cpu->lr = cpu->r[0];
|
|
/* 022BC044 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC044 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BC048 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BC04C */ return;
|
|
L_022BC050: ; // 0x22bc050
|
|
/* 022BC050 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC050 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BC054 */ _t23 = cpu->r[9] + 0x000046FCu;
|
|
/* 022BC054 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BC058 */ cpu->lr = cpu->r[0];
|
|
/* 022BC05C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC05C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BC060 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BC064 */ return;
|
|
}
|
|
|
|
// fn_022BBFB8 @ 0x22bbfb8
|
|
void Gambit_fn_022BBFB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022BBFB8: ; // 0x22bbfb8
|
|
/* 022BBFB8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BBFB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BBFB8 */ cpu->r[1] = _t0;
|
|
/* 022BBFBC */ cpu->r[10] = 0x10060000u;
|
|
/* 022BBFC0 */ _t1 = cpu->r[10] + 0x000042C8u;
|
|
/* 022BBFC0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022BBFC4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BBFC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BBFC8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BBFC8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BBFCC */ _t4 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BBFCC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BBFD0 */ _t5 = cpu->r[9] + 0x000046FCu;
|
|
/* 022BBFD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BBFD4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BBFD8 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BBFD8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BBFD8 */ if (_t7) goto L_022BBFDC; else goto L_022BC050;
|
|
L_022BBFDC: ; // 0x22bbfdc
|
|
/* 022BBFDC */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BBFE0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BBFE4 */ _t8 = cpu->r[12] + 0x000001B0u;
|
|
/* 022BBFE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BBFE4 */ cpu->r[12] = _t8;
|
|
/* 022BBFE8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BBFEC */ cpu->r[31] = cpu->r[3];
|
|
/* 022BBFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BBFF4 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BBFF8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BBFF8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BBFF8 */ if (_t10) goto L_022BBFFC; else goto L_022BC010;
|
|
L_022BBFFC: ; // 0x22bbffc
|
|
/* 022BBFFC */ cpu->r[0] = 0x10060000u;
|
|
/* 022BC000 */ cpu->r[9] = 0x00000001u;
|
|
/* 022BC004 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BC008 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022BC008 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 022BC00C */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 022BC00C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_022BC010: ; // 0x22bc010
|
|
/* 022BC010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BC014 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC014 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BC014 */ if (_t14) goto L_022BC034; else goto L_022BC018;
|
|
L_022BC018: ; // 0x22bc018
|
|
/* 022BC018 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 022BC018 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BC01C */ _t16 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022BC01C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BC020 */ cpu->ctr = cpu->r[10];
|
|
/* 022BC024 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC028 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC02C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC030 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC030 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BC030 */ if (_t18) goto L_022BC034; else goto L_022BC038;
|
|
L_022BC034: ; // 0x22bc034
|
|
/* 022BC034 */ cpu->r[31] = 0x00000000u;
|
|
L_022BC038: ; // 0x22bc038
|
|
/* 022BC038 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC038 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BC03C */ _t20 = cpu->r[31] + 0x00000328u;
|
|
/* 022BC03C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022BC040 */ cpu->lr = cpu->r[0];
|
|
/* 022BC044 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC044 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BC048 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BC04C */ return;
|
|
L_022BC050: ; // 0x22bc050
|
|
/* 022BC050 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC050 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BC054 */ _t23 = cpu->r[9] + 0x000046FCu;
|
|
/* 022BC054 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BC058 */ cpu->lr = cpu->r[0];
|
|
/* 022BC05C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC05C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BC060 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BC064 */ return;
|
|
}
|
|
|
|
// fn_022BC068 @ 0x22bc068
|
|
void Gambit_fn_022BC068(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_022BC068: ; // 0x22bc068
|
|
/* 022BC068 */ cpu->r[0] = cpu->lr;
|
|
/* 022BC06C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BC06C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC06C */ cpu->r[1] = _t0;
|
|
/* 022BC070 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC070 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BC074 */ cpu->r[30] = cpu->r[5];
|
|
/* 022BC078 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC078 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022BC07C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC07C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022BC080 */ cpu->r[28] = cpu->r[3];
|
|
/* 022BC084 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC084 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022BC088 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC088 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022BC08C */ cpu->r[29] = cpu->r[4];
|
|
/* 022BC090 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BC094 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BC098 */ _t6 = cpu->r[12] + 0x000001B0u;
|
|
/* 022BC098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BC098 */ cpu->r[12] = _t6;
|
|
/* 022BC09C */ cpu->r[31] = cpu->r[3];
|
|
/* 022BC0A0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BC0A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BC0A8 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BC0AC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC0AC */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BC0AC */ if (_t8) goto L_022BC0B0; else goto L_022BC0C4;
|
|
L_022BC0B0: ; // 0x22bc0b0
|
|
/* 022BC0B0 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BC0B4 */ cpu->r[8] = 0x00000001u;
|
|
/* 022BC0B8 */ cpu->r[9] = cpu->r[9] + 0x000041D8u;
|
|
/* 022BC0BC */ _t9 = cpu->r[12] + 0x00000000u;
|
|
/* 022BC0BC */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022BC0C0 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 022BC0C0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
L_022BC0C4: ; // 0x22bc0c4
|
|
/* 022BC0C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BC0C8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC0C8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022BC0C8 */ if (_t12) goto L_022BC0E8; else goto L_022BC0CC;
|
|
L_022BC0CC: ; // 0x22bc0cc
|
|
/* 022BC0CC */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 022BC0CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BC0D0 */ _t14 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022BC0D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BC0D4 */ cpu->ctr = cpu->r[0];
|
|
/* 022BC0D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC0DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC0E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC0E4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC0E4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BC0E4 */ if (_t16) goto L_022BC0E8; else goto L_022BC0EC;
|
|
L_022BC0E8: ; // 0x22bc0e8
|
|
/* 022BC0E8 */ cpu->r[31] = 0x00000000u;
|
|
L_022BC0EC: ; // 0x22bc0ec
|
|
/* 022BC0EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BC0F0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC0F0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BC0F0 */ if (_t18) goto L_022BC0F4; else goto L_022BC118;
|
|
L_022BC0F4: ; // 0x22bc0f4
|
|
/* 022BC0F4 */ _t19 = cpu->r[31] + 0x00000268u;
|
|
/* 022BC0F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BC0F8 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BC0FC */ _t20 = cpu->r[29] + 0x00000004u;
|
|
/* 022BC0FC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 022BC100 */ Gambit_fn_022BBF00(cpu);
|
|
/* 022BC104 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BC108 */ _t21 = cpu->r[29] + 0x00000008u;
|
|
/* 022BC108 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[1]);
|
|
/* 022BC10C */ Gambit_fn_022BBFB4(cpu);
|
|
/* 022BC110 */ _t22 = cpu->r[29] + 0x0000000Cu;
|
|
/* 022BC110 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[1]);
|
|
/* 022BC114 */ goto L_022BC134;
|
|
L_022BC118: ; // 0x22bc118
|
|
/* 022BC118 */ _t23 = cpu->r[31] + 0x00000388u;
|
|
/* 022BC118 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BC11C */ _t24 = cpu->r[29] + 0x00000004u;
|
|
/* 022BC11C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 022BC120 */ _t25 = cpu->r[31] + 0x000003E8u;
|
|
/* 022BC120 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BC124 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BC128 */ _t26 = cpu->r[29] + 0x00000008u;
|
|
/* 022BC128 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[1]);
|
|
/* 022BC12C */ Gambit_fn_022BBFB4(cpu);
|
|
/* 022BC130 */ _t27 = cpu->r[29] + 0x0000000Cu;
|
|
/* 022BC130 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[1]);
|
|
L_022BC134: ; // 0x22bc134
|
|
/* 022BC134 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC134 */ cpu->r[28] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BC138 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC138 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022BC13C */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC13C */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022BC140 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC140 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022BC144 */ cpu->lr = cpu->r[0];
|
|
/* 022BC148 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC148 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022BC14C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BC150 */ return;
|
|
}
|
|
|
|
// fn_022BC06C @ 0x22bc06c
|
|
void Gambit_fn_022BC06C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_022BC06C: ; // 0x22bc06c
|
|
/* 022BC06C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BC06C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC06C */ cpu->r[1] = _t0;
|
|
/* 022BC070 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC070 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BC074 */ cpu->r[30] = cpu->r[5];
|
|
/* 022BC078 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC078 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022BC07C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC07C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022BC080 */ cpu->r[28] = cpu->r[3];
|
|
/* 022BC084 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC084 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022BC088 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC088 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022BC08C */ cpu->r[29] = cpu->r[4];
|
|
/* 022BC090 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BC094 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BC098 */ _t6 = cpu->r[12] + 0x000001B0u;
|
|
/* 022BC098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BC098 */ cpu->r[12] = _t6;
|
|
/* 022BC09C */ cpu->r[31] = cpu->r[3];
|
|
/* 022BC0A0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BC0A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BC0A8 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BC0AC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC0AC */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BC0AC */ if (_t8) goto L_022BC0B0; else goto L_022BC0C4;
|
|
L_022BC0B0: ; // 0x22bc0b0
|
|
/* 022BC0B0 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BC0B4 */ cpu->r[8] = 0x00000001u;
|
|
/* 022BC0B8 */ cpu->r[9] = cpu->r[9] + 0x000041D8u;
|
|
/* 022BC0BC */ _t9 = cpu->r[12] + 0x00000000u;
|
|
/* 022BC0BC */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022BC0C0 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 022BC0C0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
L_022BC0C4: ; // 0x22bc0c4
|
|
/* 022BC0C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BC0C8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC0C8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022BC0C8 */ if (_t12) goto L_022BC0E8; else goto L_022BC0CC;
|
|
L_022BC0CC: ; // 0x22bc0cc
|
|
/* 022BC0CC */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 022BC0CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BC0D0 */ _t14 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022BC0D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BC0D4 */ cpu->ctr = cpu->r[0];
|
|
/* 022BC0D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC0DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC0E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC0E4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC0E4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BC0E4 */ if (_t16) goto L_022BC0E8; else goto L_022BC0EC;
|
|
L_022BC0E8: ; // 0x22bc0e8
|
|
/* 022BC0E8 */ cpu->r[31] = 0x00000000u;
|
|
L_022BC0EC: ; // 0x22bc0ec
|
|
/* 022BC0EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BC0F0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC0F0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BC0F0 */ if (_t18) goto L_022BC0F4; else goto L_022BC118;
|
|
L_022BC0F4: ; // 0x22bc0f4
|
|
/* 022BC0F4 */ _t19 = cpu->r[31] + 0x00000268u;
|
|
/* 022BC0F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BC0F8 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BC0FC */ _t20 = cpu->r[29] + 0x00000004u;
|
|
/* 022BC0FC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 022BC100 */ Gambit_fn_022BBF00(cpu);
|
|
/* 022BC104 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BC108 */ _t21 = cpu->r[29] + 0x00000008u;
|
|
/* 022BC108 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[1]);
|
|
/* 022BC10C */ Gambit_fn_022BBFB4(cpu);
|
|
/* 022BC110 */ _t22 = cpu->r[29] + 0x0000000Cu;
|
|
/* 022BC110 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[1]);
|
|
/* 022BC114 */ goto L_022BC134;
|
|
L_022BC118: ; // 0x22bc118
|
|
/* 022BC118 */ _t23 = cpu->r[31] + 0x00000388u;
|
|
/* 022BC118 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BC11C */ _t24 = cpu->r[29] + 0x00000004u;
|
|
/* 022BC11C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 022BC120 */ _t25 = cpu->r[31] + 0x000003E8u;
|
|
/* 022BC120 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BC124 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BC128 */ _t26 = cpu->r[29] + 0x00000008u;
|
|
/* 022BC128 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[1]);
|
|
/* 022BC12C */ Gambit_fn_022BBFB4(cpu);
|
|
/* 022BC130 */ _t27 = cpu->r[29] + 0x0000000Cu;
|
|
/* 022BC130 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[1]);
|
|
L_022BC134: ; // 0x22bc134
|
|
/* 022BC134 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC134 */ cpu->r[28] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BC138 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC138 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022BC13C */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC13C */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022BC140 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC140 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022BC144 */ cpu->lr = cpu->r[0];
|
|
/* 022BC148 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC148 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022BC14C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BC150 */ return;
|
|
}
|
|
|
|
// fn_022BC154 @ 0x22bc154
|
|
void Gambit_fn_022BC154(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_022BC154: ; // 0x22bc154
|
|
/* 022BC154 */ cpu->r[0] = cpu->lr;
|
|
/* 022BC158 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BC158 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC158 */ cpu->r[1] = _t0;
|
|
/* 022BC15C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC15C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BC160 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BC164 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC164 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BC168 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC168 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BC16C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BC170 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022BC174 */ _t4 = cpu->r[11] + 0x000001B0u;
|
|
/* 022BC174 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BC174 */ cpu->r[11] = _t4;
|
|
/* 022BC178 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BC17C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BC180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BC184 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BC188 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC188 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BC188 */ if (_t6) goto L_022BC18C; else goto L_022BC1A0;
|
|
L_022BC18C: ; // 0x22bc18c
|
|
/* 022BC18C */ cpu->r[0] = 0x10060000u;
|
|
/* 022BC190 */ cpu->r[8] = 0x00000001u;
|
|
/* 022BC194 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BC198 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 022BC198 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 022BC19C */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022BC19C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022BC1A0: ; // 0x22bc1a0
|
|
/* 022BC1A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BC1A4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC1A4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BC1A4 */ if (_t10) goto L_022BC1C4; else goto L_022BC1A8;
|
|
L_022BC1A8: ; // 0x22bc1a8
|
|
/* 022BC1A8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022BC1A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BC1AC */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022BC1AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BC1B0 */ cpu->ctr = cpu->r[12];
|
|
/* 022BC1B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC1B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC1BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC1C0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC1C0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BC1C0 */ if (_t14) goto L_022BC1C4; else goto L_022BC1C8;
|
|
L_022BC1C4: ; // 0x22bc1c4
|
|
/* 022BC1C4 */ cpu->r[31] = 0x00000000u;
|
|
L_022BC1C8: ; // 0x22bc1c8
|
|
/* 022BC1C8 */ _t15 = cpu->r[31] + 0x00000FE4u;
|
|
/* 022BC1C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BC1CC */ _t16 = cpu->r[30] + 0x000001E8u;
|
|
/* 022BC1CC */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 022BC1D0 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC1D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BC1D4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC1D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BC1D8 */ cpu->lr = cpu->r[0];
|
|
/* 022BC1DC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC1DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BC1E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BC1E4 */ return;
|
|
}
|
|
|
|
// fn_022BC158 @ 0x22bc158
|
|
void Gambit_fn_022BC158(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_022BC158: ; // 0x22bc158
|
|
/* 022BC158 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BC158 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC158 */ cpu->r[1] = _t0;
|
|
/* 022BC15C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC15C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BC160 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BC164 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC164 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BC168 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC168 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BC16C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BC170 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022BC174 */ _t4 = cpu->r[11] + 0x000001B0u;
|
|
/* 022BC174 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BC174 */ cpu->r[11] = _t4;
|
|
/* 022BC178 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BC17C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BC180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BC184 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BC188 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC188 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BC188 */ if (_t6) goto L_022BC18C; else goto L_022BC1A0;
|
|
L_022BC18C: ; // 0x22bc18c
|
|
/* 022BC18C */ cpu->r[0] = 0x10060000u;
|
|
/* 022BC190 */ cpu->r[8] = 0x00000001u;
|
|
/* 022BC194 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BC198 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 022BC198 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 022BC19C */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022BC19C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022BC1A0: ; // 0x22bc1a0
|
|
/* 022BC1A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BC1A4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC1A4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BC1A4 */ if (_t10) goto L_022BC1C4; else goto L_022BC1A8;
|
|
L_022BC1A8: ; // 0x22bc1a8
|
|
/* 022BC1A8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022BC1A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BC1AC */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022BC1AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BC1B0 */ cpu->ctr = cpu->r[12];
|
|
/* 022BC1B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC1B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC1BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC1C0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC1C0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BC1C0 */ if (_t14) goto L_022BC1C4; else goto L_022BC1C8;
|
|
L_022BC1C4: ; // 0x22bc1c4
|
|
/* 022BC1C4 */ cpu->r[31] = 0x00000000u;
|
|
L_022BC1C8: ; // 0x22bc1c8
|
|
/* 022BC1C8 */ _t15 = cpu->r[31] + 0x00000FE4u;
|
|
/* 022BC1C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BC1CC */ _t16 = cpu->r[30] + 0x000001E8u;
|
|
/* 022BC1CC */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 022BC1D0 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC1D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BC1D4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC1D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BC1D8 */ cpu->lr = cpu->r[0];
|
|
/* 022BC1DC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC1DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BC1E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BC1E4 */ return;
|
|
}
|
|
|
|
// fn_022BC1E8 @ 0x22bc1e8
|
|
void Gambit_fn_022BC1E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_022BC1E8: ; // 0x22bc1e8
|
|
/* 022BC1E8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022BC1E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC1E8 */ cpu->r[1] = _t0;
|
|
/* 022BC1EC */ cpu->r[0] = cpu->lr;
|
|
/* 022BC1F0 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BC1F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BC1F4 */ cpu->r[31] = 0x00000000u;
|
|
/* 022BC1F8 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 022BC1F8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BC1FC */ /* nop */
|
|
/* 022BC200 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC200 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022BC204 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC208 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 022BC208 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022BC20C */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 022BC20C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 022BC210 */ _t6 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BC210 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BC214 */ _t7 = cpu->r[1] + 0x00000044u;
|
|
/* 022BC214 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022BC218 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC218 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 022BC21C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC220 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC220 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[31]);
|
|
/* 022BC224 */ cpu->r[5] = cpu->r[31];
|
|
/* 022BC228 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BC22C */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC22C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 022BC230 */ Gambit_fn_022BC068(cpu);
|
|
/* 022BC234 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BC238 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 022BC238 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[31]);
|
|
/* 022BC23C */ cpu->r[5] = 0x00000001u;
|
|
/* 022BC240 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 022BC240 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 022BC244 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC244 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[31]);
|
|
/* 022BC248 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 022BC24C */ _t14 = cpu->r[1] + 0x00000020u;
|
|
/* 022BC24C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[31]);
|
|
/* 022BC250 */ Gambit_fn_022BC068(cpu);
|
|
/* 022BC254 */ _t15 = cpu->r[30] + 0x00000064u;
|
|
/* 022BC254 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BC258 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC25C */ Gambit_fn_023B38A0(cpu);
|
|
/* 022BC260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC264 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC264 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BC264 */ if (_t17) goto L_022BC268; else goto L_022BC27C;
|
|
L_022BC268: ; // 0x22bc268
|
|
/* 022BC268 */ _t18 = cpu->r[30] + 0x00000064u;
|
|
/* 022BC268 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BC26C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 022BC270 */ Gambit_fn_023B38A0(cpu);
|
|
/* 022BC274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC278 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC278 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BC278 */ if (_t20) goto L_022BC2AC; else goto L_022BC27C;
|
|
L_022BC27C: ; // 0x22bc27c
|
|
/* 022BC27C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BC280 */ Gambit_fn_022BC154(cpu);
|
|
/* 022BC284 */ _t21 = cpu->r[1] + 0x00000038u;
|
|
/* 022BC284 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022BC288 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BC28C */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BC28C */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BC290 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 022BC290 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 022BC294 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 022BC294 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BC298 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BC298 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022BC298 */ if (_t26) goto L_022BC29C; // else: addr-0 trap, fall-through
|
|
L_022BC29C: ; // 0x22bc29c
|
|
/* 022BC29C */ _t27 = cpu->r[1] + 0x00000044u;
|
|
/* 022BC29C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BC2A0 */ cpu->lr = cpu->r[0];
|
|
/* 022BC2A4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022BC2A8 */ return;
|
|
L_022BC2AC: ; // 0x22bc2ac
|
|
/* 022BC2AC */ _t28 = cpu->r[1] + 0x00000038u;
|
|
/* 022BC2AC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022BC2B0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BC2B4 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BC2B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022BC2B8 */ _t30 = cpu->r[1] + 0x00000030u;
|
|
/* 022BC2B8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 022BC2BC */ _t31 = cpu->r[1] + 0x00000028u;
|
|
/* 022BC2BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022BC2C0 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BC2C0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022BC2C0 */ if (_t33) goto L_022BC2C4; // else: addr-0 trap, fall-through
|
|
L_022BC2C4: ; // 0x22bc2c4
|
|
/* 022BC2C4 */ _t34 = cpu->r[1] + 0x00000044u;
|
|
/* 022BC2C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BC2C8 */ cpu->lr = cpu->r[0];
|
|
/* 022BC2CC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022BC2D0 */ return;
|
|
}
|
|
|
|
// fn_022BC2D4 @ 0x22bc2d4
|
|
void Gambit_fn_022BC2D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022BC2D4: ; // 0x22bc2d4
|
|
/* 022BC2D4 */ cpu->r[0] = cpu->lr;
|
|
/* 022BC2D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BC2D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC2D8 */ cpu->r[1] = _t0;
|
|
/* 022BC2DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC2DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BC2E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BC2E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC2E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BC2E8 */ _t3 = cpu->r[31] + 0x000001A4u;
|
|
/* 022BC2E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022BC2EC */ /* nop */
|
|
/* 022BC2F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BC2F4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC2F4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BC2F4 */ if (_t5) goto L_022BC300; else goto L_022BC2F8;
|
|
L_022BC2F8: ; // 0x22bc2f8
|
|
/* 022BC2F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC2FC */ Gambit_fn_022BC1E8(cpu);
|
|
L_022BC300: ; // 0x22bc300
|
|
/* 022BC300 */ _t6 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022BC300 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BC304 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BC304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BC308 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC308 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BC308 */ if (_t8) goto L_022BC314; else goto L_022BC30C;
|
|
L_022BC30C: ; // 0x22bc30c
|
|
/* 022BC30C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC310 */ Gambit_fn_022BC154(cpu);
|
|
L_022BC314: ; // 0x22bc314
|
|
/* 022BC314 */ _t9 = cpu->r[31] + 0x00000194u;
|
|
/* 022BC314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BC318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BC31C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC31C */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BC31C */ if (_t11) goto L_022BC320; else goto L_022BC328;
|
|
L_022BC320: ; // 0x22bc320
|
|
/* 022BC320 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC324 */ Gambit_fn_022BC154(cpu);
|
|
L_022BC328: ; // 0x22bc328
|
|
/* 022BC328 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC328 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BC32C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC32C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BC330 */ cpu->lr = cpu->r[0];
|
|
/* 022BC334 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BC338 */ return;
|
|
}
|
|
|
|
// fn_022BC2D8 @ 0x22bc2d8
|
|
void Gambit_fn_022BC2D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022BC2D8: ; // 0x22bc2d8
|
|
/* 022BC2D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BC2D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC2D8 */ cpu->r[1] = _t0;
|
|
/* 022BC2DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC2DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BC2E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BC2E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC2E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BC2E8 */ _t3 = cpu->r[31] + 0x000001A4u;
|
|
/* 022BC2E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022BC2EC */ /* nop */
|
|
/* 022BC2F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BC2F4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC2F4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BC2F4 */ if (_t5) goto L_022BC300; else goto L_022BC2F8;
|
|
L_022BC2F8: ; // 0x22bc2f8
|
|
/* 022BC2F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC2FC */ Gambit_fn_022BC1E8(cpu);
|
|
L_022BC300: ; // 0x22bc300
|
|
/* 022BC300 */ _t6 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022BC300 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BC304 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BC304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BC308 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC308 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BC308 */ if (_t8) goto L_022BC314; else goto L_022BC30C;
|
|
L_022BC30C: ; // 0x22bc30c
|
|
/* 022BC30C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC310 */ Gambit_fn_022BC154(cpu);
|
|
L_022BC314: ; // 0x22bc314
|
|
/* 022BC314 */ _t9 = cpu->r[31] + 0x00000194u;
|
|
/* 022BC314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BC318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BC31C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC31C */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BC31C */ if (_t11) goto L_022BC320; else goto L_022BC328;
|
|
L_022BC320: ; // 0x22bc320
|
|
/* 022BC320 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC324 */ Gambit_fn_022BC154(cpu);
|
|
L_022BC328: ; // 0x22bc328
|
|
/* 022BC328 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC328 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BC32C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC32C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BC330 */ cpu->lr = cpu->r[0];
|
|
/* 022BC334 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BC338 */ return;
|
|
}
|
|
|
|
// fn_022BC33C @ 0x22bc33c
|
|
void Gambit_fn_022BC33C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BC33C: ; // 0x22bc33c
|
|
/* 022BC33C */ _t0 = cpu->r[3] + 0x00000200u;
|
|
/* 022BC33C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BC340 */ cpu->r[12] = (uint32_t)(-(int32_t)cpu->r[0]);
|
|
/* 022BC344 */ _t1 = ~cpu->r[0];
|
|
/* 022BC344 */ cpu->r[0] = cpu->r[12] & _t1;
|
|
/* 022BC348 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BC34C */ return;
|
|
}
|
|
|
|
// fn_022BC350 @ 0x22bc350
|
|
void Gambit_fn_022BC350(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022BC350: ; // 0x22bc350
|
|
/* 022BC350 */ _t0 = cpu->r[3] + 0x00000194u;
|
|
/* 022BC350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BC354 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022BC358 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BC358 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BC358 */ if (_t2) goto L_022BC368; else goto L_022BC35C;
|
|
L_022BC35C: ; // 0x22bc35c
|
|
/* 022BC35C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC35C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BC35C */ if (_t4) goto L_022BC360; else goto L_022BC370;
|
|
L_022BC360: ; // 0x22bc360
|
|
/* 022BC360 */ cpu->r[3] = cpu->r[3] + 0x00000210u;
|
|
/* 022BC364 */ return;
|
|
L_022BC368: ; // 0x22bc368
|
|
/* 022BC368 */ _t5 = cpu->r[3] + 0x00000064u;
|
|
/* 022BC368 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BC36C */ goto L_023B3AF8;
|
|
L_022BC370: ; // 0x22bc370
|
|
/* 022BC370 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022BC374 */ cpu->r[3] = cpu->r[3] + 0x00006338u;
|
|
/* 022BC378 */ return;
|
|
L_023B3AF8: ; // 0x23b3af8
|
|
/* 023B3AF8 */ _t6 = cpu->r[3] + 0x0000006Cu;
|
|
/* 023B3AF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 023B3AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 023B3B00 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023B3B00 */ _t8 = _t7 & 0x00000001u;
|
|
/* 023B3B00 */ if (_t8) goto L_023B3B04; else goto L_023B3B0C;
|
|
L_023B3B04: ; // 0x23b3b04
|
|
/* 023B3B04 */ cpu->r[3] = cpu->r[3] + 0x00000080u;
|
|
/* 023B3B08 */ return;
|
|
L_023B3B0C: ; // 0x23b3b0c
|
|
/* 023B3B0C */ _t9 = cpu->r[3] + 0x00000048u;
|
|
/* 023B3B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023B3B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 023B3B14 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023B3B14 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023B3B14 */ if (_t11) goto L_023B3B18; else goto L_023B3B20;
|
|
L_023B3B18: ; // 0x23b3b18
|
|
/* 023B3B18 */ cpu->r[3] = cpu->r[3] + 0x0000005Cu;
|
|
/* 023B3B1C */ return;
|
|
L_023B3B20: ; // 0x23b3b20
|
|
/* 023B3B20 */ cpu->r[3] = cpu->r[3] + 0x00000020u;
|
|
/* 023B3B24 */ return;
|
|
}
|
|
|
|
// fn_022BC37C @ 0x22bc37c
|
|
void Gambit_fn_022BC37C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_022BC37C: ; // 0x22bc37c
|
|
/* 022BC37C */ cpu->r[0] = cpu->lr;
|
|
/* 022BC380 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022BC380 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022BC384 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BC384 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022BC384 */ cpu->r[1] = _t1;
|
|
/* 022BC388 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 022BC388 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022BC38C */ _t3 = cpu->r[12] + 0x00000434u;
|
|
/* 022BC38C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BC390 */ cpu->ctr = cpu->r[0];
|
|
/* 022BC394 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC39C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC39C */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BC39C */ if (_t5) goto L_022BC3B8; else goto L_022BC3A0;
|
|
L_022BC3A0: ; // 0x22bc3a0
|
|
/* 022BC3A0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC3A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BC3A4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC3A8 */ cpu->lr = cpu->r[0];
|
|
/* 022BC3AC */ _t7 = cpu->r[12] + 0x0000436Cu;
|
|
/* 022BC3AC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BC3B0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC3B4 */ return;
|
|
L_022BC3B8: ; // 0x22bc3b8
|
|
/* 022BC3B8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC3B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BC3BC */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC3C0 */ cpu->lr = cpu->r[0];
|
|
/* 022BC3C4 */ _t9 = cpu->r[12] + 0x00004370u;
|
|
/* 022BC3C4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BC3C8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC3CC */ return;
|
|
}
|
|
|
|
// fn_022BC384 @ 0x22bc384
|
|
void Gambit_fn_022BC384(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_022BC384: ; // 0x22bc384
|
|
/* 022BC384 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BC384 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC384 */ cpu->r[1] = _t0;
|
|
/* 022BC388 */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 022BC388 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BC38C */ _t2 = cpu->r[12] + 0x00000434u;
|
|
/* 022BC38C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022BC390 */ cpu->ctr = cpu->r[0];
|
|
/* 022BC394 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BC39C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC39C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BC39C */ if (_t4) goto L_022BC3B8; else goto L_022BC3A0;
|
|
L_022BC3A0: ; // 0x22bc3a0
|
|
/* 022BC3A0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC3A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BC3A4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC3A8 */ cpu->lr = cpu->r[0];
|
|
/* 022BC3AC */ _t6 = cpu->r[12] + 0x0000436Cu;
|
|
/* 022BC3AC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BC3B0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC3B4 */ return;
|
|
L_022BC3B8: ; // 0x22bc3b8
|
|
/* 022BC3B8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC3B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BC3BC */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC3C0 */ cpu->lr = cpu->r[0];
|
|
/* 022BC3C4 */ _t8 = cpu->r[12] + 0x00004370u;
|
|
/* 022BC3C4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BC3C8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC3CC */ return;
|
|
}
|
|
|
|
// fn_022BC3D0 @ 0x22bc3d0
|
|
void Gambit_fn_022BC3D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t28, _t29, _t30, _t31, _t32, _t33;
|
|
double _ft26, _ft27;
|
|
|
|
L_022BC3D0: ; // 0x22bc3d0
|
|
/* 022BC3D0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 022BC3D4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022BC3D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC3D4 */ cpu->r[1] = _t0;
|
|
/* 022BC3D8 */ _t1 = cpu->r[12] + 0x00006338u;
|
|
/* 022BC3D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BC3D8 */ cpu->r[12] = _t1;
|
|
/* 022BC3DC */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 022BC3DC */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 022BC3E0 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 022BC3E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BC3E4 */ _t4 = cpu->r[4] + 0x00000004u;
|
|
/* 022BC3E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 022BC3E8 */ _t5 = cpu->r[12] + 0x00000008u;
|
|
/* 022BC3E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BC3EC */ _t6 = cpu->r[4] + 0x00000008u;
|
|
/* 022BC3EC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022BC3F0 */ /* nop */
|
|
/* 022BC3F4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BC3F8 */ /* nop */
|
|
/* 022BC3FC */ _t7 = cpu->r[9] + 0x000042C8u;
|
|
/* 022BC3FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BC400 */ /* nop */
|
|
/* 022BC404 */ _t8 = cpu->r[6] + 0x00000008u;
|
|
/* 022BC404 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BC408 */ _t9 = cpu->r[3] + 0x00000148u;
|
|
/* 022BC408 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BC40C */ /* nop */
|
|
/* 022BC410 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 022BC410 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BC414 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 022BC418 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC418 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BC41C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC41C */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 022BC420 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC420 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[10]);
|
|
/* 022BC424 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BC428 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC428 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 022BC42C */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC42C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BC430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022BC434 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC434 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022BC438 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC438 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BC43C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC43C */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BC43C */ if (_t20) goto L_022BC4A0; else goto L_022BC440;
|
|
L_022BC440: ; // 0x22bc440
|
|
/* 022BC440 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC440 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022BC444 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 022BC448 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022BC44C */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 022BC450 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022BC454 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BC454 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022BC454 */ if (_t23) goto L_022BC458; else goto L_022BC4B8;
|
|
L_022BC458: ; // 0x22bc458
|
|
/* 022BC458 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BC45C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC460 */ _t24 = cpu->r[6] + 0x00004378u;
|
|
/* 022BC460 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BC464 */ _t25 = cpu->r[12] + 0x00004374u;
|
|
/* 022BC464 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BC468 */ _ft26 = sqrt(cpu->f[0]);
|
|
/* 022BC468 */ _ft27 = (double)(int32_t)0x00000001u;
|
|
/* 022BC468 */ cpu->f[10] = _ft27 / _ft26;
|
|
/* 022BC46C */ cpu->f[13] = cpu->f[10] * cpu->f[10];
|
|
/* 022BC470 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 022BC474 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[12]));
|
|
/* 022BC478 */ cpu->f[10] = cpu->f[13] * cpu->f[9];
|
|
/* 022BC47C */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC47C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022BC480 */ /* nop */
|
|
/* 022BC484 */ cpu->f[9] = cpu->f[9] * cpu->f[10];
|
|
/* 022BC488 */ /* nop */
|
|
/* 022BC48C */ cpu->f[13] = cpu->f[9] * cpu->f[1];
|
|
/* 022BC490 */ /* nop */
|
|
/* 022BC494 */ _t29 = cpu->r[4] + 0x00000008u;
|
|
/* 022BC494 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 022BC498 */ /* nop */
|
|
/* 022BC49C */ goto L_022BC4CC;
|
|
L_022BC4A0: ; // 0x22bc4a0
|
|
/* 022BC4A0 */ cpu->f[10] = cpu->f[13] * cpu->f[13];
|
|
/* 022BC4A4 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022BC4A8 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 022BC4AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022BC4B0 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC4B0 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 022BC4B4 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BC4B4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BC4B4 */ if (_t32) goto L_022BC458; else goto L_022BC4B8;
|
|
L_022BC4B8: ; // 0x22bc4b8
|
|
/* 022BC4B8 */ cpu->f[13] = cpu->f[9] * cpu->f[1];
|
|
/* 022BC4BC */ /* nop */
|
|
/* 022BC4C0 */ /* nop */
|
|
/* 022BC4C4 */ _t33 = cpu->r[4] + 0x00000008u;
|
|
/* 022BC4C4 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 022BC4C8 */ /* nop */
|
|
L_022BC4CC: ; // 0x22bc4cc
|
|
/* 022BC4CC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022BC4D0 */ return;
|
|
}
|
|
|
|
// fn_022BC3D4 @ 0x22bc3d4
|
|
void Gambit_fn_022BC3D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t28, _t29, _t30, _t31, _t32, _t33;
|
|
double _ft26, _ft27;
|
|
|
|
L_022BC3D4: ; // 0x22bc3d4
|
|
/* 022BC3D4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022BC3D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC3D4 */ cpu->r[1] = _t0;
|
|
/* 022BC3D8 */ _t1 = cpu->r[12] + 0x00006338u;
|
|
/* 022BC3D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BC3D8 */ cpu->r[12] = _t1;
|
|
/* 022BC3DC */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 022BC3DC */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 022BC3E0 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 022BC3E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BC3E4 */ _t4 = cpu->r[4] + 0x00000004u;
|
|
/* 022BC3E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 022BC3E8 */ _t5 = cpu->r[12] + 0x00000008u;
|
|
/* 022BC3E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BC3EC */ _t6 = cpu->r[4] + 0x00000008u;
|
|
/* 022BC3EC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022BC3F0 */ /* nop */
|
|
/* 022BC3F4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BC3F8 */ /* nop */
|
|
/* 022BC3FC */ _t7 = cpu->r[9] + 0x000042C8u;
|
|
/* 022BC3FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BC400 */ /* nop */
|
|
/* 022BC404 */ _t8 = cpu->r[6] + 0x00000008u;
|
|
/* 022BC404 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BC408 */ _t9 = cpu->r[3] + 0x00000148u;
|
|
/* 022BC408 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BC40C */ /* nop */
|
|
/* 022BC410 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 022BC410 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BC414 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 022BC418 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC418 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BC41C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC41C */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 022BC420 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC420 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[10]);
|
|
/* 022BC424 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BC428 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC428 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 022BC42C */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC42C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BC430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022BC434 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC434 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022BC438 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC438 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BC43C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC43C */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BC43C */ if (_t20) goto L_022BC4A0; else goto L_022BC440;
|
|
L_022BC440: ; // 0x22bc440
|
|
/* 022BC440 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC440 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022BC444 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 022BC448 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022BC44C */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 022BC450 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022BC454 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BC454 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022BC454 */ if (_t23) goto L_022BC458; else goto L_022BC4B8;
|
|
L_022BC458: ; // 0x22bc458
|
|
/* 022BC458 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BC45C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC460 */ _t24 = cpu->r[6] + 0x00004378u;
|
|
/* 022BC460 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BC464 */ _t25 = cpu->r[12] + 0x00004374u;
|
|
/* 022BC464 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BC468 */ _ft26 = sqrt(cpu->f[0]);
|
|
/* 022BC468 */ _ft27 = (double)(int32_t)0x00000001u;
|
|
/* 022BC468 */ cpu->f[10] = _ft27 / _ft26;
|
|
/* 022BC46C */ cpu->f[13] = cpu->f[10] * cpu->f[10];
|
|
/* 022BC470 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 022BC474 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[12]));
|
|
/* 022BC478 */ cpu->f[10] = cpu->f[13] * cpu->f[9];
|
|
/* 022BC47C */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC47C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022BC480 */ /* nop */
|
|
/* 022BC484 */ cpu->f[9] = cpu->f[9] * cpu->f[10];
|
|
/* 022BC488 */ /* nop */
|
|
/* 022BC48C */ cpu->f[13] = cpu->f[9] * cpu->f[1];
|
|
/* 022BC490 */ /* nop */
|
|
/* 022BC494 */ _t29 = cpu->r[4] + 0x00000008u;
|
|
/* 022BC494 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 022BC498 */ /* nop */
|
|
/* 022BC49C */ goto L_022BC4CC;
|
|
L_022BC4A0: ; // 0x22bc4a0
|
|
/* 022BC4A0 */ cpu->f[10] = cpu->f[13] * cpu->f[13];
|
|
/* 022BC4A4 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022BC4A8 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 022BC4AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022BC4B0 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC4B0 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 022BC4B4 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BC4B4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BC4B4 */ if (_t32) goto L_022BC458; else goto L_022BC4B8;
|
|
L_022BC4B8: ; // 0x22bc4b8
|
|
/* 022BC4B8 */ cpu->f[13] = cpu->f[9] * cpu->f[1];
|
|
/* 022BC4BC */ /* nop */
|
|
/* 022BC4C0 */ /* nop */
|
|
/* 022BC4C4 */ _t33 = cpu->r[4] + 0x00000008u;
|
|
/* 022BC4C4 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 022BC4C8 */ /* nop */
|
|
L_022BC4CC: ; // 0x22bc4cc
|
|
/* 022BC4CC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022BC4D0 */ return;
|
|
}
|
|
|
|
// fn_022BC4D4 @ 0x22bc4d4
|
|
void Gambit_fn_022BC4D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022BC4D4: ; // 0x22bc4d4
|
|
/* 022BC4D4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC4D8 */ _t0 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BC4D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022BC4DC */ _t1 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BC4DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BC4E0 */ _t2 = cpu->r[12] + 0x000046F0u;
|
|
/* 022BC4E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BC4E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BC4E8 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BC4E8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BC4E8 */ if (_t4) goto L_022BC4EC; else goto L_022BC4F4;
|
|
L_022BC4EC: ; // 0x22bc4ec
|
|
/* 022BC4EC */ _t5 = cpu->r[12] + 0x000046F0u;
|
|
/* 022BC4EC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BC4F0 */ return;
|
|
L_022BC4F4: ; // 0x22bc4f4
|
|
/* 022BC4F4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC4F8 */ _t6 = cpu->r[12] + 0x0000437Cu;
|
|
/* 022BC4F8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BC4FC */ return;
|
|
}
|
|
|
|
// fn_022BC500 @ 0x22bc500
|
|
void Gambit_fn_022BC500(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BC500: ; // 0x22bc500
|
|
/* 022BC500 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 022BC500 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC500 */ cpu->r[1] = _t0;
|
|
/* 022BC504 */ cpu->r[0] = cpu->lr;
|
|
/* 022BC508 */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 022BC508 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BC50C */ /* nop */
|
|
/* 022BC510 */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 022BC510 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BC514 */ _t3 = cpu->r[1] + 0x00000060u;
|
|
/* 022BC514 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022BC518 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BC518 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 022BC51C */ cpu->r[31] = cpu->r[4];
|
|
/* 022BC520 */ _t5 = cpu->r[1] + 0x00000048u;
|
|
/* 022BC520 */ rbrew_write32(cpu->mem, _t5, cpu->r[28]);
|
|
/* 022BC524 */ _t6 = cpu->r[1] + 0x00000050u;
|
|
/* 022BC524 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 022BC528 */ _t7 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BC528 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022BC52C */ cpu->r[29] = cpu->r[6];
|
|
/* 022BC530 */ _t8 = cpu->r[31] + 0x00000054u;
|
|
/* 022BC530 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BC534 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BC538 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000001u);
|
|
/* 022BC53C */ cpu->r[28] = cpu->r[5];
|
|
/* 022BC540 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC540 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BC540 */ if (_t10) goto L_022BC668; else goto L_022BC544;
|
|
L_022BC544: ; // 0x22bc544
|
|
/* 022BC544 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 022BC544 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BC548 */ _t12 = cpu->r[8] + 0x00000254u;
|
|
/* 022BC548 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BC54C */ cpu->ctr = cpu->r[9];
|
|
/* 022BC550 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC554 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC558 */ /* nop */
|
|
/* 022BC55C */ /* nop */
|
|
/* 022BC560 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 022BC560 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BC564 */ /* nop */
|
|
/* 022BC568 */ _t14 = cpu->r[30] + 0x00000148u;
|
|
/* 022BC568 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BC56C */ /* nop */
|
|
/* 022BC570 */ _t15 = cpu->r[3] + 0x00000008u;
|
|
/* 022BC570 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022BC574 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 022BC574 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BC578 */ cpu->f[0] = cpu->f[11] - cpu->f[12];
|
|
/* 022BC57C */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 022BC57C */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BC580 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC580 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022BC584 */ _t19 = cpu->r[1] + 0x00000028u;
|
|
/* 022BC584 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022BC588 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 022BC588 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BC58C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC58C */ rbrew_write32(cpu->mem, _t21, cpu->r[7]);
|
|
/* 022BC590 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC590 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]);
|
|
/* 022BC594 */ _t23 = cpu->r[9] + 0x00000254u;
|
|
/* 022BC594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BC598 */ cpu->ctr = cpu->r[0];
|
|
/* 022BC59C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BC5A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BC5A4 */ /* nop */
|
|
/* 022BC5A8 */ /* nop */
|
|
/* 022BC5AC */ _t24 = cpu->r[31] + 0x00000090u;
|
|
/* 022BC5AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BC5B0 */ /* nop */
|
|
/* 022BC5B4 */ /* nop */
|
|
/* 022BC5B8 */ _t25 = cpu->r[3] + 0x00000008u;
|
|
/* 022BC5B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BC5BC */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BC5BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022BC5C0 */ cpu->f[12] = cpu->f[0] - cpu->f[13];
|
|
/* 022BC5C4 */ _t27 = cpu->r[1] + 0x00000030u;
|
|
/* 022BC5C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BC5C8 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC5C8 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022BC5CC */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 022BC5CC */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 022BC5D0 */ /* nop */
|
|
/* 022BC5D4 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 022BC5D4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 022BC5D8 */ _t31 = cpu->r[1] + 0x00000034u;
|
|
/* 022BC5D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022BC5DC */ /* nop */
|
|
/* 022BC5E0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022BC5E4 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC5E4 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 022BC5E8 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC5E8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BC5EC */ /* nop */
|
|
/* 022BC5F0 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC5F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022BC5F4 */ /* nop */
|
|
/* 022BC5F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC5FC */ cpu->r[5] = cpu->r[1] + 0x00000038u;
|
|
/* 022BC600 */ cpu->f[31] = fma(cpu->f[0], cpu->f[12], cpu->f[13]);
|
|
/* 022BC604 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022BC608 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 022BC60C */ Gambit_fn_02C69350(cpu);
|
|
/* 022BC610 */ cpu->f[2] = cpu->f[31];
|
|
/* 022BC614 */ Gambit_fn_02C89074(cpu);
|
|
/* 022BC618 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BC61C */ _t35 = cpu->r[12] + 0x00004380u;
|
|
/* 022BC61C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022BC620 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022BC624 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BC624 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022BC624 */ if (_t37) goto L_022BC668; else goto L_022BC628;
|
|
L_022BC628: ; // 0x22bc628
|
|
/* 022BC628 */ _t38 = cpu->r[28] + 0x00000008u;
|
|
/* 022BC628 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022BC62C */ /* nop */
|
|
/* 022BC630 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC630 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022BC634 */ /* nop */
|
|
/* 022BC638 */ cpu->f[0] = cpu->f[0] + cpu->f[13];
|
|
/* 022BC63C */ /* nop */
|
|
/* 022BC640 */ /* nop */
|
|
/* 022BC644 */ /* nop */
|
|
/* 022BC648 */ _t40 = cpu->r[28] + 0x00000008u;
|
|
/* 022BC648 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 022BC64C */ _t41 = cpu->r[29] + 0x00000008u;
|
|
/* 022BC64C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022BC650 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC650 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022BC654 */ /* nop */
|
|
/* 022BC658 */ cpu->f[12] = cpu->f[12] + cpu->f[13];
|
|
/* 022BC65C */ /* nop */
|
|
/* 022BC660 */ /* nop */
|
|
/* 022BC664 */ _t43 = cpu->r[29] + 0x00000008u;
|
|
/* 022BC664 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[12]);
|
|
L_022BC668: ; // 0x22bc668
|
|
/* 022BC668 */ _t44 = cpu->r[1] + 0x00000048u;
|
|
/* 022BC668 */ cpu->r[28] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BC66C */ _t45 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BC66C */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022BC670 */ _t46 = cpu->r[1] + 0x00000060u;
|
|
/* 022BC670 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022BC674 */ _t47 = cpu->r[1] + 0x00000050u;
|
|
/* 022BC674 */ cpu->r[30] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022BC678 */ _t48 = cpu->r[1] + 0x00000058u;
|
|
/* 022BC678 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 022BC67C */ _t49 = cpu->r[1] + 0x00000054u;
|
|
/* 022BC67C */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022BC680 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BC680 */ _t51 = _t50 & 0x00000001u;
|
|
/* 022BC680 */ if (_t51) goto L_022BC684; // else: addr-0 trap, fall-through
|
|
L_022BC684: ; // 0x22bc684
|
|
/* 022BC684 */ _t52 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BC684 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022BC688 */ cpu->lr = cpu->r[0];
|
|
/* 022BC68C */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 022BC690 */ return;
|
|
}
|
|
|
|
// fn_022BC694 @ 0x22bc694
|
|
void Gambit_fn_022BC694(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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, _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;
|
|
double _ft185, _ft186;
|
|
|
|
L_022BC694: ; // 0x22bc694
|
|
/* 022BC694 */ _t0 = cpu->r[1] + 0xFFFFFF28u;
|
|
/* 022BC694 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BC694 */ cpu->r[1] = _t0;
|
|
/* 022BC698 */ /* nop */
|
|
/* 022BC69C */ cpu->r[0] = cpu->lr;
|
|
/* 022BC6A0 */ _t1 = cpu->r[1] + 0x000000C8u;
|
|
/* 022BC6A0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BC6A4 */ /* nop */
|
|
/* 022BC6A8 */ _t2 = cpu->r[1] + 0x000000D0u;
|
|
/* 022BC6A8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BC6AC */ _t3 = cpu->r[1] + 0x000000DCu;
|
|
/* 022BC6AC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BC6B0 */ cpu->r[29] = cpu->r[4];
|
|
/* 022BC6B4 */ cpu->r[6] = 0x101F0000u;
|
|
/* 022BC6B8 */ _t4 = cpu->r[6] + 0x00006338u;
|
|
/* 022BC6B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BC6B8 */ cpu->r[6] = _t4;
|
|
/* 022BC6BC */ _t5 = cpu->r[6] + 0x00000008u;
|
|
/* 022BC6BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BC6C0 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022BC6C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 022BC6C4 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BC6C4 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]);
|
|
/* 022BC6C8 */ _t8 = cpu->r[6] + 0x00000004u;
|
|
/* 022BC6C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BC6CC */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022BC6CC */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 022BC6D0 */ cpu->r[27] = 0x101C0000u;
|
|
/* 022BC6D4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BC6D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[4]);
|
|
/* 022BC6D8 */ _t11 = cpu->r[27] + 0x00006000u;
|
|
/* 022BC6D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BC6D8 */ cpu->r[27] = _t11;
|
|
/* 022BC6DC */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 022BC6DC */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 022BC6E0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022BC6E4 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022BC6E4 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 022BC6E8 */ _t14 = cpu->r[10] + 0x00000274u;
|
|
/* 022BC6E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BC6EC */ _t15 = cpu->r[12] + 0x00005404u;
|
|
/* 022BC6EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BC6F0 */ cpu->r[11] = cpu->r[7] + cpu->r[12];
|
|
/* 022BC6F4 */ _t16 = cpu->r[11] + 0x00000104u;
|
|
/* 022BC6F4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t16);
|
|
/* 022BC6F8 */ _t17 = cpu->r[7] + 0x00000030u;
|
|
/* 022BC6F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BC6FC */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022BC700 */ _t18 = cpu->r[12] + cpu->r[5];
|
|
/* 022BC700 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BC704 */ _t19 = cpu->r[6] + 0x00000008u;
|
|
/* 022BC704 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BC708 */ _t20 = cpu->r[10] + 0x0000000Cu;
|
|
/* 022BC708 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BC70C */ _t21 = cpu->r[10] + 0x00000004u;
|
|
/* 022BC70C */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BC710 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 022BC710 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 022BC714 */ cpu->r[26] = cpu->r[7] - cpu->r[30];
|
|
/* 022BC718 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022BC718 */ rbrew_write32(cpu->mem, _t23, cpu->r[26]);
|
|
/* 022BC71C */ _t24 = cpu->r[10] + 0x0000000Cu;
|
|
/* 022BC71C */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BC720 */ _t25 = cpu->r[1] + 0x00000034u;
|
|
/* 022BC720 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 022BC724 */ cpu->r[31] = cpu->r[10] - cpu->r[12];
|
|
/* 022BC728 */ _t26 = cpu->r[1] + 0x00000030u;
|
|
/* 022BC728 */ rbrew_write32(cpu->mem, _t26, cpu->r[26]);
|
|
/* 022BC72C */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BC72C */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 022BC730 */ cpu->r[28] = cpu->r[3];
|
|
/* 022BC734 */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 022BC734 */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 022BC738 */ goto L_022BC74C;
|
|
L_022BC73C: ; // 0x22bc73c
|
|
/* 022BC73C */ cpu->r[8] = cpu->r[26] + cpu->r[30];
|
|
/* 022BC740 */ _t29 = cpu->r[8] + 0x00000004u;
|
|
/* 022BC740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022BC744 */ cpu->r[26] = cpu->r[0] - cpu->r[30];
|
|
/* 022BC748 */ _t30 = cpu->r[1] + 0x00000030u;
|
|
/* 022BC748 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_022BC74C: ; // 0x22bc74c
|
|
/* 022BC74C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC750 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC750 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BC750 */ if (_t32) goto L_022BC768; else goto L_022BC754;
|
|
L_022BC754: ; // 0x22bc754
|
|
/* 022BC754 */ _t33 = cpu->r[26] + 0x0000001Cu;
|
|
/* 022BC754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BC758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022BC75C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC75C */ _t35 = _t34 & 0x00000001u;
|
|
/* 022BC75C */ if (_t35) goto L_022BC768; else goto L_022BC760;
|
|
L_022BC760: ; // 0x22bc760
|
|
/* 022BC760 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 022BC764 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC764 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022BC764 */ if (_t37) goto L_022BC768; else goto L_022BC73C;
|
|
L_022BC768: ; // 0x22bc768
|
|
/* 022BC768 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC76C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC76C */ _t39 = _t38 & 0x00000001u;
|
|
/* 022BC76C */ if (_t39) goto L_022BC7C0; else goto L_022BC770;
|
|
L_022BC770: ; // 0x22bc770
|
|
/* 022BC770 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC774 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BC778 */ cpu->r[4] = cpu->r[26];
|
|
/* 022BC77C */ cpu->r[3] = cpu->r[28];
|
|
/* 022BC780 */ Gambit_fn_022BC500(cpu);
|
|
L_022BC784: ; // 0x22bc784
|
|
/* 022BC784 */ cpu->r[9] = cpu->r[26] + cpu->r[30];
|
|
/* 022BC788 */ _t40 = cpu->r[9] + 0x00000004u;
|
|
/* 022BC788 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BC78C */ cpu->r[26] = cpu->r[4] - cpu->r[30];
|
|
/* 022BC790 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC794 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC794 */ _t42 = _t41 & 0x00000001u;
|
|
/* 022BC794 */ if (_t42) goto L_022BC7BC; else goto L_022BC798;
|
|
L_022BC798: ; // 0x22bc798
|
|
/* 022BC798 */ _t43 = cpu->r[26] + 0x0000001Cu;
|
|
/* 022BC798 */ cpu->r[7] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BC79C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 022BC7A0 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC7A0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022BC7A0 */ if (_t45) goto L_022BC7B4; else goto L_022BC7A4;
|
|
L_022BC7A4: ; // 0x22bc7a4
|
|
/* 022BC7A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 022BC7A8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC7A8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022BC7A8 */ if (_t47) goto L_022BC7AC; else goto L_022BC784;
|
|
L_022BC7AC: ; // 0x22bc7ac
|
|
/* 022BC7AC */ _t48 = cpu->r[1] + 0x00000030u;
|
|
/* 022BC7AC */ rbrew_write32(cpu->mem, _t48, cpu->r[26]);
|
|
/* 022BC7B0 */ goto L_022BC768;
|
|
L_022BC7B4: ; // 0x22bc7b4
|
|
/* 022BC7B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC7B8 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC7B8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022BC7B8 */ if (_t50) goto L_022BC7BC; else goto L_022BC770;
|
|
L_022BC7BC: ; // 0x22bc7bc
|
|
/* 022BC7BC */ _t51 = cpu->r[1] + 0x00000030u;
|
|
/* 022BC7BC */ rbrew_write32(cpu->mem, _t51, cpu->r[26]);
|
|
L_022BC7C0: ; // 0x22bc7c0
|
|
/* 022BC7C0 */ cpu->r[9] = 0x101C0000u;
|
|
/* 022BC7C4 */ _t52 = cpu->r[27] + 0x00000000u;
|
|
/* 022BC7C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022BC7C8 */ _t53 = cpu->r[9] + 0x0000540Cu;
|
|
/* 022BC7C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022BC7CC */ _t54 = cpu->r[5] + 0x00000274u;
|
|
/* 022BC7CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022BC7D0 */ cpu->r[6] = cpu->r[7] + cpu->r[9];
|
|
/* 022BC7D4 */ _t55 = cpu->r[6] + 0x00000104u;
|
|
/* 022BC7D4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t55);
|
|
/* 022BC7D8 */ _t56 = cpu->r[7] + 0x00000030u;
|
|
/* 022BC7D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022BC7DC */ cpu->r[9] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022BC7E0 */ _t57 = cpu->r[9] + cpu->r[0];
|
|
/* 022BC7E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022BC7E4 */ _t58 = cpu->r[6] + 0x00000008u;
|
|
/* 022BC7E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022BC7E8 */ _t59 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022BC7E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022BC7EC */ _t60 = cpu->r[11] + 0x00000004u;
|
|
/* 022BC7EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022BC7F0 */ _t61 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BC7F0 */ rbrew_write32(cpu->mem, _t61, cpu->r[30]);
|
|
/* 022BC7F4 */ cpu->r[26] = cpu->r[9] - cpu->r[30];
|
|
/* 022BC7F8 */ _t62 = cpu->r[1] + 0x00000038u;
|
|
/* 022BC7F8 */ rbrew_write32(cpu->mem, _t62, cpu->r[26]);
|
|
/* 022BC7FC */ _t63 = cpu->r[11] + 0x0000000Cu;
|
|
/* 022BC7FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022BC800 */ _t64 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BC800 */ rbrew_write32(cpu->mem, _t64, cpu->r[30]);
|
|
/* 022BC804 */ cpu->r[31] = cpu->r[11] - cpu->r[0];
|
|
/* 022BC808 */ _t65 = cpu->r[1] + 0x00000048u;
|
|
/* 022BC808 */ rbrew_write32(cpu->mem, _t65, cpu->r[26]);
|
|
/* 022BC80C */ _t66 = cpu->r[1] + 0x00000044u;
|
|
/* 022BC80C */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 022BC810 */ _t67 = cpu->r[1] + 0x00000040u;
|
|
/* 022BC810 */ rbrew_write32(cpu->mem, _t67, cpu->r[31]);
|
|
/* 022BC814 */ goto L_022BC828;
|
|
L_022BC818: ; // 0x22bc818
|
|
/* 022BC818 */ cpu->r[8] = cpu->r[26] + cpu->r[30];
|
|
/* 022BC81C */ _t68 = cpu->r[8] + 0x00000004u;
|
|
/* 022BC81C */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022BC820 */ cpu->r[26] = cpu->r[0] - cpu->r[30];
|
|
/* 022BC824 */ _t69 = cpu->r[1] + 0x00000048u;
|
|
/* 022BC824 */ rbrew_write32(cpu->mem, _t69, cpu->r[26]);
|
|
L_022BC828: ; // 0x22bc828
|
|
/* 022BC828 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC82C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC82C */ _t71 = _t70 & 0x00000001u;
|
|
/* 022BC82C */ if (_t71) goto L_022BC844; else goto L_022BC830;
|
|
L_022BC830: ; // 0x22bc830
|
|
/* 022BC830 */ _t72 = cpu->r[26] + 0x0000001Cu;
|
|
/* 022BC830 */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022BC834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000002u);
|
|
/* 022BC838 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC838 */ _t74 = _t73 & 0x00000001u;
|
|
/* 022BC838 */ if (_t74) goto L_022BC844; else goto L_022BC83C;
|
|
L_022BC83C: ; // 0x22bc83c
|
|
/* 022BC83C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 022BC840 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC840 */ _t76 = _t75 & 0x00000001u;
|
|
/* 022BC840 */ if (_t76) goto L_022BC844; else goto L_022BC818;
|
|
L_022BC844: ; // 0x22bc844
|
|
/* 022BC844 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC848 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC848 */ _t78 = _t77 & 0x00000001u;
|
|
/* 022BC848 */ if (_t78) goto L_022BC89C; else goto L_022BC84C;
|
|
L_022BC84C: ; // 0x22bc84c
|
|
/* 022BC84C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC850 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BC854 */ cpu->r[4] = cpu->r[26];
|
|
/* 022BC858 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BC85C */ Gambit_fn_022BC500(cpu);
|
|
L_022BC860: ; // 0x22bc860
|
|
/* 022BC860 */ cpu->r[9] = cpu->r[26] + cpu->r[30];
|
|
/* 022BC864 */ _t79 = cpu->r[9] + 0x00000004u;
|
|
/* 022BC864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022BC868 */ cpu->r[26] = cpu->r[0] - cpu->r[30];
|
|
/* 022BC86C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC870 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC870 */ _t81 = _t80 & 0x00000001u;
|
|
/* 022BC870 */ if (_t81) goto L_022BC898; else goto L_022BC874;
|
|
L_022BC874: ; // 0x22bc874
|
|
/* 022BC874 */ _t82 = cpu->r[26] + 0x0000001Cu;
|
|
/* 022BC874 */ cpu->r[10] = rbrew_read32(cpu->mem, _t82);
|
|
/* 022BC878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000002u);
|
|
/* 022BC87C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC87C */ _t84 = _t83 & 0x00000001u;
|
|
/* 022BC87C */ if (_t84) goto L_022BC890; else goto L_022BC880;
|
|
L_022BC880: ; // 0x22bc880
|
|
/* 022BC880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000003u);
|
|
/* 022BC884 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC884 */ _t86 = _t85 & 0x00000001u;
|
|
/* 022BC884 */ if (_t86) goto L_022BC888; else goto L_022BC860;
|
|
L_022BC888: ; // 0x22bc888
|
|
/* 022BC888 */ _t87 = cpu->r[1] + 0x00000048u;
|
|
/* 022BC888 */ rbrew_write32(cpu->mem, _t87, cpu->r[26]);
|
|
/* 022BC88C */ goto L_022BC844;
|
|
L_022BC890: ; // 0x22bc890
|
|
/* 022BC890 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC894 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC894 */ _t89 = _t88 & 0x00000001u;
|
|
/* 022BC894 */ if (_t89) goto L_022BC898; else goto L_022BC84C;
|
|
L_022BC898: ; // 0x22bc898
|
|
/* 022BC898 */ _t90 = cpu->r[1] + 0x00000048u;
|
|
/* 022BC898 */ rbrew_write32(cpu->mem, _t90, cpu->r[26]);
|
|
L_022BC89C: ; // 0x22bc89c
|
|
/* 022BC89C */ cpu->r[11] = 0x101C0000u;
|
|
/* 022BC8A0 */ _t91 = cpu->r[27] + 0x00000000u;
|
|
/* 022BC8A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t91);
|
|
/* 022BC8A4 */ _t92 = cpu->r[11] + 0x00005414u;
|
|
/* 022BC8A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t92);
|
|
/* 022BC8A8 */ _t93 = cpu->r[8] + 0x00000274u;
|
|
/* 022BC8A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022BC8AC */ cpu->r[12] = cpu->r[10] + cpu->r[11];
|
|
/* 022BC8B0 */ _t94 = cpu->r[12] + 0x00000104u;
|
|
/* 022BC8B0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t94);
|
|
/* 022BC8B4 */ _t95 = cpu->r[10] + 0x00000030u;
|
|
/* 022BC8B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 022BC8B8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022BC8BC */ _t96 = cpu->r[6] + cpu->r[0];
|
|
/* 022BC8BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t96);
|
|
/* 022BC8C0 */ _t97 = cpu->r[12] + 0x00000008u;
|
|
/* 022BC8C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022BC8C4 */ _t98 = cpu->r[12] + 0x0000000Cu;
|
|
/* 022BC8C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t98);
|
|
/* 022BC8C8 */ _t99 = cpu->r[12] + 0x00000004u;
|
|
/* 022BC8C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022BC8CC */ _t100 = cpu->r[1] + 0x00000054u;
|
|
/* 022BC8CC */ rbrew_write32(cpu->mem, _t100, cpu->r[30]);
|
|
/* 022BC8D0 */ cpu->r[26] = cpu->r[4] - cpu->r[30];
|
|
/* 022BC8D4 */ _t101 = cpu->r[1] + 0x00000050u;
|
|
/* 022BC8D4 */ rbrew_write32(cpu->mem, _t101, cpu->r[26]);
|
|
/* 022BC8D8 */ _t102 = cpu->r[12] + 0x0000000Cu;
|
|
/* 022BC8D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t102);
|
|
/* 022BC8DC */ _t103 = cpu->r[1] + 0x00000064u;
|
|
/* 022BC8DC */ rbrew_write32(cpu->mem, _t103, cpu->r[30]);
|
|
/* 022BC8E0 */ cpu->r[31] = cpu->r[12] - cpu->r[5];
|
|
/* 022BC8E4 */ _t104 = cpu->r[1] + 0x00000060u;
|
|
/* 022BC8E4 */ rbrew_write32(cpu->mem, _t104, cpu->r[26]);
|
|
/* 022BC8E8 */ _t105 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BC8E8 */ rbrew_write32(cpu->mem, _t105, cpu->r[5]);
|
|
/* 022BC8EC */ _t106 = cpu->r[1] + 0x00000058u;
|
|
/* 022BC8EC */ rbrew_write32(cpu->mem, _t106, cpu->r[31]);
|
|
/* 022BC8F0 */ goto L_022BC904;
|
|
L_022BC8F4: ; // 0x22bc8f4
|
|
/* 022BC8F4 */ cpu->r[4] = cpu->r[26] + cpu->r[30];
|
|
/* 022BC8F8 */ _t107 = cpu->r[4] + 0x00000004u;
|
|
/* 022BC8F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022BC8FC */ cpu->r[26] = cpu->r[9] - cpu->r[30];
|
|
/* 022BC900 */ _t108 = cpu->r[1] + 0x00000060u;
|
|
/* 022BC900 */ rbrew_write32(cpu->mem, _t108, cpu->r[26]);
|
|
L_022BC904: ; // 0x22bc904
|
|
/* 022BC904 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC908 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC908 */ _t110 = _t109 & 0x00000001u;
|
|
/* 022BC908 */ if (_t110) goto L_022BC920; else goto L_022BC90C;
|
|
L_022BC90C: ; // 0x22bc90c
|
|
/* 022BC90C */ _t111 = cpu->r[26] + 0x0000001Cu;
|
|
/* 022BC90C */ cpu->r[12] = rbrew_read32(cpu->mem, _t111);
|
|
/* 022BC910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 022BC914 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC914 */ _t113 = _t112 & 0x00000001u;
|
|
/* 022BC914 */ if (_t113) goto L_022BC920; else goto L_022BC918;
|
|
L_022BC918: ; // 0x22bc918
|
|
/* 022BC918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 022BC91C */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC91C */ _t115 = _t114 & 0x00000001u;
|
|
/* 022BC91C */ if (_t115) goto L_022BC920; else goto L_022BC8F4;
|
|
L_022BC920: ; // 0x22bc920
|
|
/* 022BC920 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC924 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC924 */ _t117 = _t116 & 0x00000001u;
|
|
/* 022BC924 */ if (_t117) goto L_022BC978; else goto L_022BC928;
|
|
L_022BC928: ; // 0x22bc928
|
|
/* 022BC928 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BC92C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BC930 */ cpu->r[4] = cpu->r[26];
|
|
/* 022BC934 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BC938 */ Gambit_fn_022BC500(cpu);
|
|
L_022BC93C: ; // 0x22bc93c
|
|
/* 022BC93C */ cpu->r[7] = cpu->r[26] + cpu->r[30];
|
|
/* 022BC940 */ _t118 = cpu->r[7] + 0x00000004u;
|
|
/* 022BC940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 022BC944 */ cpu->r[26] = cpu->r[0] - cpu->r[30];
|
|
/* 022BC948 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC94C */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC94C */ _t120 = _t119 & 0x00000001u;
|
|
/* 022BC94C */ if (_t120) goto L_022BC974; else goto L_022BC950;
|
|
L_022BC950: ; // 0x22bc950
|
|
/* 022BC950 */ _t121 = cpu->r[26] + 0x0000001Cu;
|
|
/* 022BC950 */ cpu->r[5] = rbrew_read32(cpu->mem, _t121);
|
|
/* 022BC954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000002u);
|
|
/* 022BC958 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC958 */ _t123 = _t122 & 0x00000001u;
|
|
/* 022BC958 */ if (_t123) goto L_022BC96C; else goto L_022BC95C;
|
|
L_022BC95C: ; // 0x22bc95c
|
|
/* 022BC95C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000003u);
|
|
/* 022BC960 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC960 */ _t125 = _t124 & 0x00000001u;
|
|
/* 022BC960 */ if (_t125) goto L_022BC964; else goto L_022BC93C;
|
|
L_022BC964: ; // 0x22bc964
|
|
/* 022BC964 */ _t126 = cpu->r[1] + 0x00000060u;
|
|
/* 022BC964 */ rbrew_write32(cpu->mem, _t126, cpu->r[26]);
|
|
/* 022BC968 */ goto L_022BC920;
|
|
L_022BC96C: ; // 0x22bc96c
|
|
/* 022BC96C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 022BC970 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC970 */ _t128 = _t127 & 0x00000001u;
|
|
/* 022BC970 */ if (_t128) goto L_022BC974; else goto L_022BC928;
|
|
L_022BC974: ; // 0x22bc974
|
|
/* 022BC974 */ _t129 = cpu->r[1] + 0x00000060u;
|
|
/* 022BC974 */ rbrew_write32(cpu->mem, _t129, cpu->r[26]);
|
|
L_022BC978: ; // 0x22bc978
|
|
/* 022BC978 */ cpu->r[10] = 0x101C0000u;
|
|
/* 022BC97C */ _t130 = cpu->r[27] + 0x00000000u;
|
|
/* 022BC97C */ cpu->r[12] = rbrew_read32(cpu->mem, _t130);
|
|
/* 022BC980 */ _t131 = cpu->r[10] + 0x0000541Cu;
|
|
/* 022BC980 */ cpu->r[10] = rbrew_read32(cpu->mem, _t131);
|
|
/* 022BC984 */ _t132 = cpu->r[12] + 0x00000274u;
|
|
/* 022BC984 */ cpu->r[11] = rbrew_read32(cpu->mem, _t132);
|
|
/* 022BC988 */ cpu->r[4] = cpu->r[11] + cpu->r[10];
|
|
/* 022BC98C */ _t133 = cpu->r[4] + 0x00000104u;
|
|
/* 022BC98C */ cpu->r[7] = rbrew_read8(cpu->mem, _t133);
|
|
/* 022BC990 */ _t134 = cpu->r[11] + 0x00000030u;
|
|
/* 022BC990 */ cpu->r[9] = rbrew_read32(cpu->mem, _t134);
|
|
/* 022BC994 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022BC998 */ _t135 = cpu->r[5] + cpu->r[9];
|
|
/* 022BC998 */ cpu->r[10] = rbrew_read32(cpu->mem, _t135);
|
|
/* 022BC99C */ _t136 = cpu->r[10] + 0x00000008u;
|
|
/* 022BC99C */ cpu->r[4] = rbrew_read32(cpu->mem, _t136);
|
|
/* 022BC9A0 */ _t137 = cpu->r[4] + 0x0000000Cu;
|
|
/* 022BC9A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t137);
|
|
/* 022BC9A4 */ _t138 = cpu->r[4] + 0x00000004u;
|
|
/* 022BC9A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t138);
|
|
/* 022BC9A8 */ _t139 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BC9A8 */ rbrew_write32(cpu->mem, _t139, cpu->r[30]);
|
|
/* 022BC9AC */ cpu->r[27] = cpu->r[0] - cpu->r[30];
|
|
/* 022BC9B0 */ _t140 = cpu->r[1] + 0x00000068u;
|
|
/* 022BC9B0 */ rbrew_write32(cpu->mem, _t140, cpu->r[27]);
|
|
/* 022BC9B4 */ _t141 = cpu->r[4] + 0x0000000Cu;
|
|
/* 022BC9B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t141);
|
|
/* 022BC9B8 */ _t142 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BC9B8 */ rbrew_write32(cpu->mem, _t142, cpu->r[30]);
|
|
/* 022BC9BC */ cpu->r[31] = cpu->r[4] - cpu->r[6];
|
|
/* 022BC9C0 */ _t143 = cpu->r[1] + 0x00000078u;
|
|
/* 022BC9C0 */ rbrew_write32(cpu->mem, _t143, cpu->r[27]);
|
|
/* 022BC9C4 */ _t144 = cpu->r[1] + 0x00000074u;
|
|
/* 022BC9C4 */ rbrew_write32(cpu->mem, _t144, cpu->r[6]);
|
|
/* 022BC9C8 */ _t145 = cpu->r[1] + 0x00000070u;
|
|
/* 022BC9C8 */ rbrew_write32(cpu->mem, _t145, cpu->r[31]);
|
|
/* 022BC9CC */ goto L_022BC9E0;
|
|
L_022BC9D0: ; // 0x22bc9d0
|
|
/* 022BC9D0 */ cpu->r[10] = cpu->r[27] + cpu->r[30];
|
|
/* 022BC9D4 */ _t146 = cpu->r[10] + 0x00000004u;
|
|
/* 022BC9D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t146);
|
|
/* 022BC9D8 */ cpu->r[27] = cpu->r[8] - cpu->r[30];
|
|
/* 022BC9DC */ _t147 = cpu->r[1] + 0x00000078u;
|
|
/* 022BC9DC */ rbrew_write32(cpu->mem, _t147, cpu->r[27]);
|
|
L_022BC9E0: ; // 0x22bc9e0
|
|
/* 022BC9E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 022BC9E4 */ _t148 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC9E4 */ _t149 = _t148 & 0x00000001u;
|
|
/* 022BC9E4 */ if (_t149) goto L_022BC9FC; else goto L_022BC9E8;
|
|
L_022BC9E8: ; // 0x22bc9e8
|
|
/* 022BC9E8 */ _t150 = cpu->r[27] + 0x0000001Cu;
|
|
/* 022BC9E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t150);
|
|
/* 022BC9EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 022BC9F0 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC9F0 */ _t152 = _t151 & 0x00000001u;
|
|
/* 022BC9F0 */ if (_t152) goto L_022BC9FC; else goto L_022BC9F4;
|
|
L_022BC9F4: ; // 0x22bc9f4
|
|
/* 022BC9F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 022BC9F8 */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BC9F8 */ _t154 = _t153 & 0x00000001u;
|
|
/* 022BC9F8 */ if (_t154) goto L_022BC9FC; else goto L_022BC9D0;
|
|
L_022BC9FC: ; // 0x22bc9fc
|
|
/* 022BC9FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 022BCA00 */ _t155 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BCA00 */ _t156 = _t155 & 0x00000001u;
|
|
/* 022BCA00 */ if (_t156) goto L_022BCA54; else goto L_022BCA04;
|
|
L_022BCA04: ; // 0x22bca04
|
|
/* 022BCA04 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BCA08 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BCA0C */ cpu->r[4] = cpu->r[27];
|
|
/* 022BCA10 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BCA14 */ Gambit_fn_022BC500(cpu);
|
|
L_022BCA18: ; // 0x22bca18
|
|
/* 022BCA18 */ cpu->r[6] = cpu->r[27] + cpu->r[30];
|
|
/* 022BCA1C */ _t157 = cpu->r[6] + 0x00000004u;
|
|
/* 022BCA1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t157);
|
|
/* 022BCA20 */ cpu->r[27] = cpu->r[0] - cpu->r[30];
|
|
/* 022BCA24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 022BCA28 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BCA28 */ _t159 = _t158 & 0x00000001u;
|
|
/* 022BCA28 */ if (_t159) goto L_022BCA50; else goto L_022BCA2C;
|
|
L_022BCA2C: ; // 0x22bca2c
|
|
/* 022BCA2C */ _t160 = cpu->r[27] + 0x0000001Cu;
|
|
/* 022BCA2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t160);
|
|
/* 022BCA30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000002u);
|
|
/* 022BCA34 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BCA34 */ _t162 = _t161 & 0x00000001u;
|
|
/* 022BCA34 */ if (_t162) goto L_022BCA48; else goto L_022BCA38;
|
|
L_022BCA38: ; // 0x22bca38
|
|
/* 022BCA38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000003u);
|
|
/* 022BCA3C */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BCA3C */ _t164 = _t163 & 0x00000001u;
|
|
/* 022BCA3C */ if (_t164) goto L_022BCA40; else goto L_022BCA18;
|
|
L_022BCA40: ; // 0x22bca40
|
|
/* 022BCA40 */ _t165 = cpu->r[1] + 0x00000078u;
|
|
/* 022BCA40 */ rbrew_write32(cpu->mem, _t165, cpu->r[27]);
|
|
/* 022BCA44 */ goto L_022BC9FC;
|
|
L_022BCA48: ; // 0x22bca48
|
|
/* 022BCA48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 022BCA4C */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BCA4C */ _t167 = _t166 & 0x00000001u;
|
|
/* 022BCA4C */ if (_t167) goto L_022BCA50; else goto L_022BCA04;
|
|
L_022BCA50: ; // 0x22bca50
|
|
/* 022BCA50 */ _t168 = cpu->r[1] + 0x00000078u;
|
|
/* 022BCA50 */ rbrew_write32(cpu->mem, _t168, cpu->r[27]);
|
|
L_022BCA54: ; // 0x22bca54
|
|
/* 022BCA54 */ cpu->r[4] = 0x101F0000u;
|
|
/* 022BCA58 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BCA5C */ cpu->r[5] = cpu->r[1] + 0x00000080u;
|
|
/* 022BCA60 */ cpu->r[4] = cpu->r[4] + 0x00006350u;
|
|
/* 022BCA64 */ Gambit_fn_02C692EC(cpu);
|
|
/* 022BCA68 */ _t169 = cpu->r[1] + 0x00000084u;
|
|
/* 022BCA68 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 022BCA6C */ cpu->f[11] = cpu->f[6] * cpu->f[6];
|
|
/* 022BCA70 */ _t170 = cpu->r[1] + 0x00000080u;
|
|
/* 022BCA70 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 022BCA74 */ cpu->f[0] = fma(cpu->f[8], cpu->f[8], cpu->f[11]);
|
|
/* 022BCA78 */ _t171 = cpu->r[1] + 0x00000088u;
|
|
/* 022BCA78 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 022BCA7C */ cpu->r[9] = 0x10060000u;
|
|
/* 022BCA80 */ cpu->f[0] = fma(cpu->f[11], cpu->f[11], cpu->f[0]);
|
|
/* 022BCA84 */ _t172 = cpu->r[9] + 0x000042C8u;
|
|
/* 022BCA84 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 022BCA88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 022BCA8C */ _t173 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BCA8C */ _t174 = _t173 & 0x00000001u;
|
|
/* 022BCA8C */ if (_t174) goto L_022BCAC0; else goto L_022BCA90;
|
|
L_022BCA90: ; // 0x22bca90
|
|
/* 022BCA90 */ _t175 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCA90 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 022BCA94 */ _t176 = cpu->r[1] + 0x00000014u;
|
|
/* 022BCA94 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 022BCA98 */ _t177 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCA98 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 022BCA9C */ cpu->f[10] = cpu->f[8] * cpu->f[13];
|
|
/* 022BCAA0 */ _t178 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCAA0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 022BCAA4 */ cpu->f[13] = fma(cpu->f[12], cpu->f[7], -(cpu->f[10]));
|
|
/* 022BCAA8 */ _t179 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BCAA8 */ rbrew_write_f32(cpu->mem, _t179, cpu->f[12]);
|
|
/* 022BCAAC */ /* nop */
|
|
/* 022BCAB0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 022BCAB4 */ _t180 = cpu->r[1] + 0x00000090u;
|
|
/* 022BCAB4 */ rbrew_write_f32(cpu->mem, _t180, cpu->f[8]);
|
|
/* 022BCAB8 */ _t181 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BCAB8 */ _t182 = _t181 & 0x00000001u;
|
|
/* 022BCAB8 */ if (_t182) goto L_022BCABC; else goto L_022BCB3C;
|
|
L_022BCABC: ; // 0x22bcabc
|
|
/* 022BCABC */ goto L_022BCB24;
|
|
L_022BCAC0: ; // 0x22bcac0
|
|
/* 022BCAC0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCAC4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BCAC8 */ _t183 = cpu->r[12] + 0x00004378u;
|
|
/* 022BCAC8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 022BCACC */ _t184 = cpu->r[9] + 0x00004374u;
|
|
/* 022BCACC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 022BCAD0 */ _ft185 = sqrt(cpu->f[0]);
|
|
/* 022BCAD0 */ _ft186 = (double)(int32_t)0x00000001u;
|
|
/* 022BCAD0 */ cpu->f[6] = _ft186 / _ft185;
|
|
/* 022BCAD4 */ cpu->f[7] = cpu->f[6] * cpu->f[6];
|
|
/* 022BCAD8 */ cpu->f[9] = cpu->f[6] * cpu->f[10];
|
|
/* 022BCADC */ cpu->f[7] = -fma(cpu->f[7], cpu->f[0], -(cpu->f[11]));
|
|
/* 022BCAE0 */ cpu->f[6] = cpu->f[7] * cpu->f[9];
|
|
/* 022BCAE4 */ _t187 = cpu->r[1] + 0x00000088u;
|
|
/* 022BCAE4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t187);
|
|
/* 022BCAE8 */ _t188 = cpu->r[1] + 0x00000014u;
|
|
/* 022BCAE8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 022BCAEC */ cpu->f[11] = cpu->f[11] * cpu->f[6];
|
|
/* 022BCAF0 */ _t189 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCAF0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 022BCAF4 */ _t190 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCAF4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t190);
|
|
/* 022BCAF8 */ cpu->f[10] = cpu->f[8] * cpu->f[13];
|
|
/* 022BCAFC */ _t191 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCAFC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 022BCB00 */ /* nop */
|
|
/* 022BCB04 */ cpu->f[13] = fma(cpu->f[12], cpu->f[7], -(cpu->f[10]));
|
|
/* 022BCB08 */ _t192 = cpu->r[1] + 0x00000088u;
|
|
/* 022BCB08 */ rbrew_write_f32(cpu->mem, _t192, cpu->f[11]);
|
|
/* 022BCB0C */ /* nop */
|
|
/* 022BCB10 */ _t193 = cpu->r[1] + 0x00000090u;
|
|
/* 022BCB10 */ rbrew_write_f32(cpu->mem, _t193, cpu->f[8]);
|
|
/* 022BCB14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 022BCB18 */ /* nop */
|
|
/* 022BCB1C */ _t194 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BCB1C */ rbrew_write_f32(cpu->mem, _t194, cpu->f[12]);
|
|
/* 022BCB20 */ _t195 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BCB20 */ _t196 = _t195 & 0x00000001u;
|
|
/* 022BCB20 */ if (_t196) goto L_022BCB24; else goto L_022BCB3C;
|
|
L_022BCB24: ; // 0x22bcb24
|
|
/* 022BCB24 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCB28 */ cpu->f[11] = -cpu->f[11];
|
|
/* 022BCB2C */ _t197 = cpu->r[12] + 0x00004384u;
|
|
/* 022BCB2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 022BCB30 */ /* nop */
|
|
/* 022BCB34 */ _t198 = cpu->r[1] + 0x00000088u;
|
|
/* 022BCB34 */ rbrew_write_f32(cpu->mem, _t198, cpu->f[11]);
|
|
/* 022BCB38 */ /* nop */
|
|
L_022BCB3C: ; // 0x22bcb3c
|
|
/* 022BCB3C */ cpu->r[8] = 0x10060000u;
|
|
/* 022BCB40 */ _t199 = cpu->r[8] + 0x0000437Cu;
|
|
/* 022BCB40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 022BCB44 */ /* nop */
|
|
/* 022BCB48 */ /* nop */
|
|
/* 022BCB4C */ _t200 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BCB4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t200);
|
|
/* 022BCB50 */ cpu->f[13] = cpu->f[11] * cpu->f[12];
|
|
/* 022BCB54 */ _t201 = cpu->r[1] + 0x000000A4u;
|
|
/* 022BCB54 */ cpu->r[5] = rbrew_read32(cpu->mem, _t201);
|
|
/* 022BCB58 */ _t202 = cpu->r[1] + 0x00000094u;
|
|
/* 022BCB58 */ rbrew_write32(cpu->mem, _t202, cpu->r[4]);
|
|
/* 022BCB5C */ _t203 = cpu->r[1] + 0x000000A8u;
|
|
/* 022BCB5C */ rbrew_write_f32(cpu->mem, _t203, cpu->f[13]);
|
|
/* 022BCB60 */ _t204 = cpu->r[1] + 0x000000A8u;
|
|
/* 022BCB60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t204);
|
|
/* 022BCB64 */ _t205 = cpu->r[1] + 0x00000098u;
|
|
/* 022BCB64 */ rbrew_write32(cpu->mem, _t205, cpu->r[5]);
|
|
/* 022BCB68 */ cpu->r[3] = cpu->r[1] + 0x00000094u;
|
|
/* 022BCB6C */ _t206 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022BCB6C */ rbrew_write32(cpu->mem, _t206, cpu->r[0]);
|
|
/* 022BCB70 */ Gambit_fn_02C69350(cpu);
|
|
/* 022BCB74 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 022BCB78 */ _t207 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BCB78 */ _t208 = _t207 & 0x00000001u;
|
|
/* 022BCB78 */ if (_t208) goto L_022BCB7C; else goto L_022BCBB8;
|
|
L_022BCB7C: ; // 0x22bcb7c
|
|
/* 022BCB7C */ _t209 = cpu->r[29] + 0x00000000u;
|
|
/* 022BCB7C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t209);
|
|
/* 022BCB80 */ _t210 = cpu->r[1] + 0x00000094u;
|
|
/* 022BCB80 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 022BCB84 */ cpu->f[8] = cpu->f[10] - cpu->f[7];
|
|
/* 022BCB88 */ _t211 = cpu->r[1] + 0x00000098u;
|
|
/* 022BCB88 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t211);
|
|
/* 022BCB8C */ cpu->f[11] = cpu->f[7] + cpu->f[8];
|
|
/* 022BCB90 */ _t212 = cpu->r[29] + 0x00000004u;
|
|
/* 022BCB90 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t212);
|
|
/* 022BCB94 */ cpu->f[6] = cpu->f[9] - cpu->f[7];
|
|
/* 022BCB98 */ cpu->f[10] = cpu->f[7] + cpu->f[6];
|
|
/* 022BCB9C */ _t213 = cpu->r[29] + 0x00000008u;
|
|
/* 022BCB9C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t213);
|
|
/* 022BCBA0 */ _t214 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022BCBA0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t214);
|
|
/* 022BCBA4 */ cpu->f[12] = cpu->f[6] - cpu->f[7];
|
|
/* 022BCBA8 */ _t215 = cpu->r[29] + 0x00000000u;
|
|
/* 022BCBA8 */ rbrew_write_f32(cpu->mem, _t215, cpu->f[11]);
|
|
/* 022BCBAC */ cpu->f[8] = cpu->f[7] + cpu->f[12];
|
|
/* 022BCBB0 */ _t216 = cpu->r[29] + 0x00000004u;
|
|
/* 022BCBB0 */ rbrew_write_f32(cpu->mem, _t216, cpu->f[10]);
|
|
/* 022BCBB4 */ _t217 = cpu->r[29] + 0x00000008u;
|
|
/* 022BCBB4 */ rbrew_write_f32(cpu->mem, _t217, cpu->f[8]);
|
|
L_022BCBB8: ; // 0x22bcbb8
|
|
/* 022BCBB8 */ /* nop */
|
|
/* 022BCBBC */ _t218 = cpu->r[1] + 0x000000D0u;
|
|
/* 022BCBBC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 022BCBC0 */ _t219 = cpu->r[1] + 0x000000C8u;
|
|
/* 022BCBC0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t219);
|
|
/* 022BCBC4 */ _t220 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BCBC4 */ _t221 = _t220 & 0x00000001u;
|
|
/* 022BCBC4 */ if (_t221) goto L_022BCBC8; // else: addr-0 trap, fall-through
|
|
L_022BCBC8: ; // 0x22bcbc8
|
|
/* 022BCBC8 */ _t222 = cpu->r[1] + 0x000000DCu;
|
|
/* 022BCBC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t222);
|
|
/* 022BCBCC */ cpu->lr = cpu->r[0];
|
|
/* 022BCBD0 */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 022BCBD4 */ return;
|
|
}
|
|
|
|
// fn_022BCBD8 @ 0x22bcbd8
|
|
void Gambit_fn_022BCBD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t12, _t13, _t14, _t15, _t16;
|
|
double _ft10, _ft11;
|
|
|
|
L_0204ECF0: ; // 0x204ecf0
|
|
/* 0204ECF0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0204ECF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0204ECF4 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0204ECF4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0204ECF8 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 0204ECFC */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 0204ECFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0204ED00 */ cpu->f[10] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 0204ED04 */ cpu->f[11] = cpu->f[1] * cpu->f[1];
|
|
/* 0204ED08 */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 0204ED0C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[11]);
|
|
/* 0204ED10 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0204ED10 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0204ED10 */ if (_t4) goto L_0204ED1C; else goto L_0204ED14;
|
|
L_0204ED14: ; // 0x204ed14
|
|
/* 0204ED14 */ cpu->r[3] = 0x00000000u;
|
|
/* 0204ED18 */ return;
|
|
L_0204ED1C: ; // 0x204ed1c
|
|
/* 0204ED1C */ cpu->r[12] = 0x10000000u;
|
|
/* 0204ED20 */ _t5 = cpu->r[12] + 0x00005B24u;
|
|
/* 0204ED20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0204ED24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 0204ED28 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0204ED28 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0204ED28 */ if (_t7) goto L_0204ED2C; else goto L_0204ED50;
|
|
L_0204ED2C: ; // 0x204ed2c
|
|
/* 0204ED2C */ cpu->r[12] = 0x10000000u;
|
|
/* 0204ED30 */ _t8 = cpu->r[12] + 0x00005B2Cu;
|
|
/* 0204ED30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0204ED34 */ cpu->r[12] = 0x10000000u;
|
|
/* 0204ED38 */ _t9 = cpu->r[12] + 0x00005B28u;
|
|
/* 0204ED38 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0204ED3C */ _ft10 = sqrt(cpu->f[9]);
|
|
/* 0204ED3C */ _ft11 = (double)(int32_t)0x00000001u;
|
|
/* 0204ED3C */ cpu->f[0] = _ft11 / _ft10;
|
|
/* 0204ED40 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 0204ED44 */ cpu->f[11] = cpu->f[0] * cpu->f[12];
|
|
/* 0204ED48 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[9], -(cpu->f[13]));
|
|
/* 0204ED4C */ cpu->f[0] = cpu->f[10] * cpu->f[11];
|
|
L_0204ED50: ; // 0x204ed50
|
|
/* 0204ED50 */ cpu->f[13] = cpu->f[0] * cpu->f[9];
|
|
/* 0204ED54 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 0204ED54 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0204ED58 */ cpu->f[8] = cpu->f[1] / cpu->f[13];
|
|
/* 0204ED5C */ /* nop */
|
|
/* 0204ED60 */ /* nop */
|
|
/* 0204ED64 */ cpu->f[9] = cpu->f[9] * cpu->f[8];
|
|
/* 0204ED68 */ /* nop */
|
|
/* 0204ED6C */ _t13 = cpu->r[3] + 0x00000008u;
|
|
/* 0204ED6C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[9]);
|
|
/* 0204ED70 */ cpu->r[3] = 0x00000001u;
|
|
/* 0204ED74 */ return;
|
|
L_022BCBD8: ; // 0x22bcbd8
|
|
/* 022BCBD8 */ /* nop */
|
|
/* 022BCBDC */ /* nop */
|
|
/* 022BCBE0 */ /* nop */
|
|
/* 022BCBE4 */ /* nop */
|
|
/* 022BCBE8 */ _t14 = cpu->r[5] + 0x00000008u;
|
|
/* 022BCBE8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BCBEC */ _t15 = cpu->r[6] + 0x00000008u;
|
|
/* 022BCBEC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022BCBF0 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022BCBF4 */ cpu->r[3] = cpu->r[4];
|
|
/* 022BCBF8 */ _t16 = cpu->r[4] + 0x00000008u;
|
|
/* 022BCBF8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 022BCBFC */ goto L_0204ECF0;
|
|
}
|
|
|
|
// fn_022BCC00 @ 0x22bcc00
|
|
void Gambit_fn_022BCC00(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BCC00: ; // 0x22bcc00
|
|
/* 022BCC00 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCC04 */ _t0 = cpu->r[12] + 0x0000437Cu;
|
|
/* 022BCC04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022BCC08 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCC0C */ cpu->f[0] = cpu->f[1] / cpu->f[0];
|
|
/* 022BCC10 */ _t1 = cpu->r[12] + 0x00004388u;
|
|
/* 022BCC10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022BCC14 */ cpu->f[1] = cpu->f[13] * cpu->f[0];
|
|
/* 022BCC18 */ return;
|
|
}
|
|
|
|
// fn_022BCC1C @ 0x22bcc1c
|
|
void Gambit_fn_022BCC1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23;
|
|
double _ft20, _ft21;
|
|
|
|
L_022BCC1C: ; // 0x22bcc1c
|
|
/* 022BCC1C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022BCC1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BCC1C */ cpu->r[1] = _t0;
|
|
/* 022BCC20 */ _t1 = cpu->r[5] + 0x00000008u;
|
|
/* 022BCC20 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022BCC24 */ _t2 = cpu->r[5] + 0x00000000u;
|
|
/* 022BCC24 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BCC28 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCC28 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[9]);
|
|
/* 022BCC2C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCC30 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCC30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BCC34 */ _t5 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BCC34 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BCC38 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCC38 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[8]);
|
|
/* 022BCC3C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCC3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BCC40 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BCC40 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022BCC44 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BCC44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BCC48 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 022BCC48 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022BCC4C */ _t11 = cpu->r[4] + 0x00000004u;
|
|
/* 022BCC4C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022BCC50 */ _t12 = cpu->r[4] + 0x00000004u;
|
|
/* 022BCC50 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BCC54 */ _t13 = cpu->r[4] + 0x00000008u;
|
|
/* 022BCC54 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 022BCC58 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 022BCC5C */ _t14 = cpu->r[4] + 0x00000000u;
|
|
/* 022BCC5C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BCC60 */ _t15 = cpu->r[4] + 0x00000008u;
|
|
/* 022BCC60 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022BCC64 */ cpu->f[13] = fma(cpu->f[8], cpu->f[8], cpu->f[11]);
|
|
/* 022BCC68 */ cpu->f[9] = fma(cpu->f[12], cpu->f[12], cpu->f[13]);
|
|
/* 022BCC6C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 022BCC70 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BCC70 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BCC70 */ if (_t17) goto L_022BCC74; else goto L_022BCCB0;
|
|
L_022BCC74: ; // 0x22bcc74
|
|
/* 022BCC74 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BCC78 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCC7C */ _t18 = cpu->r[9] + 0x00004374u;
|
|
/* 022BCC7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BCC80 */ _t19 = cpu->r[12] + 0x00004378u;
|
|
/* 022BCC80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BCC84 */ _ft20 = sqrt(cpu->f[9]);
|
|
/* 022BCC84 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 022BCC84 */ cpu->f[10] = _ft21 / _ft20;
|
|
/* 022BCC88 */ cpu->f[11] = cpu->f[10] * cpu->f[10];
|
|
/* 022BCC8C */ cpu->f[8] = cpu->f[10] * cpu->f[13];
|
|
/* 022BCC90 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[9], -(cpu->f[12]));
|
|
/* 022BCC94 */ cpu->f[10] = cpu->f[11] * cpu->f[8];
|
|
/* 022BCC98 */ _t22 = cpu->r[4] + 0x00000008u;
|
|
/* 022BCC98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BCC9C */ /* nop */
|
|
/* 022BCCA0 */ cpu->f[0] = cpu->f[0] * cpu->f[10];
|
|
/* 022BCCA4 */ /* nop */
|
|
/* 022BCCA8 */ _t23 = cpu->r[4] + 0x00000008u;
|
|
/* 022BCCA8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 022BCCAC */ /* nop */
|
|
L_022BCCB0: ; // 0x22bccb0
|
|
/* 022BCCB0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022BCCB4 */ return;
|
|
}
|
|
|
|
// fn_022BCCB8 @ 0x22bccb8
|
|
void Gambit_fn_022BCCB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
double _ft12, _ft13;
|
|
|
|
L_022BCCB8: ; // 0x22bccb8
|
|
/* 022BCCB8 */ cpu->r[0] = cpu->lr;
|
|
/* 022BCCBC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BCCBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BCCBC */ cpu->r[1] = _t0;
|
|
/* 022BCCC0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022BCCC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BCCC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BCCC8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCCC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BCCCC */ _t3 = cpu->r[31] + 0x00000070u;
|
|
/* 022BCCCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BCCD0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BCCD4 */ cpu->r[4] = cpu->r[11] + 0x000000A0u;
|
|
/* 022BCCD8 */ Gambit_fn_0204EFD8(cpu);
|
|
/* 022BCCDC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BCCDC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022BCCE0 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCCE0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BCCE4 */ cpu->f[0] = cpu->f[8] * cpu->f[8];
|
|
/* 022BCCE8 */ cpu->f[7] = fma(cpu->f[10], cpu->f[10], cpu->f[0]);
|
|
/* 022BCCEC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCCEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BCCF0 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BCCF4 */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[7]);
|
|
/* 022BCCF8 */ _t7 = cpu->r[11] + 0x000042C8u;
|
|
/* 022BCCF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BCCFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022BCD00 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BCD00 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022BCD00 */ if (_t9) goto L_022BCD04; else goto L_022BCD40;
|
|
L_022BCD04: ; // 0x22bcd04
|
|
/* 022BCD04 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCD08 */ _t10 = cpu->r[12] + 0x00004374u;
|
|
/* 022BCD08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BCD0C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCD10 */ _t11 = cpu->r[12] + 0x00004378u;
|
|
/* 022BCD10 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BCD14 */ _ft12 = sqrt(cpu->f[11]);
|
|
/* 022BCD14 */ _ft13 = (double)(int32_t)0x00000001u;
|
|
/* 022BCD14 */ cpu->f[0] = _ft13 / _ft12;
|
|
/* 022BCD18 */ cpu->f[8] = cpu->f[0] * cpu->f[0];
|
|
/* 022BCD1C */ cpu->f[10] = cpu->f[0] * cpu->f[13];
|
|
/* 022BCD20 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[11], -(cpu->f[12]));
|
|
/* 022BCD24 */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 022BCD28 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCD28 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BCD2C */ /* nop */
|
|
/* 022BCD30 */ cpu->f[11] = cpu->f[11] * cpu->f[0];
|
|
/* 022BCD34 */ /* nop */
|
|
/* 022BCD38 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCD38 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[11]);
|
|
/* 022BCD3C */ /* nop */
|
|
L_022BCD40: ; // 0x22bcd40
|
|
/* 022BCD40 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCD40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BCD44 */ _t17 = cpu->r[31] + 0x00000070u;
|
|
/* 022BCD44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BCD48 */ _t18 = cpu->r[11] + 0x000000A0u;
|
|
/* 022BCD48 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022BCD4C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BCD4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BCD50 */ _t20 = cpu->r[11] + 0x000000A4u;
|
|
/* 022BCD50 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022BCD54 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCD54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BCD58 */ _t22 = cpu->r[11] + 0x000000A8u;
|
|
/* 022BCD58 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 022BCD5C */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCD5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BCD60 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022BCD60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BCD64 */ cpu->lr = cpu->r[0];
|
|
/* 022BCD68 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BCD6C */ return;
|
|
}
|
|
|
|
// fn_022BCCBC @ 0x22bccbc
|
|
void Gambit_fn_022BCCBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
double _ft12, _ft13;
|
|
|
|
L_022BCCBC: ; // 0x22bccbc
|
|
/* 022BCCBC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BCCBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BCCBC */ cpu->r[1] = _t0;
|
|
/* 022BCCC0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022BCCC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BCCC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BCCC8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCCC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BCCCC */ _t3 = cpu->r[31] + 0x00000070u;
|
|
/* 022BCCCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BCCD0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BCCD4 */ cpu->r[4] = cpu->r[11] + 0x000000A0u;
|
|
/* 022BCCD8 */ Gambit_fn_0204EFD8(cpu);
|
|
/* 022BCCDC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BCCDC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022BCCE0 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCCE0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BCCE4 */ cpu->f[0] = cpu->f[8] * cpu->f[8];
|
|
/* 022BCCE8 */ cpu->f[7] = fma(cpu->f[10], cpu->f[10], cpu->f[0]);
|
|
/* 022BCCEC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCCEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BCCF0 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BCCF4 */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[7]);
|
|
/* 022BCCF8 */ _t7 = cpu->r[11] + 0x000042C8u;
|
|
/* 022BCCF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BCCFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022BCD00 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BCD00 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022BCD00 */ if (_t9) goto L_022BCD04; else goto L_022BCD40;
|
|
L_022BCD04: ; // 0x22bcd04
|
|
/* 022BCD04 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCD08 */ _t10 = cpu->r[12] + 0x00004374u;
|
|
/* 022BCD08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BCD0C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCD10 */ _t11 = cpu->r[12] + 0x00004378u;
|
|
/* 022BCD10 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BCD14 */ _ft12 = sqrt(cpu->f[11]);
|
|
/* 022BCD14 */ _ft13 = (double)(int32_t)0x00000001u;
|
|
/* 022BCD14 */ cpu->f[0] = _ft13 / _ft12;
|
|
/* 022BCD18 */ cpu->f[8] = cpu->f[0] * cpu->f[0];
|
|
/* 022BCD1C */ cpu->f[10] = cpu->f[0] * cpu->f[13];
|
|
/* 022BCD20 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[11], -(cpu->f[12]));
|
|
/* 022BCD24 */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 022BCD28 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCD28 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BCD2C */ /* nop */
|
|
/* 022BCD30 */ cpu->f[11] = cpu->f[11] * cpu->f[0];
|
|
/* 022BCD34 */ /* nop */
|
|
/* 022BCD38 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCD38 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[11]);
|
|
/* 022BCD3C */ /* nop */
|
|
L_022BCD40: ; // 0x22bcd40
|
|
/* 022BCD40 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCD40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BCD44 */ _t17 = cpu->r[31] + 0x00000070u;
|
|
/* 022BCD44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BCD48 */ _t18 = cpu->r[11] + 0x000000A0u;
|
|
/* 022BCD48 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022BCD4C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BCD4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BCD50 */ _t20 = cpu->r[11] + 0x000000A4u;
|
|
/* 022BCD50 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022BCD54 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCD54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BCD58 */ _t22 = cpu->r[11] + 0x000000A8u;
|
|
/* 022BCD58 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 022BCD5C */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCD5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BCD60 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022BCD60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BCD64 */ cpu->lr = cpu->r[0];
|
|
/* 022BCD68 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BCD6C */ return;
|
|
}
|
|
|
|
// fn_022BCD70 @ 0x22bcd70
|
|
void Gambit_fn_022BCD70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t37, _t38, _t39, _t40, _t41, _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;
|
|
double _ft35, _ft36;
|
|
|
|
L_022BCD70: ; // 0x22bcd70
|
|
/* 022BCD70 */ _t0 = cpu->r[1] + 0xFFFFFF10u;
|
|
/* 022BCD70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BCD70 */ cpu->r[1] = _t0;
|
|
/* 022BCD74 */ _t1 = cpu->r[1] + 0x000000A8u;
|
|
/* 022BCD74 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BCD78 */ cpu->r[0] = cpu->lr;
|
|
/* 022BCD7C */ _t2 = cpu->r[1] + 0x000000E0u;
|
|
/* 022BCD7C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BCD80 */ /* nop */
|
|
/* 022BCD84 */ _t3 = cpu->r[1] + 0x000000C0u;
|
|
/* 022BCD84 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 022BCD88 */ /* nop */
|
|
/* 022BCD8C */ _t4 = cpu->r[1] + 0x000000E8u;
|
|
/* 022BCD8C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 022BCD90 */ _t5 = cpu->r[1] + 0x000000C8u;
|
|
/* 022BCD90 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 022BCD94 */ _t6 = cpu->r[1] + 0x000000B0u;
|
|
/* 022BCD94 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[28]);
|
|
/* 022BCD98 */ _t7 = cpu->r[1] + 0x000000D0u;
|
|
/* 022BCD98 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[30]);
|
|
/* 022BCD9C */ /* nop */
|
|
/* 022BCDA0 */ _t8 = cpu->r[1] + 0x000000F4u;
|
|
/* 022BCDA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022BCDA4 */ _t9 = cpu->r[1] + 0x000000B8u;
|
|
/* 022BCDA4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[28]);
|
|
/* 022BCDA8 */ /* nop */
|
|
/* 022BCDAC */ _t10 = cpu->r[1] + 0x000000ACu;
|
|
/* 022BCDAC */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 022BCDB0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BCDB4 */ _t11 = cpu->r[1] + 0x000000D8u;
|
|
/* 022BCDB4 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[30]);
|
|
/* 022BCDB8 */ Gambit_fn_022BC350(cpu);
|
|
/* 022BCDBC */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 022BCDBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BCDC0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCDC0 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 022BCDC4 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 022BCDC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BCDC8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BCDC8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022BCDCC */ _t16 = cpu->r[3] + 0x00000008u;
|
|
/* 022BCDCC */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BCDD0 */ _t17 = cpu->r[30] + 0x00000148u;
|
|
/* 022BCDD0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022BCDD4 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCDD4 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 022BCDD8 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCDD8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BCDDC */ /* nop */
|
|
/* 022BCDE0 */ cpu->f[12] = cpu->f[8] - cpu->f[10];
|
|
/* 022BCDE4 */ /* nop */
|
|
/* 022BCDE8 */ /* nop */
|
|
/* 022BCDEC */ _t20 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BCDEC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 022BCDF0 */ _t21 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BCDF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BCDF4 */ /* nop */
|
|
/* 022BCDF8 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCDF8 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 022BCDFC */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCDFC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BCE00 */ _t24 = cpu->r[1] + 0x00000044u;
|
|
/* 022BCE00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BCE04 */ cpu->f[12] = cpu->f[28] * cpu->f[28];
|
|
/* 022BCE08 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 022BCE08 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 022BCE0C */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022BCE0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022BCE10 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BCE14 */ _t27 = cpu->r[1] + 0x00000048u;
|
|
/* 022BCE14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BCE18 */ cpu->f[30] = fma(cpu->f[0], cpu->f[0], cpu->f[12]);
|
|
/* 022BCE1C */ _t28 = cpu->r[8] + 0x000042C8u;
|
|
/* 022BCE1C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022BCE20 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 022BCE20 */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
/* 022BCE24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 022BCE28 */ _t30 = cpu->r[1] + 0x00000018u;
|
|
/* 022BCE28 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 022BCE2C */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BCE2C */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BCE2C */ if (_t32) goto L_022BCE38; else goto L_022BCE30;
|
|
L_022BCE30: ; // 0x22bce30
|
|
/* 022BCE30 */ /* nop */
|
|
/* 022BCE34 */ goto L_022BCE74;
|
|
L_022BCE38: ; // 0x22bce38
|
|
/* 022BCE38 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BCE3C */ cpu->r[11] = 0x10060000u;
|
|
/* 022BCE40 */ _t33 = cpu->r[12] + 0x00004378u;
|
|
/* 022BCE40 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BCE44 */ _t34 = cpu->r[11] + 0x00004374u;
|
|
/* 022BCE44 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022BCE48 */ _ft35 = sqrt(cpu->f[30]);
|
|
/* 022BCE48 */ _ft36 = (double)(int32_t)0x00000001u;
|
|
/* 022BCE48 */ cpu->f[0] = _ft36 / _ft35;
|
|
/* 022BCE4C */ cpu->f[12] = cpu->f[0] * cpu->f[0];
|
|
/* 022BCE50 */ cpu->f[8] = cpu->f[0] * cpu->f[13];
|
|
/* 022BCE54 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[30], -(cpu->f[9]));
|
|
/* 022BCE58 */ cpu->f[0] = cpu->f[12] * cpu->f[8];
|
|
/* 022BCE5C */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCE5C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022BCE60 */ cpu->f[30] = cpu->f[30] * cpu->f[0];
|
|
/* 022BCE64 */ /* nop */
|
|
/* 022BCE68 */ cpu->f[28] = cpu->f[28] * cpu->f[0];
|
|
/* 022BCE6C */ /* nop */
|
|
/* 022BCE70 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BCE70 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[28]);
|
|
L_022BCE74: ; // 0x22bce74
|
|
/* 022BCE74 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCE78 */ Gambit_fn_022BC37C(cpu);
|
|
/* 022BCE7C */ cpu->f[0] = cpu->f[30] - cpu->f[1];
|
|
/* 022BCE80 */ _t39 = cpu->r[30] + 0x00000148u;
|
|
/* 022BCE80 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022BCE84 */ /* nop */
|
|
/* 022BCE88 */ /* nop */
|
|
/* 022BCE8C */ /* nop */
|
|
/* 022BCE90 */ _t40 = cpu->r[1] + 0x00000050u;
|
|
/* 022BCE90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BCE94 */ cpu->f[13] = cpu->f[28] * cpu->f[0];
|
|
/* 022BCE98 */ _t41 = cpu->r[1] + 0x00000054u;
|
|
/* 022BCE98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022BCE9C */ _t42 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BCE9C */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 022BCEA0 */ _t43 = cpu->r[1] + 0x00000058u;
|
|
/* 022BCEA0 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
/* 022BCEA4 */ _t44 = cpu->r[1] + 0x00000058u;
|
|
/* 022BCEA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BCEA8 */ _t45 = cpu->r[1] + 0x00000094u;
|
|
/* 022BCEA8 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 022BCEAC */ _t46 = cpu->r[1] + 0x00000094u;
|
|
/* 022BCEAC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022BCEB0 */ _t47 = cpu->r[1] + 0x00000090u;
|
|
/* 022BCEB0 */ rbrew_write32(cpu->mem, _t47, cpu->r[9]);
|
|
/* 022BCEB4 */ /* nop */
|
|
/* 022BCEB8 */ /* nop */
|
|
/* 022BCEBC */ /* nop */
|
|
/* 022BCEC0 */ _t48 = cpu->r[1] + 0x00000060u;
|
|
/* 022BCEC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022BCEC4 */ _t49 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BCEC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022BCEC8 */ cpu->f[0] = cpu->f[8] + cpu->f[9];
|
|
/* 022BCECC */ _t50 = cpu->r[1] + 0x00000078u;
|
|
/* 022BCECC */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 022BCED0 */ _t51 = cpu->r[1] + 0x00000078u;
|
|
/* 022BCED0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022BCED4 */ _t52 = cpu->r[1] + 0x00000074u;
|
|
/* 022BCED4 */ rbrew_write32(cpu->mem, _t52, cpu->r[11]);
|
|
/* 022BCED8 */ _t53 = cpu->r[1] + 0x00000074u;
|
|
/* 022BCED8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022BCEDC */ _t54 = cpu->r[1] + 0x00000064u;
|
|
/* 022BCEDC */ rbrew_write_f32(cpu->mem, _t54, cpu->f[0]);
|
|
/* 022BCEE0 */ _t55 = cpu->r[1] + 0x00000064u;
|
|
/* 022BCEE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022BCEE4 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 022BCEE4 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[10]);
|
|
/* 022BCEE8 */ _t57 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BCEE8 */ rbrew_write32(cpu->mem, _t57, cpu->r[0]);
|
|
/* 022BCEEC */ _t58 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BCEEC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022BCEF0 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BCEF0 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
/* 022BCEF4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCEF8 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 022BCEF8 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[12]);
|
|
/* 022BCEFC */ Gambit_fn_022BBB30(cpu);
|
|
/* 022BCF00 */ cpu->r[5] = cpu->r[3];
|
|
/* 022BCF04 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCF08 */ Gambit_fn_022BC4D4(cpu);
|
|
/* 022BCF0C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BCF10 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCF14 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BCF18 */ Gambit_fn_022BC3D0(cpu);
|
|
/* 022BCF1C */ _t61 = cpu->r[1] + 0x00000030u;
|
|
/* 022BCF1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022BCF20 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCF24 */ _t62 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BCF24 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022BCF28 */ _t63 = cpu->r[1] + 0x00000024u;
|
|
/* 022BCF28 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 022BCF2C */ _t64 = cpu->r[1] + 0x00000034u;
|
|
/* 022BCF2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022BCF30 */ _t65 = cpu->r[1] + 0x00000020u;
|
|
/* 022BCF30 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 022BCF34 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BCF38 */ _t66 = cpu->r[1] + 0x00000028u;
|
|
/* 022BCF38 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
/* 022BCF3C */ Gambit_fn_022BC694(cpu);
|
|
/* 022BCF40 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCF44 */ Gambit_fn_022BC4D4(cpu);
|
|
/* 022BCF48 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCF4C */ Gambit_fn_022BCC00(cpu);
|
|
/* 022BCF50 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCF54 */ cpu->r[6] = cpu->r[30] + 0x000001D4u;
|
|
/* 022BCF58 */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 022BCF5C */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BCF60 */ Gambit_fn_022BCBD8(cpu);
|
|
/* 022BCF64 */ _t67 = cpu->r[1] + 0x00000088u;
|
|
/* 022BCF64 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022BCF68 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BCF6C */ _t68 = cpu->r[30] + 0x000001DCu;
|
|
/* 022BCF6C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022BCF70 */ /* nop */
|
|
/* 022BCF74 */ /* nop */
|
|
/* 022BCF78 */ cpu->f[12] = cpu->f[12] + cpu->f[13];
|
|
/* 022BCF7C */ _t69 = cpu->r[8] + 0x0000438Cu;
|
|
/* 022BCF7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022BCF80 */ /* nop */
|
|
/* 022BCF84 */ /* nop */
|
|
/* 022BCF88 */ cpu->f[10] = cpu->f[12] * cpu->f[10];
|
|
/* 022BCF8C */ /* nop */
|
|
/* 022BCF90 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCF94 */ _t70 = cpu->r[30] + 0x000001DCu;
|
|
/* 022BCF94 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[10]);
|
|
/* 022BCF98 */ Gambit_fn_022BBB60(cpu);
|
|
/* 022BCF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BCFA0 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BCFA0 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022BCFA0 */ if (_t72) goto L_022BCFA4; else goto L_022BCFC4;
|
|
L_022BCFA4: ; // 0x22bcfa4
|
|
/* 022BCFA4 */ _t73 = cpu->r[30] + 0x000001DCu;
|
|
/* 022BCFA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 022BCFA8 */ _t74 = cpu->r[30] + 0x00000148u;
|
|
/* 022BCFA8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022BCFAC */ /* nop */
|
|
/* 022BCFB0 */ cpu->f[12] = cpu->f[12] + cpu->f[13];
|
|
/* 022BCFB4 */ /* nop */
|
|
/* 022BCFB8 */ /* nop */
|
|
/* 022BCFBC */ /* nop */
|
|
/* 022BCFC0 */ _t75 = cpu->r[30] + 0x00000148u;
|
|
/* 022BCFC0 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
L_022BCFC4: ; // 0x22bcfc4
|
|
/* 022BCFC4 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 022BCFC8 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022BCFCC */ cpu->r[3] = cpu->r[30];
|
|
/* 022BCFD0 */ Gambit_fn_022BCC1C(cpu);
|
|
/* 022BCFD4 */ _t76 = cpu->r[1] + 0x00000038u;
|
|
/* 022BCFD4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022BCFD8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 022BCFDC */ cpu->f[1] = cpu->f[31];
|
|
/* 022BCFE0 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BCFE0 */ _t78 = _t77 & 0x00000001u;
|
|
/* 022BCFE0 */ if (_t78) goto L_022BCFE4; else goto L_022BCFFC;
|
|
L_022BCFE4: ; // 0x22bcfe4
|
|
/* 022BCFE4 */ _t79 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BCFE4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022BCFE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 022BCFEC */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BCFEC */ _t81 = _t80 & 0x00000001u;
|
|
/* 022BCFEC */ if (_t81) goto L_022BCFF0; else goto L_022BCFFC;
|
|
L_022BCFF0: ; // 0x22bcff0
|
|
/* 022BCFF0 */ _t82 = cpu->r[1] + 0x00000040u;
|
|
/* 022BCFF0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 022BCFF4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 022BCFF8 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BCFF8 */ _t84 = _t83 & 0x00000001u;
|
|
/* 022BCFF8 */ if (_t84) goto L_022BD078; else goto L_022BCFFC;
|
|
L_022BCFFC: ; // 0x22bcffc
|
|
/* 022BCFFC */ cpu->r[3] = cpu->r[30];
|
|
/* 022BD000 */ _t85 = cpu->r[30] + 0x00000070u;
|
|
/* 022BD000 */ cpu->r[31] = rbrew_read32(cpu->mem, _t85);
|
|
/* 022BD004 */ Gambit_fn_022BC37C(cpu);
|
|
/* 022BD008 */ cpu->f[8] = cpu->f[30] - cpu->f[1];
|
|
/* 022BD00C */ cpu->r[10] = 0x10060000u;
|
|
/* 022BD010 */ _t86 = cpu->r[10] + 0x00004384u;
|
|
/* 022BD010 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 022BD014 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD018 */ cpu->f[10] = -cpu->f[8];
|
|
/* 022BD01C */ _t87 = cpu->r[12] + 0x00004340u;
|
|
/* 022BD01C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 022BD020 */ /* nop */
|
|
/* 022BD024 */ /* nop */
|
|
/* 022BD028 */ _t88 = cpu->r[1] + 0x00000040u;
|
|
/* 022BD028 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 022BD02C */ /* nop */
|
|
/* 022BD030 */ cpu->f[9] = cpu->f[10] * cpu->f[9];
|
|
/* 022BD034 */ /* nop */
|
|
/* 022BD038 */ _t89 = cpu->r[1] + 0x00000068u;
|
|
/* 022BD038 */ cpu->r[12] = rbrew_read32(cpu->mem, _t89);
|
|
/* 022BD03C */ _t90 = cpu->r[1] + 0x00000070u;
|
|
/* 022BD03C */ rbrew_write_f32(cpu->mem, _t90, cpu->f[9]);
|
|
/* 022BD040 */ _t91 = cpu->r[1] + 0x00000070u;
|
|
/* 022BD040 */ cpu->r[0] = rbrew_read32(cpu->mem, _t91);
|
|
/* 022BD044 */ _t92 = cpu->r[1] + 0x00000098u;
|
|
/* 022BD044 */ rbrew_write32(cpu->mem, _t92, cpu->r[12]);
|
|
/* 022BD048 */ _t93 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BD048 */ rbrew_write32(cpu->mem, _t93, cpu->r[0]);
|
|
/* 022BD04C */ _t94 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BD04C */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 022BD050 */ _t95 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BD050 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 022BD054 */ _t96 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022BD054 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
/* 022BD058 */ _t97 = cpu->r[31] + 0x000000A0u;
|
|
/* 022BD058 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 022BD05C */ _t98 = cpu->r[31] + 0x000000A8u;
|
|
/* 022BD05C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 022BD060 */ cpu->f[0] = cpu->f[10] * cpu->f[13];
|
|
/* 022BD064 */ _t99 = cpu->r[1] + 0x00000098u;
|
|
/* 022BD064 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 022BD068 */ cpu->f[11] = cpu->f[9] * cpu->f[13];
|
|
/* 022BD06C */ cpu->f[1] = fma(cpu->f[9], cpu->f[8], -(cpu->f[0]));
|
|
/* 022BD070 */ cpu->f[2] = fma(cpu->f[10], cpu->f[8], cpu->f[11]);
|
|
/* 022BD074 */ Gambit_fn_02C89074(cpu);
|
|
L_022BD078: ; // 0x22bd078
|
|
/* 022BD078 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BD07C */ Gambit_fn_022BBB60(cpu);
|
|
/* 022BD080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD084 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD084 */ _t101 = _t100 & 0x00000001u;
|
|
/* 022BD084 */ if (_t101) goto L_022BD0A0; else goto L_022BD088;
|
|
L_022BD088: ; // 0x22bd088
|
|
/* 022BD088 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BD08C */ _t102 = cpu->r[11] + 0x00004390u;
|
|
/* 022BD08C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 022BD090 */ cpu->f[1] = cpu->f[1] * cpu->f[0];
|
|
/* 022BD094 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BD098 */ Gambit_fn_022BCCB8(cpu);
|
|
/* 022BD09C */ goto L_022BD0B4;
|
|
L_022BD0A0: ; // 0x22bd0a0
|
|
/* 022BD0A0 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BD0A4 */ _t103 = cpu->r[9] + 0x00004394u;
|
|
/* 022BD0A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 022BD0A8 */ cpu->f[1] = cpu->f[1] * cpu->f[0];
|
|
/* 022BD0AC */ cpu->r[3] = cpu->r[30];
|
|
/* 022BD0B0 */ Gambit_fn_022BCCB8(cpu);
|
|
L_022BD0B4: ; // 0x22bd0b4
|
|
/* 022BD0B4 */ _t104 = cpu->r[1] + 0x000000ACu;
|
|
/* 022BD0B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022BD0B8 */ _t105 = cpu->r[1] + 0x000000D8u;
|
|
/* 022BD0B8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 022BD0BC */ _t106 = cpu->r[1] + 0x000000E8u;
|
|
/* 022BD0BC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 022BD0C0 */ _t107 = cpu->r[1] + 0x000000D0u;
|
|
/* 022BD0C0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t107);
|
|
/* 022BD0C4 */ _t108 = cpu->r[1] + 0x000000E0u;
|
|
/* 022BD0C4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t108);
|
|
/* 022BD0C8 */ _t109 = cpu->r[1] + 0x000000C8u;
|
|
/* 022BD0C8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 022BD0CC */ _t110 = cpu->r[1] + 0x000000B8u;
|
|
/* 022BD0CC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 022BD0D0 */ _t111 = cpu->r[1] + 0x000000C0u;
|
|
/* 022BD0D0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t111);
|
|
/* 022BD0D4 */ _t112 = cpu->r[1] + 0x000000B0u;
|
|
/* 022BD0D4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t112);
|
|
/* 022BD0D8 */ _t113 = cpu->r[1] + 0x000000A8u;
|
|
/* 022BD0D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t113);
|
|
/* 022BD0DC */ _t114 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD0DC */ _t115 = _t114 & 0x00000001u;
|
|
/* 022BD0DC */ if (_t115) goto L_022BD0E0; // else: addr-0 trap, fall-through
|
|
L_022BD0E0: ; // 0x22bd0e0
|
|
/* 022BD0E0 */ _t116 = cpu->r[1] + 0x000000F4u;
|
|
/* 022BD0E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t116);
|
|
/* 022BD0E4 */ cpu->lr = cpu->r[0];
|
|
/* 022BD0E8 */ cpu->r[1] = cpu->r[1] + 0x000000F0u;
|
|
/* 022BD0EC */ return;
|
|
}
|
|
|
|
// fn_022BD0F0 @ 0x22bd0f0
|
|
void Gambit_fn_022BD0F0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022BD0F0: ; // 0x22bd0f0
|
|
/* 022BD0F0 */ _t0 = cpu->r[3] + 0x00000314u;
|
|
/* 022BD0F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BD0F4 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 022BD0F8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 022BD0FC */ return;
|
|
}
|
|
|
|
// fn_022BD100 @ 0x22bd100
|
|
void Gambit_fn_022BD100(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022BD100: ; // 0x22bd100
|
|
/* 022BD100 */ cpu->r[0] = cpu->lr;
|
|
/* 022BD104 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022BD104 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022BD108 */ cpu->r[12] = cpu->r[3];
|
|
/* 022BD10C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BD10C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022BD10C */ cpu->r[1] = _t1;
|
|
/* 022BD110 */ Gambit_fn_022BD0F0(cpu);
|
|
/* 022BD114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD118 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD118 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BD118 */ if (_t3) goto L_022BD140; else goto L_022BD11C;
|
|
L_022BD11C: ; // 0x22bd11c
|
|
/* 022BD11C */ _t4 = cpu->r[12] + 0x0000005Cu;
|
|
/* 022BD11C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BD120 */ _t5 = cpu->r[3] + 0x000046BCu;
|
|
/* 022BD120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BD124 */ _t6 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022BD124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BD128 */ cpu->ctr = cpu->r[0];
|
|
/* 022BD12C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BD130 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BD134 */ cpu->lr = cpu->r[0];
|
|
/* 022BD138 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD13C */ return;
|
|
L_022BD140: ; // 0x22bd140
|
|
/* 022BD140 */ _t8 = cpu->r[12] + 0x00000314u;
|
|
/* 022BD140 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BD144 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 022BD144 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BD148 */ _t10 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022BD148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BD14C */ cpu->ctr = cpu->r[0];
|
|
/* 022BD150 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BD154 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BD158 */ cpu->lr = cpu->r[0];
|
|
/* 022BD15C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD160 */ return;
|
|
}
|
|
|
|
// fn_022BD10C @ 0x22bd10c
|
|
void Gambit_fn_022BD10C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022BD10C: ; // 0x22bd10c
|
|
/* 022BD10C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BD10C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD10C */ cpu->r[1] = _t0;
|
|
/* 022BD110 */ Gambit_fn_022BD0F0(cpu);
|
|
/* 022BD114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD118 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD118 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BD118 */ if (_t2) goto L_022BD140; else goto L_022BD11C;
|
|
L_022BD11C: ; // 0x22bd11c
|
|
/* 022BD11C */ _t3 = cpu->r[12] + 0x0000005Cu;
|
|
/* 022BD11C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BD120 */ _t4 = cpu->r[3] + 0x000046BCu;
|
|
/* 022BD120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BD124 */ _t5 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022BD124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BD128 */ cpu->ctr = cpu->r[0];
|
|
/* 022BD12C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BD130 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BD134 */ cpu->lr = cpu->r[0];
|
|
/* 022BD138 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD13C */ return;
|
|
L_022BD140: ; // 0x22bd140
|
|
/* 022BD140 */ _t7 = cpu->r[12] + 0x00000314u;
|
|
/* 022BD140 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BD144 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 022BD144 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BD148 */ _t9 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022BD148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BD14C */ cpu->ctr = cpu->r[0];
|
|
/* 022BD150 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BD154 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BD158 */ cpu->lr = cpu->r[0];
|
|
/* 022BD15C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD160 */ return;
|
|
}
|
|
|
|
// fn_022BD164 @ 0x22bd164
|
|
void Gambit_fn_022BD164(CPUState* 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_022BD164: ; // 0x22bd164
|
|
/* 022BD164 */ cpu->r[0] = cpu->lr;
|
|
/* 022BD168 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022BD168 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022BD16C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD170 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BD170 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022BD170 */ cpu->r[1] = _t1;
|
|
/* 022BD174 */ _t2 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BD174 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BD178 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 022BD178 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022BD17C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 022BD180 */ cpu->f[1] = cpu->f[0];
|
|
/* 022BD184 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD184 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BD184 */ if (_t5) goto L_022BD188; else goto L_022BD194;
|
|
L_022BD188: ; // 0x22bd188
|
|
/* 022BD188 */ _t6 = cpu->r[4] + 0x00000004u;
|
|
/* 022BD188 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BD18C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[0]);
|
|
/* 022BD190 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD190 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BD190 */ if (_t8) goto L_022BD1BC; else goto L_022BD194;
|
|
L_022BD194: ; // 0x22bd194
|
|
/* 022BD194 */ _t9 = cpu->r[3] + 0x00000070u;
|
|
/* 022BD194 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BD198 */ _t10 = cpu->r[4] + 0x00000008u;
|
|
/* 022BD198 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BD19C */ _t11 = cpu->r[12] + 0x000000A0u;
|
|
/* 022BD19C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BD1A0 */ _t12 = cpu->r[12] + 0x000000A8u;
|
|
/* 022BD1A0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BD1A4 */ cpu->f[10] = cpu->f[11] * cpu->f[13];
|
|
/* 022BD1A8 */ cpu->f[12] = cpu->f[9] * cpu->f[13];
|
|
/* 022BD1AC */ cpu->f[1] = fma(cpu->f[9], cpu->f[7], -(cpu->f[10]));
|
|
/* 022BD1B0 */ cpu->f[2] = fma(cpu->f[11], cpu->f[7], cpu->f[12]);
|
|
/* 022BD1B4 */ Gambit_fn_02C89074(cpu);
|
|
/* 022BD1B8 */ goto L_022BD1E8;
|
|
L_022BD1BC: ; // 0x22bd1bc
|
|
/* 022BD1BC */ _t13 = cpu->r[4] + 0x00000008u;
|
|
/* 022BD1BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BD1C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BD1C4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD1C4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BD1C4 */ if (_t15) goto L_022BD1E8; else goto L_022BD1C8;
|
|
L_022BD1C8: ; // 0x22bd1c8
|
|
/* 022BD1C8 */ _t16 = cpu->r[3] + 0x00000070u;
|
|
/* 022BD1C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BD1CC */ _t17 = cpu->r[12] + 0x000000A0u;
|
|
/* 022BD1CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022BD1D0 */ _t18 = cpu->r[12] + 0x000000A8u;
|
|
/* 022BD1D0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BD1D4 */ cpu->f[10] = cpu->f[11] * cpu->f[13];
|
|
/* 022BD1D8 */ cpu->f[12] = cpu->f[9] * cpu->f[13];
|
|
/* 022BD1DC */ cpu->f[1] = fma(cpu->f[9], cpu->f[7], -(cpu->f[10]));
|
|
/* 022BD1E0 */ cpu->f[2] = fma(cpu->f[11], cpu->f[7], cpu->f[12]);
|
|
/* 022BD1E4 */ Gambit_fn_02C89074(cpu);
|
|
L_022BD1E8: ; // 0x22bd1e8
|
|
/* 022BD1E8 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD1E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BD1EC */ cpu->r[11] = 0x10060000u;
|
|
/* 022BD1F0 */ cpu->lr = cpu->r[0];
|
|
/* 022BD1F4 */ _t20 = cpu->r[11] + 0x00004394u;
|
|
/* 022BD1F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022BD1F8 */ cpu->f[1] = cpu->f[1] * cpu->f[13];
|
|
/* 022BD1FC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD200 */ return;
|
|
}
|
|
|
|
// fn_022BD170 @ 0x22bd170
|
|
void Gambit_fn_022BD170(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_022BD170: ; // 0x22bd170
|
|
/* 022BD170 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BD170 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD170 */ cpu->r[1] = _t0;
|
|
/* 022BD174 */ _t1 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BD174 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022BD178 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 022BD178 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BD17C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 022BD180 */ cpu->f[1] = cpu->f[0];
|
|
/* 022BD184 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD184 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BD184 */ if (_t4) goto L_022BD188; else goto L_022BD194;
|
|
L_022BD188: ; // 0x22bd188
|
|
/* 022BD188 */ _t5 = cpu->r[4] + 0x00000004u;
|
|
/* 022BD188 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BD18C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[0]);
|
|
/* 022BD190 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD190 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BD190 */ if (_t7) goto L_022BD1BC; else goto L_022BD194;
|
|
L_022BD194: ; // 0x22bd194
|
|
/* 022BD194 */ _t8 = cpu->r[3] + 0x00000070u;
|
|
/* 022BD194 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BD198 */ _t9 = cpu->r[4] + 0x00000008u;
|
|
/* 022BD198 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BD19C */ _t10 = cpu->r[12] + 0x000000A0u;
|
|
/* 022BD19C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BD1A0 */ _t11 = cpu->r[12] + 0x000000A8u;
|
|
/* 022BD1A0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BD1A4 */ cpu->f[10] = cpu->f[11] * cpu->f[13];
|
|
/* 022BD1A8 */ cpu->f[12] = cpu->f[9] * cpu->f[13];
|
|
/* 022BD1AC */ cpu->f[1] = fma(cpu->f[9], cpu->f[7], -(cpu->f[10]));
|
|
/* 022BD1B0 */ cpu->f[2] = fma(cpu->f[11], cpu->f[7], cpu->f[12]);
|
|
/* 022BD1B4 */ Gambit_fn_02C89074(cpu);
|
|
/* 022BD1B8 */ goto L_022BD1E8;
|
|
L_022BD1BC: ; // 0x22bd1bc
|
|
/* 022BD1BC */ _t12 = cpu->r[4] + 0x00000008u;
|
|
/* 022BD1BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BD1C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BD1C4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD1C4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BD1C4 */ if (_t14) goto L_022BD1E8; else goto L_022BD1C8;
|
|
L_022BD1C8: ; // 0x22bd1c8
|
|
/* 022BD1C8 */ _t15 = cpu->r[3] + 0x00000070u;
|
|
/* 022BD1C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BD1CC */ _t16 = cpu->r[12] + 0x000000A0u;
|
|
/* 022BD1CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BD1D0 */ _t17 = cpu->r[12] + 0x000000A8u;
|
|
/* 022BD1D0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022BD1D4 */ cpu->f[10] = cpu->f[11] * cpu->f[13];
|
|
/* 022BD1D8 */ cpu->f[12] = cpu->f[9] * cpu->f[13];
|
|
/* 022BD1DC */ cpu->f[1] = fma(cpu->f[9], cpu->f[7], -(cpu->f[10]));
|
|
/* 022BD1E0 */ cpu->f[2] = fma(cpu->f[11], cpu->f[7], cpu->f[12]);
|
|
/* 022BD1E4 */ Gambit_fn_02C89074(cpu);
|
|
L_022BD1E8: ; // 0x22bd1e8
|
|
/* 022BD1E8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD1E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BD1EC */ cpu->r[11] = 0x10060000u;
|
|
/* 022BD1F0 */ cpu->lr = cpu->r[0];
|
|
/* 022BD1F4 */ _t19 = cpu->r[11] + 0x00004394u;
|
|
/* 022BD1F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BD1F8 */ cpu->f[1] = cpu->f[1] * cpu->f[13];
|
|
/* 022BD1FC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD200 */ return;
|
|
}
|
|
|
|
// fn_022BD204 @ 0x22bd204
|
|
void Gambit_fn_022BD204(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022BD204: ; // 0x22bd204
|
|
/* 022BD204 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD208 */ _t0 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BD208 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022BD20C */ _t1 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BD20C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BD210 */ _t2 = cpu->r[12] + 0x000046E8u;
|
|
/* 022BD210 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BD214 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BD218 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD218 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BD218 */ if (_t4) goto L_022BD21C; else goto L_022BD224;
|
|
L_022BD21C: ; // 0x22bd21c
|
|
/* 022BD21C */ _t5 = cpu->r[12] + 0x000046E8u;
|
|
/* 022BD21C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BD220 */ return;
|
|
L_022BD224: ; // 0x22bd224
|
|
/* 022BD224 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD228 */ _t6 = cpu->r[12] + 0x00004398u;
|
|
/* 022BD228 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BD22C */ return;
|
|
}
|
|
|
|
// fn_022BD230 @ 0x22bd230
|
|
void Gambit_fn_022BD230(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41;
|
|
double _ft16, _ft17, _ft29, _ft30;
|
|
|
|
L_022BD230: ; // 0x22bd230
|
|
/* 022BD230 */ cpu->r[0] = cpu->lr;
|
|
/* 022BD234 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022BD234 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022BD238 */ cpu->r[11] = cpu->r[3];
|
|
/* 022BD23C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BD23C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022BD23C */ cpu->r[1] = _t1;
|
|
/* 022BD240 */ Gambit_fn_022BD0F0(cpu);
|
|
/* 022BD244 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BD248 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD24C */ _t2 = cpu->r[9] + 0x00004378u;
|
|
/* 022BD24C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BD250 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BD254 */ _t3 = cpu->r[12] + 0x00004374u;
|
|
/* 022BD254 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022BD258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD25C */ _t4 = cpu->r[9] + 0x000042C8u;
|
|
/* 022BD25C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022BD260 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD260 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BD260 */ if (_t6) goto L_022BD308; else goto L_022BD264;
|
|
L_022BD264: ; // 0x22bd264
|
|
/* 022BD264 */ _t7 = cpu->r[6] + 0x00000008u;
|
|
/* 022BD264 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BD268 */ _t8 = cpu->r[11] + 0x00000148u;
|
|
/* 022BD268 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BD26C */ _t9 = cpu->r[11] + 0x00000140u;
|
|
/* 022BD26C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BD270 */ cpu->f[8] = cpu->f[0] - cpu->f[13];
|
|
/* 022BD274 */ _t10 = cpu->r[6] + 0x00000000u;
|
|
/* 022BD274 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BD278 */ cpu->f[0] = cpu->f[0] - cpu->f[11];
|
|
/* 022BD27C */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 022BD280 */ cpu->f[11] = fma(cpu->f[0], cpu->f[0], cpu->f[11]);
|
|
/* 022BD284 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 022BD288 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD288 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022BD288 */ if (_t12) goto L_022BD2B0; else goto L_022BD28C;
|
|
L_022BD28C: ; // 0x22bd28c
|
|
/* 022BD28C */ cpu->r[3] = cpu->r[11];
|
|
/* 022BD290 */ cpu->f[8] = cpu->f[10] * cpu->f[11];
|
|
/* 022BD294 */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD298 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BD29C */ _t13 = cpu->r[10] + 0x0000439Cu;
|
|
/* 022BD29C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BD2A0 */ cpu->f[11] = cpu->f[1] * cpu->f[11];
|
|
/* 022BD2A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[11]);
|
|
/* 022BD2A8 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD2A8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BD2A8 */ if (_t15) goto L_022BD2AC; else goto L_022BD308;
|
|
L_022BD2AC: ; // 0x22bd2ac
|
|
/* 022BD2AC */ goto L_022BD2E4;
|
|
L_022BD2B0: ; // 0x22bd2b0
|
|
/* 022BD2B0 */ _ft16 = sqrt(cpu->f[11]);
|
|
/* 022BD2B0 */ _ft17 = (double)(int32_t)0x00000001u;
|
|
/* 022BD2B0 */ cpu->f[0] = _ft17 / _ft16;
|
|
/* 022BD2B4 */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 022BD2B8 */ cpu->f[8] = cpu->f[0] * cpu->f[9];
|
|
/* 022BD2BC */ cpu->f[13] = -fma(cpu->f[13], cpu->f[11], -(cpu->f[12]));
|
|
/* 022BD2C0 */ cpu->f[0] = cpu->f[13] * cpu->f[8];
|
|
/* 022BD2C4 */ cpu->r[3] = cpu->r[11];
|
|
/* 022BD2C8 */ cpu->f[8] = cpu->f[0] * cpu->f[11];
|
|
/* 022BD2CC */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD2D0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BD2D4 */ _t18 = cpu->r[10] + 0x0000439Cu;
|
|
/* 022BD2D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BD2D8 */ cpu->f[11] = cpu->f[1] * cpu->f[11];
|
|
/* 022BD2DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[11]);
|
|
/* 022BD2E0 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD2E0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BD2E0 */ if (_t20) goto L_022BD2E4; else goto L_022BD308;
|
|
L_022BD2E4: ; // 0x22bd2e4
|
|
/* 022BD2E4 */ _t21 = cpu->r[11] + 0x0000005Cu;
|
|
/* 022BD2E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BD2E8 */ cpu->r[5] = 0x00000002u;
|
|
/* 022BD2EC */ cpu->r[3] = cpu->r[4];
|
|
/* 022BD2F0 */ cpu->r[4] = cpu->r[12] + 0x0000005Cu;
|
|
/* 022BD2F4 */ Gambit_fn_022C0154(cpu);
|
|
/* 022BD2F8 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD2F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BD2FC */ cpu->lr = cpu->r[0];
|
|
/* 022BD300 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD304 */ return;
|
|
L_022BD308: ; // 0x22bd308
|
|
/* 022BD308 */ _t23 = cpu->r[6] + 0x00000008u;
|
|
/* 022BD308 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BD30C */ _t24 = cpu->r[11] + 0x00000148u;
|
|
/* 022BD30C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BD310 */ _t25 = cpu->r[11] + 0x00000140u;
|
|
/* 022BD310 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BD314 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022BD318 */ _t26 = cpu->r[6] + 0x00000000u;
|
|
/* 022BD318 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022BD31C */ cpu->f[13] = cpu->f[8] - cpu->f[11];
|
|
/* 022BD320 */ cpu->f[8] = cpu->f[0] * cpu->f[0];
|
|
/* 022BD324 */ cpu->f[11] = fma(cpu->f[13], cpu->f[13], cpu->f[8]);
|
|
/* 022BD328 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 022BD32C */ _t27 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD32C */ _t28 = _t27 & 0x00000001u;
|
|
/* 022BD32C */ if (_t28) goto L_022BD330; else goto L_022BD344;
|
|
L_022BD330: ; // 0x22bd330
|
|
/* 022BD330 */ _ft29 = sqrt(cpu->f[11]);
|
|
/* 022BD330 */ _ft30 = (double)(int32_t)0x00000001u;
|
|
/* 022BD330 */ cpu->f[10] = _ft30 / _ft29;
|
|
/* 022BD334 */ cpu->f[13] = cpu->f[10] * cpu->f[10];
|
|
/* 022BD338 */ cpu->f[0] = cpu->f[10] * cpu->f[9];
|
|
/* 022BD33C */ cpu->f[13] = -fma(cpu->f[13], cpu->f[11], -(cpu->f[12]));
|
|
/* 022BD340 */ cpu->f[10] = cpu->f[13] * cpu->f[0];
|
|
L_022BD344: ; // 0x22bd344
|
|
/* 022BD344 */ cpu->f[12] = cpu->f[10] * cpu->f[11];
|
|
/* 022BD348 */ cpu->r[3] = cpu->r[11];
|
|
/* 022BD34C */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD350 */ cpu->f[13] = cpu->f[1] + cpu->f[1];
|
|
/* 022BD354 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022BD358 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD358 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BD358 */ if (_t32) goto L_022BD35C; else goto L_022BD388;
|
|
L_022BD35C: ; // 0x22bd35c
|
|
/* 022BD35C */ _t33 = cpu->r[11] + 0x00000070u;
|
|
/* 022BD35C */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BD360 */ _t34 = cpu->r[11] + 0x000000A0u;
|
|
/* 022BD360 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BD364 */ _t35 = cpu->r[4] + 0x00000000u;
|
|
/* 022BD364 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 022BD368 */ _t36 = cpu->r[11] + 0x000000A4u;
|
|
/* 022BD368 */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022BD36C */ _t37 = cpu->r[4] + 0x00000004u;
|
|
/* 022BD36C */ rbrew_write32(cpu->mem, _t37, cpu->r[10]);
|
|
/* 022BD370 */ _t38 = cpu->r[11] + 0x000000A8u;
|
|
/* 022BD370 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022BD374 */ _t39 = cpu->r[4] + 0x00000008u;
|
|
/* 022BD374 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 022BD378 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BD37C */ cpu->lr = cpu->r[0];
|
|
/* 022BD380 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD384 */ return;
|
|
L_022BD388: ; // 0x22bd388
|
|
/* 022BD388 */ cpu->r[3] = cpu->r[11];
|
|
/* 022BD38C */ Gambit_fn_022BCC1C(cpu);
|
|
/* 022BD390 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD390 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022BD394 */ cpu->lr = cpu->r[0];
|
|
/* 022BD398 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD39C */ return;
|
|
}
|
|
|
|
// fn_022BD23C @ 0x22bd23c
|
|
void Gambit_fn_022BD23C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
double _ft15, _ft16, _ft28, _ft29;
|
|
|
|
L_022BD23C: ; // 0x22bd23c
|
|
/* 022BD23C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BD23C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD23C */ cpu->r[1] = _t0;
|
|
/* 022BD240 */ Gambit_fn_022BD0F0(cpu);
|
|
/* 022BD244 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BD248 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD24C */ _t1 = cpu->r[9] + 0x00004378u;
|
|
/* 022BD24C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022BD250 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BD254 */ _t2 = cpu->r[12] + 0x00004374u;
|
|
/* 022BD254 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BD258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD25C */ _t3 = cpu->r[9] + 0x000042C8u;
|
|
/* 022BD25C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022BD260 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD260 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BD260 */ if (_t5) goto L_022BD308; else goto L_022BD264;
|
|
L_022BD264: ; // 0x22bd264
|
|
/* 022BD264 */ _t6 = cpu->r[6] + 0x00000008u;
|
|
/* 022BD264 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BD268 */ _t7 = cpu->r[11] + 0x00000148u;
|
|
/* 022BD268 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BD26C */ _t8 = cpu->r[11] + 0x00000140u;
|
|
/* 022BD26C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BD270 */ cpu->f[8] = cpu->f[0] - cpu->f[13];
|
|
/* 022BD274 */ _t9 = cpu->r[6] + 0x00000000u;
|
|
/* 022BD274 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BD278 */ cpu->f[0] = cpu->f[0] - cpu->f[11];
|
|
/* 022BD27C */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 022BD280 */ cpu->f[11] = fma(cpu->f[0], cpu->f[0], cpu->f[11]);
|
|
/* 022BD284 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 022BD288 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD288 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BD288 */ if (_t11) goto L_022BD2B0; else goto L_022BD28C;
|
|
L_022BD28C: ; // 0x22bd28c
|
|
/* 022BD28C */ cpu->r[3] = cpu->r[11];
|
|
/* 022BD290 */ cpu->f[8] = cpu->f[10] * cpu->f[11];
|
|
/* 022BD294 */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD298 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BD29C */ _t12 = cpu->r[10] + 0x0000439Cu;
|
|
/* 022BD29C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BD2A0 */ cpu->f[11] = cpu->f[1] * cpu->f[11];
|
|
/* 022BD2A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[11]);
|
|
/* 022BD2A8 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD2A8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BD2A8 */ if (_t14) goto L_022BD2AC; else goto L_022BD308;
|
|
L_022BD2AC: ; // 0x22bd2ac
|
|
/* 022BD2AC */ goto L_022BD2E4;
|
|
L_022BD2B0: ; // 0x22bd2b0
|
|
/* 022BD2B0 */ _ft15 = sqrt(cpu->f[11]);
|
|
/* 022BD2B0 */ _ft16 = (double)(int32_t)0x00000001u;
|
|
/* 022BD2B0 */ cpu->f[0] = _ft16 / _ft15;
|
|
/* 022BD2B4 */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 022BD2B8 */ cpu->f[8] = cpu->f[0] * cpu->f[9];
|
|
/* 022BD2BC */ cpu->f[13] = -fma(cpu->f[13], cpu->f[11], -(cpu->f[12]));
|
|
/* 022BD2C0 */ cpu->f[0] = cpu->f[13] * cpu->f[8];
|
|
/* 022BD2C4 */ cpu->r[3] = cpu->r[11];
|
|
/* 022BD2C8 */ cpu->f[8] = cpu->f[0] * cpu->f[11];
|
|
/* 022BD2CC */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD2D0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BD2D4 */ _t17 = cpu->r[10] + 0x0000439Cu;
|
|
/* 022BD2D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022BD2D8 */ cpu->f[11] = cpu->f[1] * cpu->f[11];
|
|
/* 022BD2DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[11]);
|
|
/* 022BD2E0 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD2E0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BD2E0 */ if (_t19) goto L_022BD2E4; else goto L_022BD308;
|
|
L_022BD2E4: ; // 0x22bd2e4
|
|
/* 022BD2E4 */ _t20 = cpu->r[11] + 0x0000005Cu;
|
|
/* 022BD2E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BD2E8 */ cpu->r[5] = 0x00000002u;
|
|
/* 022BD2EC */ cpu->r[3] = cpu->r[4];
|
|
/* 022BD2F0 */ cpu->r[4] = cpu->r[12] + 0x0000005Cu;
|
|
/* 022BD2F4 */ Gambit_fn_022C0154(cpu);
|
|
/* 022BD2F8 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD2F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BD2FC */ cpu->lr = cpu->r[0];
|
|
/* 022BD300 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD304 */ return;
|
|
L_022BD308: ; // 0x22bd308
|
|
/* 022BD308 */ _t22 = cpu->r[6] + 0x00000008u;
|
|
/* 022BD308 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BD30C */ _t23 = cpu->r[11] + 0x00000148u;
|
|
/* 022BD30C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BD310 */ _t24 = cpu->r[11] + 0x00000140u;
|
|
/* 022BD310 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BD314 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022BD318 */ _t25 = cpu->r[6] + 0x00000000u;
|
|
/* 022BD318 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BD31C */ cpu->f[13] = cpu->f[8] - cpu->f[11];
|
|
/* 022BD320 */ cpu->f[8] = cpu->f[0] * cpu->f[0];
|
|
/* 022BD324 */ cpu->f[11] = fma(cpu->f[13], cpu->f[13], cpu->f[8]);
|
|
/* 022BD328 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 022BD32C */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD32C */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BD32C */ if (_t27) goto L_022BD330; else goto L_022BD344;
|
|
L_022BD330: ; // 0x22bd330
|
|
/* 022BD330 */ _ft28 = sqrt(cpu->f[11]);
|
|
/* 022BD330 */ _ft29 = (double)(int32_t)0x00000001u;
|
|
/* 022BD330 */ cpu->f[10] = _ft29 / _ft28;
|
|
/* 022BD334 */ cpu->f[13] = cpu->f[10] * cpu->f[10];
|
|
/* 022BD338 */ cpu->f[0] = cpu->f[10] * cpu->f[9];
|
|
/* 022BD33C */ cpu->f[13] = -fma(cpu->f[13], cpu->f[11], -(cpu->f[12]));
|
|
/* 022BD340 */ cpu->f[10] = cpu->f[13] * cpu->f[0];
|
|
L_022BD344: ; // 0x22bd344
|
|
/* 022BD344 */ cpu->f[12] = cpu->f[10] * cpu->f[11];
|
|
/* 022BD348 */ cpu->r[3] = cpu->r[11];
|
|
/* 022BD34C */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD350 */ cpu->f[13] = cpu->f[1] + cpu->f[1];
|
|
/* 022BD354 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022BD358 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD358 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022BD358 */ if (_t31) goto L_022BD35C; else goto L_022BD388;
|
|
L_022BD35C: ; // 0x22bd35c
|
|
/* 022BD35C */ _t32 = cpu->r[11] + 0x00000070u;
|
|
/* 022BD35C */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022BD360 */ _t33 = cpu->r[11] + 0x000000A0u;
|
|
/* 022BD360 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BD364 */ _t34 = cpu->r[4] + 0x00000000u;
|
|
/* 022BD364 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 022BD368 */ _t35 = cpu->r[11] + 0x000000A4u;
|
|
/* 022BD368 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022BD36C */ _t36 = cpu->r[4] + 0x00000004u;
|
|
/* 022BD36C */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 022BD370 */ _t37 = cpu->r[11] + 0x000000A8u;
|
|
/* 022BD370 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022BD374 */ _t38 = cpu->r[4] + 0x00000008u;
|
|
/* 022BD374 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 022BD378 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022BD37C */ cpu->lr = cpu->r[0];
|
|
/* 022BD380 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD384 */ return;
|
|
L_022BD388: ; // 0x22bd388
|
|
/* 022BD388 */ cpu->r[3] = cpu->r[11];
|
|
/* 022BD38C */ Gambit_fn_022BCC1C(cpu);
|
|
/* 022BD390 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD390 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BD394 */ cpu->lr = cpu->r[0];
|
|
/* 022BD398 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD39C */ return;
|
|
}
|
|
|
|
// fn_022BD3A0 @ 0x22bd3a0
|
|
void Gambit_fn_022BD3A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022BD3A0: ; // 0x22bd3a0
|
|
/* 022BD3A0 */ cpu->r[0] = cpu->lr;
|
|
/* 022BD3A4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022BD3A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD3A4 */ cpu->r[1] = _t0;
|
|
/* 022BD3A8 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BD3A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD3AC */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD3B0 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 022BD3B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD3B4 */ Gambit_fn_022BD100(cpu);
|
|
/* 022BD3B8 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 022BD3B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BD3BC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD3BC */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 022BD3C0 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 022BD3C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BD3C4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD3C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 022BD3C8 */ _t7 = cpu->r[3] + 0x00000008u;
|
|
/* 022BD3C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BD3CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD3D0 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD3D4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 022BD3D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022BD3D8 */ Gambit_fn_022BBB30(cpu);
|
|
/* 022BD3DC */ cpu->r[5] = cpu->r[3];
|
|
/* 022BD3E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD3E4 */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD3E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD3EC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD3F0 */ Gambit_fn_022BC3D0(cpu);
|
|
/* 022BD3F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD3F8 */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD3FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD400 */ Gambit_fn_022BCC00(cpu);
|
|
/* 022BD404 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD408 */ cpu->r[6] = cpu->r[31] + 0x000001D4u;
|
|
/* 022BD40C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022BD410 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD414 */ Gambit_fn_022BCBD8(cpu);
|
|
/* 022BD418 */ _t9 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD418 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BD41C */ cpu->r[10] = 0x10060000u;
|
|
/* 022BD420 */ /* nop */
|
|
/* 022BD424 */ /* nop */
|
|
/* 022BD428 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 022BD428 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BD42C */ /* nop */
|
|
/* 022BD430 */ _t11 = cpu->r[10] + 0x0000438Cu;
|
|
/* 022BD430 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BD434 */ cpu->f[11] = cpu->f[11] + cpu->f[13];
|
|
/* 022BD438 */ _t12 = cpu->r[31] + 0x00000148u;
|
|
/* 022BD438 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BD43C */ /* nop */
|
|
/* 022BD440 */ /* nop */
|
|
/* 022BD444 */ cpu->f[10] = cpu->f[11] * cpu->f[0];
|
|
/* 022BD448 */ /* nop */
|
|
/* 022BD44C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BD450 */ /* nop */
|
|
/* 022BD454 */ _t13 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD454 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[10]);
|
|
/* 022BD458 */ cpu->f[13] = cpu->f[13] + cpu->f[10];
|
|
/* 022BD45C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD460 */ /* nop */
|
|
/* 022BD464 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD468 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD46C */ _t14 = cpu->r[31] + 0x00000148u;
|
|
/* 022BD46C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 022BD470 */ Gambit_fn_022BD230(cpu);
|
|
/* 022BD474 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD478 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BD47C */ Gambit_fn_022BD164(cpu);
|
|
/* 022BD480 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD484 */ Gambit_fn_022BCCB8(cpu);
|
|
/* 022BD488 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 022BD488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BD48C */ cpu->lr = cpu->r[0];
|
|
/* 022BD490 */ _t16 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BD490 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BD494 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022BD498 */ return;
|
|
}
|
|
|
|
// fn_022BD3A4 @ 0x22bd3a4
|
|
void Gambit_fn_022BD3A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022BD3A4: ; // 0x22bd3a4
|
|
/* 022BD3A4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022BD3A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD3A4 */ cpu->r[1] = _t0;
|
|
/* 022BD3A8 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BD3A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD3AC */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD3B0 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 022BD3B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD3B4 */ Gambit_fn_022BD100(cpu);
|
|
/* 022BD3B8 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 022BD3B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BD3BC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD3BC */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 022BD3C0 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 022BD3C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BD3C4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD3C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 022BD3C8 */ _t7 = cpu->r[3] + 0x00000008u;
|
|
/* 022BD3C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BD3CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD3D0 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD3D4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 022BD3D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022BD3D8 */ Gambit_fn_022BBB30(cpu);
|
|
/* 022BD3DC */ cpu->r[5] = cpu->r[3];
|
|
/* 022BD3E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD3E4 */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD3E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD3EC */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD3F0 */ Gambit_fn_022BC3D0(cpu);
|
|
/* 022BD3F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD3F8 */ Gambit_fn_022BD204(cpu);
|
|
/* 022BD3FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD400 */ Gambit_fn_022BCC00(cpu);
|
|
/* 022BD404 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD408 */ cpu->r[6] = cpu->r[31] + 0x000001D4u;
|
|
/* 022BD40C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022BD410 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD414 */ Gambit_fn_022BCBD8(cpu);
|
|
/* 022BD418 */ _t9 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD418 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BD41C */ cpu->r[10] = 0x10060000u;
|
|
/* 022BD420 */ /* nop */
|
|
/* 022BD424 */ /* nop */
|
|
/* 022BD428 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 022BD428 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BD42C */ /* nop */
|
|
/* 022BD430 */ _t11 = cpu->r[10] + 0x0000438Cu;
|
|
/* 022BD430 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BD434 */ cpu->f[11] = cpu->f[11] + cpu->f[13];
|
|
/* 022BD438 */ _t12 = cpu->r[31] + 0x00000148u;
|
|
/* 022BD438 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BD43C */ /* nop */
|
|
/* 022BD440 */ /* nop */
|
|
/* 022BD444 */ cpu->f[10] = cpu->f[11] * cpu->f[0];
|
|
/* 022BD448 */ /* nop */
|
|
/* 022BD44C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BD450 */ /* nop */
|
|
/* 022BD454 */ _t13 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD454 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[10]);
|
|
/* 022BD458 */ cpu->f[13] = cpu->f[13] + cpu->f[10];
|
|
/* 022BD45C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD460 */ /* nop */
|
|
/* 022BD464 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD468 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD46C */ _t14 = cpu->r[31] + 0x00000148u;
|
|
/* 022BD46C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 022BD470 */ Gambit_fn_022BD230(cpu);
|
|
/* 022BD474 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD478 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BD47C */ Gambit_fn_022BD164(cpu);
|
|
/* 022BD480 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD484 */ Gambit_fn_022BCCB8(cpu);
|
|
/* 022BD488 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 022BD488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BD48C */ cpu->lr = cpu->r[0];
|
|
/* 022BD490 */ _t16 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BD490 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BD494 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022BD498 */ return;
|
|
}
|
|
|
|
// fn_022BD49C @ 0x22bd49c
|
|
void Gambit_fn_022BD49C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022BD49C: ; // 0x22bd49c
|
|
/* 022BD49C */ cpu->r[0] = cpu->lr;
|
|
/* 022BD4A0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022BD4A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD4A0 */ cpu->r[1] = _t0;
|
|
/* 022BD4A4 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BD4A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD4A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD4AC */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 022BD4AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD4B0 */ Gambit_fn_022BC350(cpu);
|
|
/* 022BD4B4 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 022BD4B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BD4B8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD4B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 022BD4BC */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 022BD4BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BD4C0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD4C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 022BD4C4 */ _t7 = cpu->r[3] + 0x00000008u;
|
|
/* 022BD4C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BD4C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD4CC */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD4D0 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 022BD4D0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022BD4D4 */ Gambit_fn_022BBB30(cpu);
|
|
/* 022BD4D8 */ cpu->r[5] = cpu->r[3];
|
|
/* 022BD4DC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD4E0 */ Gambit_fn_022BC4D4(cpu);
|
|
/* 022BD4E4 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD4E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD4EC */ Gambit_fn_022BC3D0(cpu);
|
|
/* 022BD4F0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD4F4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022BD4F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD4FC */ Gambit_fn_022BCC1C(cpu);
|
|
/* 022BD500 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD504 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022BD508 */ Gambit_fn_022BD164(cpu);
|
|
/* 022BD50C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD510 */ Gambit_fn_022BCCB8(cpu);
|
|
/* 022BD514 */ _t9 = cpu->r[1] + 0x00000034u;
|
|
/* 022BD514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BD518 */ _t10 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BD518 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BD51C */ cpu->lr = cpu->r[0];
|
|
/* 022BD520 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022BD524 */ return;
|
|
}
|
|
|
|
// fn_022BD4A0 @ 0x22bd4a0
|
|
void Gambit_fn_022BD4A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022BD4A0: ; // 0x22bd4a0
|
|
/* 022BD4A0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022BD4A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD4A0 */ cpu->r[1] = _t0;
|
|
/* 022BD4A4 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BD4A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD4A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD4AC */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 022BD4AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD4B0 */ Gambit_fn_022BC350(cpu);
|
|
/* 022BD4B4 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 022BD4B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BD4B8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD4B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 022BD4BC */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 022BD4BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BD4C0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD4C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 022BD4C4 */ _t7 = cpu->r[3] + 0x00000008u;
|
|
/* 022BD4C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BD4C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD4CC */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD4D0 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 022BD4D0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022BD4D4 */ Gambit_fn_022BBB30(cpu);
|
|
/* 022BD4D8 */ cpu->r[5] = cpu->r[3];
|
|
/* 022BD4DC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD4E0 */ Gambit_fn_022BC4D4(cpu);
|
|
/* 022BD4E4 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD4E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD4EC */ Gambit_fn_022BC3D0(cpu);
|
|
/* 022BD4F0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022BD4F4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022BD4F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD4FC */ Gambit_fn_022BCC1C(cpu);
|
|
/* 022BD500 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD504 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022BD508 */ Gambit_fn_022BD164(cpu);
|
|
/* 022BD50C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD510 */ Gambit_fn_022BCCB8(cpu);
|
|
/* 022BD514 */ _t9 = cpu->r[1] + 0x00000034u;
|
|
/* 022BD514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BD518 */ _t10 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BD518 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BD51C */ cpu->lr = cpu->r[0];
|
|
/* 022BD520 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022BD524 */ return;
|
|
}
|
|
|
|
// fn_022BD528 @ 0x22bd528
|
|
void Gambit_fn_022BD528(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
double _ft28, _ft29;
|
|
|
|
L_022BD528: ; // 0x22bd528
|
|
/* 022BD528 */ cpu->r[0] = cpu->lr;
|
|
/* 022BD52C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BD52C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD52C */ cpu->r[1] = _t0;
|
|
/* 022BD530 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD530 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD534 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD538 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD538 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD53C */ _t3 = cpu->r[31] + 0x00000090u;
|
|
/* 022BD53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BD540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD544 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD544 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BD544 */ if (_t5) goto L_022BD548; else goto L_022BD670;
|
|
L_022BD548: ; // 0x22bd548
|
|
/* 022BD548 */ _t6 = cpu->r[31] + 0x00000140u;
|
|
/* 022BD548 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BD54C */ _t7 = cpu->r[31] + 0x00000148u;
|
|
/* 022BD54C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BD550 */ _t8 = cpu->r[31] + 0x00000268u;
|
|
/* 022BD550 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[9]);
|
|
/* 022BD554 */ _t9 = cpu->r[31] + 0x00000270u;
|
|
/* 022BD554 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[11]);
|
|
/* 022BD558 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD55C */ _t10 = cpu->r[31] + 0x00000144u;
|
|
/* 022BD55C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BD560 */ _t11 = cpu->r[12] + 0x00004340u;
|
|
/* 022BD560 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BD564 */ _t12 = cpu->r[31] + 0x0000026Cu;
|
|
/* 022BD564 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[10]);
|
|
/* 022BD568 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 022BD56C */ _t13 = cpu->r[31] + 0x00000274u;
|
|
/* 022BD56C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 022BD570 */ Gambit_fn_023E4504(cpu);
|
|
/* 022BD574 */ cpu->r[0] = 0x00000000u;
|
|
/* 022BD578 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 022BD57C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD580 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD580 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022BD584 */ Gambit_fn_023F9D48(cpu);
|
|
/* 022BD588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD58C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD58C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BD58C */ if (_t16) goto L_022BD670; else goto L_022BD590;
|
|
L_022BD590: ; // 0x22bd590
|
|
/* 022BD590 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BD594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD598 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD598 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BD598 */ if (_t19) goto L_022BD670; else goto L_022BD59C;
|
|
L_022BD59C: ; // 0x22bd59c
|
|
/* 022BD59C */ _t20 = cpu->r[31] + 0x000001D8u;
|
|
/* 022BD59C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022BD5A0 */ _t21 = cpu->r[31] + 0x000001D4u;
|
|
/* 022BD5A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022BD5A4 */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 022BD5A8 */ cpu->f[0] = fma(cpu->f[12], cpu->f[12], cpu->f[13]);
|
|
/* 022BD5AC */ _t22 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD5AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BD5B0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD5B4 */ cpu->f[10] = fma(cpu->f[11], cpu->f[11], cpu->f[0]);
|
|
/* 022BD5B8 */ _t23 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BD5B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BD5BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[13]);
|
|
/* 022BD5C0 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD5C0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022BD5C0 */ if (_t25) goto L_022BD5C4; else goto L_022BD604;
|
|
L_022BD5C4: ; // 0x22bd5c4
|
|
/* 022BD5C4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD5C8 */ _t26 = cpu->r[12] + 0x00004378u;
|
|
/* 022BD5C8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022BD5CC */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD5D0 */ _t27 = cpu->r[12] + 0x00004374u;
|
|
/* 022BD5D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BD5D4 */ _ft28 = sqrt(cpu->f[10]);
|
|
/* 022BD5D4 */ _ft29 = (double)(int32_t)0x00000001u;
|
|
/* 022BD5D4 */ cpu->f[8] = _ft29 / _ft28;
|
|
/* 022BD5D8 */ cpu->f[13] = cpu->f[8] * cpu->f[8];
|
|
/* 022BD5DC */ cpu->f[11] = cpu->f[8] * cpu->f[0];
|
|
/* 022BD5E0 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[9]));
|
|
/* 022BD5E4 */ cpu->f[8] = cpu->f[13] * cpu->f[11];
|
|
/* 022BD5E8 */ /* nop */
|
|
/* 022BD5EC */ _t30 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD5EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BD5F0 */ /* nop */
|
|
/* 022BD5F4 */ cpu->f[12] = cpu->f[12] * cpu->f[8];
|
|
/* 022BD5F8 */ /* nop */
|
|
/* 022BD5FC */ cpu->f[10] = cpu->f[10] * cpu->f[8];
|
|
/* 022BD600 */ _t31 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD600 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
L_022BD604: ; // 0x22bd604
|
|
/* 022BD604 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD608 */ _t32 = cpu->r[12] + 0x00004394u;
|
|
/* 022BD608 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022BD60C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD610 */ cpu->f[12] = cpu->f[12] - cpu->f[10];
|
|
/* 022BD614 */ _t33 = cpu->r[12] + 0x000043A0u;
|
|
/* 022BD614 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BD618 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 022BD61C */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD61C */ _t35 = _t34 & 0x00000001u;
|
|
/* 022BD61C */ if (_t35) goto L_022BD620; else goto L_022BD640;
|
|
L_022BD620: ; // 0x22bd620
|
|
/* 022BD620 */ cpu->f[12] = cpu->f[10] + cpu->f[0];
|
|
/* 022BD624 */ _t36 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD624 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022BD628 */ /* nop */
|
|
/* 022BD62C */ cpu->f[10] = cpu->f[10] * cpu->f[12];
|
|
/* 022BD630 */ /* nop */
|
|
/* 022BD634 */ _t37 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD634 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[10]);
|
|
/* 022BD638 */ /* nop */
|
|
/* 022BD63C */ goto L_022BD670;
|
|
L_022BD640: ; // 0x22bd640
|
|
/* 022BD640 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD644 */ _t38 = cpu->r[12] + 0x00004388u;
|
|
/* 022BD644 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022BD648 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022BD64C */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD64C */ _t40 = _t39 & 0x00000001u;
|
|
/* 022BD64C */ if (_t40) goto L_022BD650; else goto L_022BD654;
|
|
L_022BD650: ; // 0x22bd650
|
|
/* 022BD650 */ cpu->f[12] = cpu->f[13];
|
|
L_022BD654: ; // 0x22bd654
|
|
/* 022BD654 */ cpu->f[12] = cpu->f[10] + cpu->f[12];
|
|
/* 022BD658 */ _t41 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD658 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022BD65C */ /* nop */
|
|
/* 022BD660 */ cpu->f[10] = cpu->f[10] * cpu->f[12];
|
|
/* 022BD664 */ /* nop */
|
|
/* 022BD668 */ _t42 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD668 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[10]);
|
|
/* 022BD66C */ /* nop */
|
|
L_022BD670: ; // 0x22bd670
|
|
/* 022BD670 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BD674 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD674 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BD678 */ cpu->lr = cpu->r[0];
|
|
/* 022BD67C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BD680 */ return;
|
|
}
|
|
|
|
// fn_022BD52C @ 0x22bd52c
|
|
void Gambit_fn_022BD52C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
double _ft28, _ft29;
|
|
|
|
L_022BD52C: ; // 0x22bd52c
|
|
/* 022BD52C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BD52C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD52C */ cpu->r[1] = _t0;
|
|
/* 022BD530 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD530 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD534 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD538 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD538 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD53C */ _t3 = cpu->r[31] + 0x00000090u;
|
|
/* 022BD53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BD540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD544 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD544 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BD544 */ if (_t5) goto L_022BD548; else goto L_022BD670;
|
|
L_022BD548: ; // 0x22bd548
|
|
/* 022BD548 */ _t6 = cpu->r[31] + 0x00000140u;
|
|
/* 022BD548 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BD54C */ _t7 = cpu->r[31] + 0x00000148u;
|
|
/* 022BD54C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BD550 */ _t8 = cpu->r[31] + 0x00000268u;
|
|
/* 022BD550 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[9]);
|
|
/* 022BD554 */ _t9 = cpu->r[31] + 0x00000270u;
|
|
/* 022BD554 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[11]);
|
|
/* 022BD558 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD55C */ _t10 = cpu->r[31] + 0x00000144u;
|
|
/* 022BD55C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BD560 */ _t11 = cpu->r[12] + 0x00004340u;
|
|
/* 022BD560 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BD564 */ _t12 = cpu->r[31] + 0x0000026Cu;
|
|
/* 022BD564 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[10]);
|
|
/* 022BD568 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 022BD56C */ _t13 = cpu->r[31] + 0x00000274u;
|
|
/* 022BD56C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 022BD570 */ Gambit_fn_023E4504(cpu);
|
|
/* 022BD574 */ cpu->r[0] = 0x00000000u;
|
|
/* 022BD578 */ cpu->r[3] = cpu->r[31] + 0x0000024Cu;
|
|
/* 022BD57C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD580 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD580 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022BD584 */ Gambit_fn_023F9D48(cpu);
|
|
/* 022BD588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD58C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD58C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BD58C */ if (_t16) goto L_022BD670; else goto L_022BD590;
|
|
L_022BD590: ; // 0x22bd590
|
|
/* 022BD590 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BD594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD598 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD598 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BD598 */ if (_t19) goto L_022BD670; else goto L_022BD59C;
|
|
L_022BD59C: ; // 0x22bd59c
|
|
/* 022BD59C */ _t20 = cpu->r[31] + 0x000001D8u;
|
|
/* 022BD59C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022BD5A0 */ _t21 = cpu->r[31] + 0x000001D4u;
|
|
/* 022BD5A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022BD5A4 */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 022BD5A8 */ cpu->f[0] = fma(cpu->f[12], cpu->f[12], cpu->f[13]);
|
|
/* 022BD5AC */ _t22 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD5AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022BD5B0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD5B4 */ cpu->f[10] = fma(cpu->f[11], cpu->f[11], cpu->f[0]);
|
|
/* 022BD5B8 */ _t23 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BD5B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022BD5BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[13]);
|
|
/* 022BD5C0 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD5C0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022BD5C0 */ if (_t25) goto L_022BD5C4; else goto L_022BD604;
|
|
L_022BD5C4: ; // 0x22bd5c4
|
|
/* 022BD5C4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD5C8 */ _t26 = cpu->r[12] + 0x00004378u;
|
|
/* 022BD5C8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022BD5CC */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD5D0 */ _t27 = cpu->r[12] + 0x00004374u;
|
|
/* 022BD5D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BD5D4 */ _ft28 = sqrt(cpu->f[10]);
|
|
/* 022BD5D4 */ _ft29 = (double)(int32_t)0x00000001u;
|
|
/* 022BD5D4 */ cpu->f[8] = _ft29 / _ft28;
|
|
/* 022BD5D8 */ cpu->f[13] = cpu->f[8] * cpu->f[8];
|
|
/* 022BD5DC */ cpu->f[11] = cpu->f[8] * cpu->f[0];
|
|
/* 022BD5E0 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[9]));
|
|
/* 022BD5E4 */ cpu->f[8] = cpu->f[13] * cpu->f[11];
|
|
/* 022BD5E8 */ /* nop */
|
|
/* 022BD5EC */ _t30 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD5EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BD5F0 */ /* nop */
|
|
/* 022BD5F4 */ cpu->f[12] = cpu->f[12] * cpu->f[8];
|
|
/* 022BD5F8 */ /* nop */
|
|
/* 022BD5FC */ cpu->f[10] = cpu->f[10] * cpu->f[8];
|
|
/* 022BD600 */ _t31 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD600 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
L_022BD604: ; // 0x22bd604
|
|
/* 022BD604 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD608 */ _t32 = cpu->r[12] + 0x00004394u;
|
|
/* 022BD608 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022BD60C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD610 */ cpu->f[12] = cpu->f[12] - cpu->f[10];
|
|
/* 022BD614 */ _t33 = cpu->r[12] + 0x000043A0u;
|
|
/* 022BD614 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BD618 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 022BD61C */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD61C */ _t35 = _t34 & 0x00000001u;
|
|
/* 022BD61C */ if (_t35) goto L_022BD620; else goto L_022BD640;
|
|
L_022BD620: ; // 0x22bd620
|
|
/* 022BD620 */ cpu->f[12] = cpu->f[10] + cpu->f[0];
|
|
/* 022BD624 */ _t36 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD624 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022BD628 */ /* nop */
|
|
/* 022BD62C */ cpu->f[10] = cpu->f[10] * cpu->f[12];
|
|
/* 022BD630 */ /* nop */
|
|
/* 022BD634 */ _t37 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD634 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[10]);
|
|
/* 022BD638 */ /* nop */
|
|
/* 022BD63C */ goto L_022BD670;
|
|
L_022BD640: ; // 0x22bd640
|
|
/* 022BD640 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD644 */ _t38 = cpu->r[12] + 0x00004388u;
|
|
/* 022BD644 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022BD648 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022BD64C */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD64C */ _t40 = _t39 & 0x00000001u;
|
|
/* 022BD64C */ if (_t40) goto L_022BD650; else goto L_022BD654;
|
|
L_022BD650: ; // 0x22bd650
|
|
/* 022BD650 */ cpu->f[12] = cpu->f[13];
|
|
L_022BD654: ; // 0x22bd654
|
|
/* 022BD654 */ cpu->f[12] = cpu->f[10] + cpu->f[12];
|
|
/* 022BD658 */ _t41 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD658 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022BD65C */ /* nop */
|
|
/* 022BD660 */ cpu->f[10] = cpu->f[10] * cpu->f[12];
|
|
/* 022BD664 */ /* nop */
|
|
/* 022BD668 */ _t42 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BD668 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[10]);
|
|
/* 022BD66C */ /* nop */
|
|
L_022BD670: ; // 0x22bd670
|
|
/* 022BD670 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BD674 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD674 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BD678 */ cpu->lr = cpu->r[0];
|
|
/* 022BD67C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BD680 */ return;
|
|
}
|
|
|
|
// fn_022BD684 @ 0x22bd684
|
|
void Gambit_fn_022BD684(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _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_022BD684: ; // 0x22bd684
|
|
/* 022BD684 */ cpu->r[0] = cpu->lr;
|
|
/* 022BD688 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BD688 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD688 */ cpu->r[1] = _t0;
|
|
/* 022BD68C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD68C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD690 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD694 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD694 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD698 */ _t3 = cpu->r[31] + 0x00000148u;
|
|
/* 022BD698 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022BD69C */ _t4 = cpu->r[31] + 0x00000144u;
|
|
/* 022BD69C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022BD6A0 */ _t5 = cpu->r[31] + 0x000002D4u;
|
|
/* 022BD6A0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022BD6A4 */ _t6 = cpu->r[31] + 0x000002D0u;
|
|
/* 022BD6A4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 022BD6A8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD6AC */ _t7 = cpu->r[31] + 0x00000140u;
|
|
/* 022BD6AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BD6B0 */ _t8 = cpu->r[12] + 0x00004340u;
|
|
/* 022BD6B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BD6B4 */ _t9 = cpu->r[31] + 0x000002CCu;
|
|
/* 022BD6B4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 022BD6B8 */ cpu->r[3] = cpu->r[31] + 0x000002B0u;
|
|
/* 022BD6BC */ _t10 = cpu->r[31] + 0x000002D8u;
|
|
/* 022BD6BC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022BD6C0 */ Gambit_fn_023E4504(cpu);
|
|
/* 022BD6C4 */ cpu->r[0] = 0x00000000u;
|
|
/* 022BD6C8 */ _t11 = cpu->r[31] + 0x00000070u;
|
|
/* 022BD6C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BD6CC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD6CC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 022BD6D0 */ _t13 = cpu->r[11] + 0x00000044u;
|
|
/* 022BD6D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BD6D4 */ _t14 = cpu->r[12] + 0x00000000u;
|
|
/* 022BD6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BD6D8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BD6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BD6DC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD6DC */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BD6DC */ if (_t16) goto L_022BD708; else goto L_022BD6E0;
|
|
L_022BD6E0: ; // 0x22bd6e0
|
|
/* 022BD6E0 */ _t17 = cpu->r[11] + 0x00000044u;
|
|
/* 022BD6E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BD6E4 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 022BD6E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BD6E8 */ _t19 = cpu->r[12] + 0x0000015Cu;
|
|
/* 022BD6E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BD6EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 022BD6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD6F0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD6F0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022BD6F0 */ if (_t21) goto L_022BD708; else goto L_022BD6F4;
|
|
L_022BD6F4: ; // 0x22bd6f4
|
|
/* 022BD6F4 */ _t22 = cpu->r[11] + 0x00000044u;
|
|
/* 022BD6F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BD6F8 */ _t23 = cpu->r[12] + 0x00000004u;
|
|
/* 022BD6F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BD6FC */ _t24 = cpu->r[11] + 0x0000008Cu;
|
|
/* 022BD6FC */ cpu->r[12] = rbrew_read16(cpu->mem, _t24);
|
|
/* 022BD700 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000012u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BD700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD704 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD704 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022BD704 */ if (_t26) goto L_022BD708; else goto L_022BD714;
|
|
L_022BD708: ; // 0x22bd708
|
|
/* 022BD708 */ cpu->r[3] = cpu->r[31] + 0x000002B0u;
|
|
/* 022BD70C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD710 */ Gambit_fn_023F9D48(cpu);
|
|
L_022BD714: ; // 0x22bd714
|
|
/* 022BD714 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BD718 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD718 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BD71C */ cpu->lr = cpu->r[0];
|
|
/* 022BD720 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BD724 */ return;
|
|
}
|
|
|
|
// fn_022BD688 @ 0x22bd688
|
|
void Gambit_fn_022BD688(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _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_022BD688: ; // 0x22bd688
|
|
/* 022BD688 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BD688 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD688 */ cpu->r[1] = _t0;
|
|
/* 022BD68C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD68C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD690 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD694 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD694 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD698 */ _t3 = cpu->r[31] + 0x00000148u;
|
|
/* 022BD698 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022BD69C */ _t4 = cpu->r[31] + 0x00000144u;
|
|
/* 022BD69C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022BD6A0 */ _t5 = cpu->r[31] + 0x000002D4u;
|
|
/* 022BD6A0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022BD6A4 */ _t6 = cpu->r[31] + 0x000002D0u;
|
|
/* 022BD6A4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 022BD6A8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD6AC */ _t7 = cpu->r[31] + 0x00000140u;
|
|
/* 022BD6AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BD6B0 */ _t8 = cpu->r[12] + 0x00004340u;
|
|
/* 022BD6B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BD6B4 */ _t9 = cpu->r[31] + 0x000002CCu;
|
|
/* 022BD6B4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 022BD6B8 */ cpu->r[3] = cpu->r[31] + 0x000002B0u;
|
|
/* 022BD6BC */ _t10 = cpu->r[31] + 0x000002D8u;
|
|
/* 022BD6BC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022BD6C0 */ Gambit_fn_023E4504(cpu);
|
|
/* 022BD6C4 */ cpu->r[0] = 0x00000000u;
|
|
/* 022BD6C8 */ _t11 = cpu->r[31] + 0x00000070u;
|
|
/* 022BD6C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BD6CC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022BD6CC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 022BD6D0 */ _t13 = cpu->r[11] + 0x00000044u;
|
|
/* 022BD6D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BD6D4 */ _t14 = cpu->r[12] + 0x00000000u;
|
|
/* 022BD6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BD6D8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BD6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BD6DC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD6DC */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BD6DC */ if (_t16) goto L_022BD708; else goto L_022BD6E0;
|
|
L_022BD6E0: ; // 0x22bd6e0
|
|
/* 022BD6E0 */ _t17 = cpu->r[11] + 0x00000044u;
|
|
/* 022BD6E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BD6E4 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 022BD6E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BD6E8 */ _t19 = cpu->r[12] + 0x0000015Cu;
|
|
/* 022BD6E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BD6EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 022BD6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD6F0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD6F0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022BD6F0 */ if (_t21) goto L_022BD708; else goto L_022BD6F4;
|
|
L_022BD6F4: ; // 0x22bd6f4
|
|
/* 022BD6F4 */ _t22 = cpu->r[11] + 0x00000044u;
|
|
/* 022BD6F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BD6F8 */ _t23 = cpu->r[12] + 0x00000004u;
|
|
/* 022BD6F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BD6FC */ _t24 = cpu->r[11] + 0x0000008Cu;
|
|
/* 022BD6FC */ cpu->r[12] = rbrew_read16(cpu->mem, _t24);
|
|
/* 022BD700 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000012u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BD700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD704 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD704 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022BD704 */ if (_t26) goto L_022BD708; else goto L_022BD714;
|
|
L_022BD708: ; // 0x22bd708
|
|
/* 022BD708 */ cpu->r[3] = cpu->r[31] + 0x000002B0u;
|
|
/* 022BD70C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BD710 */ Gambit_fn_023F9D48(cpu);
|
|
L_022BD714: ; // 0x22bd714
|
|
/* 022BD714 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BD718 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD718 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BD71C */ cpu->lr = cpu->r[0];
|
|
/* 022BD720 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BD724 */ return;
|
|
}
|
|
|
|
// fn_022BD728 @ 0x22bd728
|
|
void Gambit_fn_022BD728(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022BD728: ; // 0x22bd728
|
|
/* 022BD728 */ cpu->r[0] = cpu->lr;
|
|
/* 022BD72C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BD72C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD72C */ cpu->r[1] = _t0;
|
|
/* 022BD730 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD730 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD734 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD738 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD738 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD73C */ _t3 = cpu->r[31] + 0x000001A4u;
|
|
/* 022BD73C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022BD740 */ /* nop */
|
|
/* 022BD744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022BD748 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD748 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BD748 */ if (_t5) goto L_022BD788; else goto L_022BD74C;
|
|
L_022BD74C: ; // 0x22bd74c
|
|
/* 022BD74C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD74C */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BD74C */ if (_t7) goto L_022BD76C; else goto L_022BD750;
|
|
L_022BD750: ; // 0x22bd750
|
|
/* 022BD750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022BD754 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD754 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022BD754 */ if (_t9) goto L_022BD7A4; else goto L_022BD758;
|
|
L_022BD758: ; // 0x22bd758
|
|
/* 022BD758 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD75C */ Gambit_fn_022BD528(cpu);
|
|
/* 022BD760 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD764 */ Gambit_fn_022BD684(cpu);
|
|
/* 022BD768 */ goto L_022BD7BC;
|
|
L_022BD76C: ; // 0x22bd76c
|
|
/* 022BD76C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD770 */ Gambit_fn_022BCD70(cpu);
|
|
/* 022BD774 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD778 */ Gambit_fn_022BD528(cpu);
|
|
/* 022BD77C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD780 */ Gambit_fn_022BD684(cpu);
|
|
/* 022BD784 */ goto L_022BD7BC;
|
|
L_022BD788: ; // 0x22bd788
|
|
/* 022BD788 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD78C */ Gambit_fn_022BD3A0(cpu);
|
|
/* 022BD790 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD794 */ Gambit_fn_022BD528(cpu);
|
|
/* 022BD798 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD79C */ Gambit_fn_022BD684(cpu);
|
|
/* 022BD7A0 */ goto L_022BD7BC;
|
|
L_022BD7A4: ; // 0x22bd7a4
|
|
/* 022BD7A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD7A8 */ Gambit_fn_022BD49C(cpu);
|
|
/* 022BD7AC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD7B0 */ Gambit_fn_022BD528(cpu);
|
|
/* 022BD7B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD7B8 */ Gambit_fn_022BD684(cpu);
|
|
L_022BD7BC: ; // 0x22bd7bc
|
|
/* 022BD7BC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD7BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BD7C0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD7C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BD7C4 */ cpu->lr = cpu->r[0];
|
|
/* 022BD7C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BD7CC */ return;
|
|
}
|
|
|
|
// fn_022BD72C @ 0x22bd72c
|
|
void Gambit_fn_022BD72C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022BD72C: ; // 0x22bd72c
|
|
/* 022BD72C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BD72C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD72C */ cpu->r[1] = _t0;
|
|
/* 022BD730 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD730 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BD734 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD738 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD738 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BD73C */ _t3 = cpu->r[31] + 0x000001A4u;
|
|
/* 022BD73C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022BD740 */ /* nop */
|
|
/* 022BD744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022BD748 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD748 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BD748 */ if (_t5) goto L_022BD788; else goto L_022BD74C;
|
|
L_022BD74C: ; // 0x22bd74c
|
|
/* 022BD74C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD74C */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BD74C */ if (_t7) goto L_022BD76C; else goto L_022BD750;
|
|
L_022BD750: ; // 0x22bd750
|
|
/* 022BD750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022BD754 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD754 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022BD754 */ if (_t9) goto L_022BD7A4; else goto L_022BD758;
|
|
L_022BD758: ; // 0x22bd758
|
|
/* 022BD758 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD75C */ Gambit_fn_022BD528(cpu);
|
|
/* 022BD760 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD764 */ Gambit_fn_022BD684(cpu);
|
|
/* 022BD768 */ goto L_022BD7BC;
|
|
L_022BD76C: ; // 0x22bd76c
|
|
/* 022BD76C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD770 */ Gambit_fn_022BCD70(cpu);
|
|
/* 022BD774 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD778 */ Gambit_fn_022BD528(cpu);
|
|
/* 022BD77C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD780 */ Gambit_fn_022BD684(cpu);
|
|
/* 022BD784 */ goto L_022BD7BC;
|
|
L_022BD788: ; // 0x22bd788
|
|
/* 022BD788 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD78C */ Gambit_fn_022BD3A0(cpu);
|
|
/* 022BD790 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD794 */ Gambit_fn_022BD528(cpu);
|
|
/* 022BD798 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD79C */ Gambit_fn_022BD684(cpu);
|
|
/* 022BD7A0 */ goto L_022BD7BC;
|
|
L_022BD7A4: ; // 0x22bd7a4
|
|
/* 022BD7A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD7A8 */ Gambit_fn_022BD49C(cpu);
|
|
/* 022BD7AC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD7B0 */ Gambit_fn_022BD528(cpu);
|
|
/* 022BD7B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD7B8 */ Gambit_fn_022BD684(cpu);
|
|
L_022BD7BC: ; // 0x22bd7bc
|
|
/* 022BD7BC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022BD7BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BD7C0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BD7C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BD7C4 */ cpu->lr = cpu->r[0];
|
|
/* 022BD7C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BD7CC */ return;
|
|
}
|
|
|
|
// fn_022BD7D0 @ 0x22bd7d0
|
|
void Gambit_fn_022BD7D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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;
|
|
|
|
L_022BD7D0: ; // 0x22bd7d0
|
|
/* 022BD7D0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022BD7D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BD7D0 */ cpu->r[1] = _t0;
|
|
/* 022BD7D4 */ /* nop */
|
|
/* 022BD7D8 */ cpu->r[0] = cpu->lr;
|
|
/* 022BD7DC */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 022BD7DC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BD7E0 */ /* nop */
|
|
/* 022BD7E4 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 022BD7E4 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BD7E8 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022BD7E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BD7EC */ cpu->r[29] = cpu->r[3];
|
|
/* 022BD7F0 */ cpu->r[7] = 0x10060000u;
|
|
/* 022BD7F4 */ _t4 = cpu->r[7] + 0x000042C8u;
|
|
/* 022BD7F4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022BD7F8 */ _t5 = cpu->r[29] + 0x0000009Cu;
|
|
/* 022BD7F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BD7FC */ cpu->r[26] = 0x101D0000u;
|
|
/* 022BD800 */ cpu->r[27] = 0x101D0000u;
|
|
/* 022BD804 */ cpu->r[28] = 0x10060000u;
|
|
/* 022BD808 */ cpu->r[12] = rbrew_rlwinm(cpu->r[11], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BD808 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BD80C */ cpu->r[28] = cpu->r[28] + 0x000041D8u;
|
|
/* 022BD810 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD810 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BD810 */ if (_t7) goto L_022BD81C; else goto L_022BD814;
|
|
L_022BD814: ; // 0x22bd814
|
|
/* 022BD814 */ cpu->f[13] = cpu->f[31];
|
|
/* 022BD818 */ goto L_022BD88C;
|
|
L_022BD81C: ; // 0x22bd81c
|
|
/* 022BD81C */ cpu->r[3] = cpu->r[29];
|
|
/* 022BD820 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BD824 */ _t8 = cpu->r[27] + 0x000001B0u;
|
|
/* 022BD824 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BD828 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD82C */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD830 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD830 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BD830 */ if (_t10) goto L_022BD834; else goto L_022BD840;
|
|
L_022BD834: ; // 0x22bd834
|
|
/* 022BD834 */ _t11 = cpu->r[26] + 0x000001ACu;
|
|
/* 022BD834 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 022BD838 */ cpu->r[7] = 0x00000001u;
|
|
/* 022BD83C */ _t12 = cpu->r[27] + 0x000001B0u;
|
|
/* 022BD83C */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
L_022BD840: ; // 0x22bd840
|
|
/* 022BD840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BD844 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD844 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BD844 */ if (_t14) goto L_022BD868; else goto L_022BD848;
|
|
L_022BD848: ; // 0x22bd848
|
|
/* 022BD848 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 022BD848 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BD84C */ _t16 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022BD84C */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BD850 */ cpu->ctr = cpu->r[9];
|
|
/* 022BD854 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD858 */ cpu->r[4] = cpu->r[26] + 0x000001ACu;
|
|
/* 022BD85C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BD860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD864 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD864 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BD864 */ if (_t18) goto L_022BD868; else goto L_022BD86C;
|
|
L_022BD868: ; // 0x22bd868
|
|
/* 022BD868 */ cpu->r[31] = 0x00000000u;
|
|
L_022BD86C: ; // 0x22bd86c
|
|
/* 022BD86C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BD870 */ _t19 = cpu->r[29] + 0x0000023Cu;
|
|
/* 022BD870 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BD874 */ _t20 = cpu->r[12] + 0x00004340u;
|
|
/* 022BD874 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022BD878 */ _t21 = cpu->r[31] + 0x00000EC4u;
|
|
/* 022BD878 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022BD87C */ cpu->f[13] = cpu->f[11] + cpu->f[0];
|
|
/* 022BD880 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022BD884 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD884 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022BD884 */ if (_t23) goto L_022BD888; else goto L_022BD88C;
|
|
L_022BD888: ; // 0x22bd888
|
|
/* 022BD888 */ cpu->f[13] = cpu->f[12];
|
|
L_022BD88C: ; // 0x22bd88c
|
|
/* 022BD88C */ cpu->r[3] = cpu->r[29];
|
|
/* 022BD890 */ _t24 = cpu->r[29] + 0x0000023Cu;
|
|
/* 022BD890 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 022BD894 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BD898 */ _t25 = cpu->r[27] + 0x000001B0u;
|
|
/* 022BD898 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022BD89C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022BD8A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD8A4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD8A4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BD8A4 */ if (_t27) goto L_022BD8A8; else goto L_022BD8B4;
|
|
L_022BD8A8: ; // 0x22bd8a8
|
|
/* 022BD8A8 */ _t28 = cpu->r[26] + 0x000001ACu;
|
|
/* 022BD8A8 */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 022BD8AC */ cpu->r[0] = 0x00000001u;
|
|
/* 022BD8B0 */ _t29 = cpu->r[27] + 0x000001B0u;
|
|
/* 022BD8B0 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
L_022BD8B4: ; // 0x22bd8b4
|
|
/* 022BD8B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BD8B8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD8B8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022BD8B8 */ if (_t31) goto L_022BD8DC; else goto L_022BD8BC;
|
|
L_022BD8BC: ; // 0x22bd8bc
|
|
/* 022BD8BC */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 022BD8BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022BD8C0 */ _t33 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022BD8C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BD8C4 */ cpu->ctr = cpu->r[7];
|
|
/* 022BD8C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD8CC */ cpu->r[4] = cpu->r[26] + 0x000001ACu;
|
|
/* 022BD8D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BD8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD8D8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD8D8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022BD8D8 */ if (_t35) goto L_022BD8DC; else goto L_022BD8E0;
|
|
L_022BD8DC: ; // 0x22bd8dc
|
|
/* 022BD8DC */ cpu->r[31] = 0x00000000u;
|
|
L_022BD8E0: ; // 0x22bd8e0
|
|
/* 022BD8E0 */ _t36 = cpu->r[29] + 0x0000023Cu;
|
|
/* 022BD8E0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022BD8E4 */ _t37 = cpu->r[31] + 0x00000EC4u;
|
|
/* 022BD8E4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022BD8E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[13]);
|
|
/* 022BD8EC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD8EC */ _t39 = _t38 & 0x00000001u;
|
|
/* 022BD8EC */ if (_t39) goto L_022BD8F0; else goto L_022BD9D4;
|
|
L_022BD8F0: ; // 0x22bd8f0
|
|
/* 022BD8F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022BD8F4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BD8F8 */ _t40 = cpu->r[27] + 0x000001B0u;
|
|
/* 022BD8F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BD8FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD900 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BD904 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD904 */ _t42 = _t41 & 0x00000001u;
|
|
/* 022BD904 */ if (_t42) goto L_022BD908; else goto L_022BD914;
|
|
L_022BD908: ; // 0x22bd908
|
|
/* 022BD908 */ _t43 = cpu->r[26] + 0x000001ACu;
|
|
/* 022BD908 */ rbrew_write32(cpu->mem, _t43, cpu->r[28]);
|
|
/* 022BD90C */ cpu->r[9] = 0x00000001u;
|
|
/* 022BD910 */ _t44 = cpu->r[27] + 0x000001B0u;
|
|
/* 022BD910 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
L_022BD914: ; // 0x22bd914
|
|
/* 022BD914 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BD918 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD918 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022BD918 */ if (_t46) goto L_022BD93C; else goto L_022BD91C;
|
|
L_022BD91C: ; // 0x22bd91c
|
|
/* 022BD91C */ _t47 = cpu->r[31] + 0x00000000u;
|
|
/* 022BD91C */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022BD920 */ _t48 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022BD920 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022BD924 */ cpu->ctr = cpu->r[0];
|
|
/* 022BD928 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BD92C */ cpu->r[4] = cpu->r[26] + 0x000001ACu;
|
|
/* 022BD930 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BD934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD938 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD938 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022BD938 */ if (_t50) goto L_022BD93C; else goto L_022BD940;
|
|
L_022BD93C: ; // 0x22bd93c
|
|
/* 022BD93C */ cpu->r[31] = 0x00000000u;
|
|
L_022BD940: ; // 0x22bd940
|
|
/* 022BD940 */ cpu->r[3] = cpu->r[29];
|
|
/* 022BD944 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BD948 */ _t51 = cpu->r[27] + 0x000001B0u;
|
|
/* 022BD948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022BD94C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BD950 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BD954 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD954 */ _t53 = _t52 & 0x00000001u;
|
|
/* 022BD954 */ if (_t53) goto L_022BD958; else goto L_022BD964;
|
|
L_022BD958: ; // 0x22bd958
|
|
/* 022BD958 */ _t54 = cpu->r[26] + 0x000001ACu;
|
|
/* 022BD958 */ rbrew_write32(cpu->mem, _t54, cpu->r[28]);
|
|
/* 022BD95C */ cpu->r[8] = 0x00000001u;
|
|
/* 022BD960 */ _t55 = cpu->r[27] + 0x000001B0u;
|
|
/* 022BD960 */ rbrew_write32(cpu->mem, _t55, cpu->r[8]);
|
|
L_022BD964: ; // 0x22bd964
|
|
/* 022BD964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BD968 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD968 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022BD968 */ if (_t57) goto L_022BD98C; else goto L_022BD96C;
|
|
L_022BD96C: ; // 0x22bd96c
|
|
/* 022BD96C */ _t58 = cpu->r[30] + 0x00000000u;
|
|
/* 022BD96C */ cpu->r[9] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022BD970 */ _t59 = cpu->r[9] + 0x0000006Cu;
|
|
/* 022BD970 */ cpu->r[10] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022BD974 */ cpu->ctr = cpu->r[10];
|
|
/* 022BD978 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BD97C */ cpu->r[4] = cpu->r[26] + 0x000001ACu;
|
|
/* 022BD980 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BD984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BD988 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BD988 */ _t61 = _t60 & 0x00000001u;
|
|
/* 022BD988 */ if (_t61) goto L_022BD98C; else goto L_022BD990;
|
|
L_022BD98C: ; // 0x22bd98c
|
|
/* 022BD98C */ cpu->r[30] = 0x00000000u;
|
|
L_022BD990: ; // 0x22bd990
|
|
/* 022BD990 */ _t62 = cpu->r[31] + 0x00000E64u;
|
|
/* 022BD990 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022BD994 */ _t63 = cpu->r[30] + 0x00000F24u;
|
|
/* 022BD994 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022BD998 */ cpu->f[13] = cpu->f[10] / cpu->f[11];
|
|
/* 022BD99C */ _t64 = cpu->r[29] + 0x00000238u;
|
|
/* 022BD99C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022BD9A0 */ cpu->f[0] = cpu->f[0] - cpu->f[13];
|
|
/* 022BD9A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[0]);
|
|
/* 022BD9A8 */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BD9A8 */ _t66 = _t65 & 0x00000001u;
|
|
/* 022BD9A8 */ if (_t66) goto L_022BD9D0; else goto L_022BD9AC;
|
|
L_022BD9AC: ; // 0x22bd9ac
|
|
/* 022BD9AC */ _t67 = cpu->r[29] + 0x00000238u;
|
|
/* 022BD9AC */ rbrew_write_f32(cpu->mem, _t67, cpu->f[0]);
|
|
/* 022BD9B0 */ /* nop */
|
|
/* 022BD9B4 */ _t68 = cpu->r[1] + 0x00000028u;
|
|
/* 022BD9B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022BD9B8 */ _t69 = cpu->r[1] + 0x00000020u;
|
|
/* 022BD9B8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t69);
|
|
/* 022BD9BC */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD9BC */ _t71 = _t70 & 0x00000001u;
|
|
/* 022BD9BC */ if (_t71) goto L_022BD9C0; // else: addr-0 trap, fall-through
|
|
L_022BD9C0: ; // 0x22bd9c0
|
|
/* 022BD9C0 */ _t72 = cpu->r[1] + 0x00000034u;
|
|
/* 022BD9C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022BD9C4 */ cpu->lr = cpu->r[0];
|
|
/* 022BD9C8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022BD9CC */ return;
|
|
L_022BD9D0: ; // 0x22bd9d0
|
|
/* 022BD9D0 */ _t73 = cpu->r[29] + 0x00000238u;
|
|
/* 022BD9D0 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[31]);
|
|
L_022BD9D4: ; // 0x22bd9d4
|
|
/* 022BD9D4 */ /* nop */
|
|
/* 022BD9D8 */ _t74 = cpu->r[1] + 0x00000028u;
|
|
/* 022BD9D8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022BD9DC */ _t75 = cpu->r[1] + 0x00000020u;
|
|
/* 022BD9DC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 022BD9E0 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BD9E0 */ _t77 = _t76 & 0x00000001u;
|
|
/* 022BD9E0 */ if (_t77) goto L_022BD9E4; // else: addr-0 trap, fall-through
|
|
L_022BD9E4: ; // 0x22bd9e4
|
|
/* 022BD9E4 */ _t78 = cpu->r[1] + 0x00000034u;
|
|
/* 022BD9E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022BD9E8 */ cpu->lr = cpu->r[0];
|
|
/* 022BD9EC */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022BD9F0 */ return;
|
|
}
|
|
|
|
// fn_022BD9F4 @ 0x22bd9f4
|
|
void Gambit_fn_022BD9F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BD9F4: ; // 0x22bd9f4
|
|
/* 022BD9F4 */ _t0 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BD9F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BD9F8 */ _t1 = cpu->r[12] + 0x000046CCu;
|
|
/* 022BD9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BD9FC */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 022BDA00 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 022BDA04 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 022BDA08 */ return;
|
|
}
|
|
|
|
// fn_022BDA0C @ 0x22bda0c
|
|
void Gambit_fn_022BDA0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BDA0C: ; // 0x22bda0c
|
|
/* 022BDA0C */ _t0 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BDA0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BDA10 */ _t1 = cpu->r[12] + 0x000046CCu;
|
|
/* 022BDA10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BDA14 */ cpu->r[12] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022BDA18 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022BDA1C */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 022BDA20 */ return;
|
|
}
|
|
|
|
// fn_022BDA24 @ 0x22bda24
|
|
void Gambit_fn_022BDA24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022BDA24: ; // 0x22bda24
|
|
/* 022BDA24 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BDA28 */ _t0 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BDA28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022BDA2C */ _t1 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BDA2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BDA30 */ _t2 = cpu->r[12] + 0x00004700u;
|
|
/* 022BDA30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BDA34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BDA38 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BDA38 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BDA38 */ if (_t4) goto L_022BDA3C; else goto L_022BDA44;
|
|
L_022BDA3C: ; // 0x22bda3c
|
|
/* 022BDA3C */ _t5 = cpu->r[12] + 0x00004700u;
|
|
/* 022BDA3C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BDA40 */ return;
|
|
L_022BDA44: ; // 0x22bda44
|
|
/* 022BDA44 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BDA48 */ _t6 = cpu->r[12] + 0x00004340u;
|
|
/* 022BDA48 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022BDA4C */ return;
|
|
}
|
|
|
|
// fn_022BDA50 @ 0x22bda50
|
|
void Gambit_fn_022BDA50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90;
|
|
double _ft65, _ft66;
|
|
|
|
L_022BDA50: ; // 0x22bda50
|
|
/* 022BDA50 */ cpu->r[0] = cpu->lr;
|
|
/* 022BDA54 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 022BDA54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BDA54 */ cpu->r[1] = _t0;
|
|
/* 022BDA58 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDA58 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BDA5C */ /* nop */
|
|
/* 022BDA60 */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 022BDA60 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022BDA64 */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 022BDA64 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022BDA68 */ _t4 = cpu->r[1] + 0x00000058u;
|
|
/* 022BDA68 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022BDA6C */ _t5 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BDA6C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022BDA70 */ _t6 = cpu->r[1] + 0x00000074u;
|
|
/* 022BDA70 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022BDA74 */ cpu->r[29] = cpu->r[3];
|
|
/* 022BDA78 */ _t7 = cpu->r[29] + 0x0000005Cu;
|
|
/* 022BDA78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BDA7C */ _t8 = cpu->r[8] + 0x000046DCu;
|
|
/* 022BDA7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BDA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 022BDA84 */ cpu->r[30] = cpu->r[4];
|
|
/* 022BDA88 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDA88 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BDA88 */ if (_t10) goto L_022BDA8C; else goto L_022BDC50;
|
|
L_022BDA8C: ; // 0x22bda8c
|
|
/* 022BDA8C */ cpu->r[3] = cpu->r[29];
|
|
/* 022BDA90 */ Gambit_fn_022BC350(cpu);
|
|
/* 022BDA94 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 022BDA94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BDA98 */ _t12 = cpu->r[1] + 0x00000038u;
|
|
/* 022BDA98 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 022BDA9C */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 022BDA9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BDAA0 */ /* nop */
|
|
/* 022BDAA4 */ _t14 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BDAA4 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 022BDAA8 */ /* nop */
|
|
/* 022BDAAC */ _t15 = cpu->r[3] + 0x00000008u;
|
|
/* 022BDAAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BDAB0 */ /* nop */
|
|
/* 022BDAB4 */ _t16 = cpu->r[29] + 0x0000018Cu;
|
|
/* 022BDAB4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BDAB8 */ _t17 = cpu->r[1] + 0x00000040u;
|
|
/* 022BDAB8 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022BDABC */ _t18 = cpu->r[1] + 0x00000040u;
|
|
/* 022BDABC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BDAC0 */ /* nop */
|
|
/* 022BDAC4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022BDAC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BDAC8 */ cpu->f[10] = cpu->f[13] - cpu->f[8];
|
|
/* 022BDACC */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 022BDACC */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BDAD0 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 022BDAD0 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 022BDAD4 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BDAD4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[10]);
|
|
/* 022BDAD8 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BDAD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BDADC */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BDADC */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 022BDAE0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022BDAE4 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDAE4 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 022BDAE8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BDAEC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BDAF0 */ _t26 = cpu->r[12] + 0x000001B0u;
|
|
/* 022BDAF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022BDAF0 */ cpu->r[12] = _t26;
|
|
/* 022BDAF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BDAF8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BDAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022BDB00 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BDB04 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDB04 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022BDB04 */ if (_t28) goto L_022BDB08; else goto L_022BDB1C;
|
|
L_022BDB08: ; // 0x22bdb08
|
|
/* 022BDB08 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BDB0C */ cpu->r[9] = 0x00000001u;
|
|
/* 022BDB10 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BDB14 */ _t29 = cpu->r[12] + 0x00000000u;
|
|
/* 022BDB14 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 022BDB18 */ _t30 = cpu->r[4] + 0x00000000u;
|
|
/* 022BDB18 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_022BDB1C: ; // 0x22bdb1c
|
|
/* 022BDB1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BDB20 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDB20 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BDB20 */ if (_t32) goto L_022BDB40; else goto L_022BDB24;
|
|
L_022BDB24: ; // 0x22bdb24
|
|
/* 022BDB24 */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 022BDB24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BDB28 */ _t34 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022BDB28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BDB2C */ cpu->ctr = cpu->r[7];
|
|
/* 022BDB30 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BDB34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BDB38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BDB3C */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDB3C */ _t36 = _t35 & 0x00000001u;
|
|
/* 022BDB3C */ if (_t36) goto L_022BDB40; else goto L_022BDB44;
|
|
L_022BDB40: ; // 0x22bdb40
|
|
/* 022BDB40 */ cpu->r[31] = 0x00000000u;
|
|
L_022BDB44: ; // 0x22bdb44
|
|
/* 022BDB44 */ _t37 = cpu->r[31] + 0x00001044u;
|
|
/* 022BDB44 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022BDB48 */ _t38 = cpu->r[29] + 0x00000148u;
|
|
/* 022BDB48 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022BDB4C */ /* nop */
|
|
/* 022BDB50 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDB50 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022BDB54 */ /* nop */
|
|
/* 022BDB58 */ /* nop */
|
|
/* 022BDB5C */ cpu->f[13] = cpu->f[13] * cpu->f[7];
|
|
/* 022BDB60 */ _t40 = cpu->r[1] + 0x00000040u;
|
|
/* 022BDB60 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BDB64 */ /* nop */
|
|
/* 022BDB68 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDB68 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
/* 022BDB6C */ cpu->f[8] = cpu->f[10] + cpu->f[13];
|
|
/* 022BDB70 */ /* nop */
|
|
/* 022BDB74 */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 022BDB74 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022BDB78 */ _t43 = cpu->r[1] + 0x00000028u;
|
|
/* 022BDB78 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[8]);
|
|
/* 022BDB7C */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 022BDB7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BDB80 */ _t45 = cpu->r[1] + 0x00000020u;
|
|
/* 022BDB80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022BDB84 */ _t46 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BDB84 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 022BDB88 */ _t47 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BDB88 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BDB8C */ _t48 = cpu->r[1] + 0x00000044u;
|
|
/* 022BDB8C */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 022BDB90 */ cpu->f[9] = cpu->f[10] - cpu->f[11];
|
|
/* 022BDB94 */ _t49 = cpu->r[1] + 0x00000048u;
|
|
/* 022BDB94 */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 022BDB98 */ /* nop */
|
|
/* 022BDB9C */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 022BDB9C */ rbrew_write_f32(cpu->mem, _t50, cpu->f[9]);
|
|
/* 022BDBA0 */ /* nop */
|
|
/* 022BDBA4 */ _t51 = cpu->r[1] + 0x00000034u;
|
|
/* 022BDBA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022BDBA8 */ /* nop */
|
|
/* 022BDBAC */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BDBAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022BDBB0 */ _t53 = cpu->r[1] + 0x00000030u;
|
|
/* 022BDBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022BDBB4 */ _t54 = cpu->r[30] + 0x00000000u;
|
|
/* 022BDBB4 */ rbrew_write32(cpu->mem, _t54, cpu->r[12]);
|
|
/* 022BDBB8 */ _t55 = cpu->r[30] + 0x00000004u;
|
|
/* 022BDBB8 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 022BDBBC */ _t56 = cpu->r[30] + 0x00000004u;
|
|
/* 022BDBBC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022BDBC0 */ _t57 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDBC0 */ rbrew_write32(cpu->mem, _t57, cpu->r[7]);
|
|
/* 022BDBC4 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 022BDBC8 */ _t58 = cpu->r[30] + 0x00000000u;
|
|
/* 022BDBC8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022BDBCC */ _t59 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDBCC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022BDBD0 */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[11]);
|
|
/* 022BDBD4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BDBD8 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[0]);
|
|
/* 022BDBDC */ _t60 = cpu->r[11] + 0x000042C8u;
|
|
/* 022BDBDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022BDBE0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 022BDBE4 */ /* nop */
|
|
/* 022BDBE8 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BDBE8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022BDBE8 */ if (_t62) goto L_022BDBEC; else goto L_022BDC68;
|
|
L_022BDBEC: ; // 0x22bdbec
|
|
/* 022BDBEC */ cpu->r[9] = 0x10060000u;
|
|
/* 022BDBF0 */ cpu->r[7] = 0x10060000u;
|
|
/* 022BDBF4 */ _t63 = cpu->r[9] + 0x00004374u;
|
|
/* 022BDBF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022BDBF8 */ _t64 = cpu->r[7] + 0x00004378u;
|
|
/* 022BDBF8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022BDBFC */ _ft65 = sqrt(cpu->f[9]);
|
|
/* 022BDBFC */ _ft66 = (double)(int32_t)0x00000001u;
|
|
/* 022BDBFC */ cpu->f[11] = _ft66 / _ft65;
|
|
/* 022BDC00 */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 022BDC04 */ cpu->f[0] = cpu->f[11] * cpu->f[13];
|
|
/* 022BDC08 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[9], -(cpu->f[12]));
|
|
/* 022BDC0C */ cpu->f[11] = cpu->f[10] * cpu->f[0];
|
|
/* 022BDC10 */ _t67 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDC10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022BDC14 */ /* nop */
|
|
/* 022BDC18 */ cpu->f[13] = cpu->f[13] * cpu->f[11];
|
|
/* 022BDC1C */ /* nop */
|
|
/* 022BDC20 */ _t68 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDC20 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[13]);
|
|
/* 022BDC24 */ /* nop */
|
|
/* 022BDC28 */ _t69 = cpu->r[1] + 0x00000054u;
|
|
/* 022BDC28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022BDC2C */ _t70 = cpu->r[1] + 0x00000068u;
|
|
/* 022BDC2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022BDC30 */ _t71 = cpu->r[1] + 0x00000058u;
|
|
/* 022BDC30 */ cpu->r[30] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022BDC34 */ _t72 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDC34 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t72);
|
|
/* 022BDC38 */ _t73 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BDC38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022BDC3C */ _t74 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDC3C */ _t75 = _t74 & 0x00000001u;
|
|
/* 022BDC3C */ if (_t75) goto L_022BDC40; // else: addr-0 trap, fall-through
|
|
L_022BDC40: ; // 0x22bdc40
|
|
/* 022BDC40 */ _t76 = cpu->r[1] + 0x00000074u;
|
|
/* 022BDC40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022BDC44 */ cpu->lr = cpu->r[0];
|
|
/* 022BDC48 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 022BDC4C */ return;
|
|
L_022BDC50: ; // 0x22bdc50
|
|
/* 022BDC50 */ _t77 = cpu->r[29] + 0x00000134u;
|
|
/* 022BDC50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022BDC54 */ _t78 = cpu->r[30] + 0x00000000u;
|
|
/* 022BDC54 */ rbrew_write32(cpu->mem, _t78, cpu->r[9]);
|
|
/* 022BDC58 */ _t79 = cpu->r[29] + 0x00000138u;
|
|
/* 022BDC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022BDC5C */ _t80 = cpu->r[30] + 0x00000004u;
|
|
/* 022BDC5C */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 022BDC60 */ _t81 = cpu->r[29] + 0x0000013Cu;
|
|
/* 022BDC60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022BDC64 */ _t82 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDC64 */ rbrew_write32(cpu->mem, _t82, cpu->r[0]);
|
|
L_022BDC68: ; // 0x22bdc68
|
|
/* 022BDC68 */ _t83 = cpu->r[1] + 0x00000054u;
|
|
/* 022BDC68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t83);
|
|
/* 022BDC6C */ _t84 = cpu->r[1] + 0x00000068u;
|
|
/* 022BDC6C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 022BDC70 */ _t85 = cpu->r[1] + 0x00000058u;
|
|
/* 022BDC70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t85);
|
|
/* 022BDC74 */ _t86 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDC74 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t86);
|
|
/* 022BDC78 */ _t87 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BDC78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022BDC7C */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDC7C */ _t89 = _t88 & 0x00000001u;
|
|
/* 022BDC7C */ if (_t89) goto L_022BDC80; // else: addr-0 trap, fall-through
|
|
L_022BDC80: ; // 0x22bdc80
|
|
/* 022BDC80 */ _t90 = cpu->r[1] + 0x00000074u;
|
|
/* 022BDC80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022BDC84 */ cpu->lr = cpu->r[0];
|
|
/* 022BDC88 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 022BDC8C */ return;
|
|
}
|
|
|
|
// fn_022BDA54 @ 0x22bda54
|
|
void Gambit_fn_022BDA54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90;
|
|
double _ft65, _ft66;
|
|
|
|
L_022BDA54: ; // 0x22bda54
|
|
/* 022BDA54 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 022BDA54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BDA54 */ cpu->r[1] = _t0;
|
|
/* 022BDA58 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDA58 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BDA5C */ /* nop */
|
|
/* 022BDA60 */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 022BDA60 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022BDA64 */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 022BDA64 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022BDA68 */ _t4 = cpu->r[1] + 0x00000058u;
|
|
/* 022BDA68 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022BDA6C */ _t5 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BDA6C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022BDA70 */ _t6 = cpu->r[1] + 0x00000074u;
|
|
/* 022BDA70 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022BDA74 */ cpu->r[29] = cpu->r[3];
|
|
/* 022BDA78 */ _t7 = cpu->r[29] + 0x0000005Cu;
|
|
/* 022BDA78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BDA7C */ _t8 = cpu->r[8] + 0x000046DCu;
|
|
/* 022BDA7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BDA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 022BDA84 */ cpu->r[30] = cpu->r[4];
|
|
/* 022BDA88 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDA88 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BDA88 */ if (_t10) goto L_022BDA8C; else goto L_022BDC50;
|
|
L_022BDA8C: ; // 0x22bda8c
|
|
/* 022BDA8C */ cpu->r[3] = cpu->r[29];
|
|
/* 022BDA90 */ Gambit_fn_022BC350(cpu);
|
|
/* 022BDA94 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 022BDA94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BDA98 */ _t12 = cpu->r[1] + 0x00000038u;
|
|
/* 022BDA98 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 022BDA9C */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 022BDA9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BDAA0 */ /* nop */
|
|
/* 022BDAA4 */ _t14 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BDAA4 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 022BDAA8 */ /* nop */
|
|
/* 022BDAAC */ _t15 = cpu->r[3] + 0x00000008u;
|
|
/* 022BDAAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BDAB0 */ /* nop */
|
|
/* 022BDAB4 */ _t16 = cpu->r[29] + 0x0000018Cu;
|
|
/* 022BDAB4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BDAB8 */ _t17 = cpu->r[1] + 0x00000040u;
|
|
/* 022BDAB8 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022BDABC */ _t18 = cpu->r[1] + 0x00000040u;
|
|
/* 022BDABC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BDAC0 */ /* nop */
|
|
/* 022BDAC4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022BDAC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BDAC8 */ cpu->f[10] = cpu->f[13] - cpu->f[8];
|
|
/* 022BDACC */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 022BDACC */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BDAD0 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 022BDAD0 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 022BDAD4 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BDAD4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[10]);
|
|
/* 022BDAD8 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BDAD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BDADC */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BDADC */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 022BDAE0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022BDAE4 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDAE4 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 022BDAE8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BDAEC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BDAF0 */ _t26 = cpu->r[12] + 0x000001B0u;
|
|
/* 022BDAF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022BDAF0 */ cpu->r[12] = _t26;
|
|
/* 022BDAF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BDAF8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BDAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022BDB00 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BDB04 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDB04 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022BDB04 */ if (_t28) goto L_022BDB08; else goto L_022BDB1C;
|
|
L_022BDB08: ; // 0x22bdb08
|
|
/* 022BDB08 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BDB0C */ cpu->r[9] = 0x00000001u;
|
|
/* 022BDB10 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BDB14 */ _t29 = cpu->r[12] + 0x00000000u;
|
|
/* 022BDB14 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 022BDB18 */ _t30 = cpu->r[4] + 0x00000000u;
|
|
/* 022BDB18 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_022BDB1C: ; // 0x22bdb1c
|
|
/* 022BDB1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BDB20 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDB20 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022BDB20 */ if (_t32) goto L_022BDB40; else goto L_022BDB24;
|
|
L_022BDB24: ; // 0x22bdb24
|
|
/* 022BDB24 */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 022BDB24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BDB28 */ _t34 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022BDB28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BDB2C */ cpu->ctr = cpu->r[7];
|
|
/* 022BDB30 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BDB34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BDB38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BDB3C */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDB3C */ _t36 = _t35 & 0x00000001u;
|
|
/* 022BDB3C */ if (_t36) goto L_022BDB40; else goto L_022BDB44;
|
|
L_022BDB40: ; // 0x22bdb40
|
|
/* 022BDB40 */ cpu->r[31] = 0x00000000u;
|
|
L_022BDB44: ; // 0x22bdb44
|
|
/* 022BDB44 */ _t37 = cpu->r[31] + 0x00001044u;
|
|
/* 022BDB44 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022BDB48 */ _t38 = cpu->r[29] + 0x00000148u;
|
|
/* 022BDB48 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022BDB4C */ /* nop */
|
|
/* 022BDB50 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDB50 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022BDB54 */ /* nop */
|
|
/* 022BDB58 */ /* nop */
|
|
/* 022BDB5C */ cpu->f[13] = cpu->f[13] * cpu->f[7];
|
|
/* 022BDB60 */ _t40 = cpu->r[1] + 0x00000040u;
|
|
/* 022BDB60 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BDB64 */ /* nop */
|
|
/* 022BDB68 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDB68 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[13]);
|
|
/* 022BDB6C */ cpu->f[8] = cpu->f[10] + cpu->f[13];
|
|
/* 022BDB70 */ /* nop */
|
|
/* 022BDB74 */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 022BDB74 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022BDB78 */ _t43 = cpu->r[1] + 0x00000028u;
|
|
/* 022BDB78 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[8]);
|
|
/* 022BDB7C */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 022BDB7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BDB80 */ _t45 = cpu->r[1] + 0x00000020u;
|
|
/* 022BDB80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022BDB84 */ _t46 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BDB84 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 022BDB88 */ _t47 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BDB88 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BDB8C */ _t48 = cpu->r[1] + 0x00000044u;
|
|
/* 022BDB8C */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 022BDB90 */ cpu->f[9] = cpu->f[10] - cpu->f[11];
|
|
/* 022BDB94 */ _t49 = cpu->r[1] + 0x00000048u;
|
|
/* 022BDB94 */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 022BDB98 */ /* nop */
|
|
/* 022BDB9C */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 022BDB9C */ rbrew_write_f32(cpu->mem, _t50, cpu->f[9]);
|
|
/* 022BDBA0 */ /* nop */
|
|
/* 022BDBA4 */ _t51 = cpu->r[1] + 0x00000034u;
|
|
/* 022BDBA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022BDBA8 */ /* nop */
|
|
/* 022BDBAC */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BDBAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022BDBB0 */ _t53 = cpu->r[1] + 0x00000030u;
|
|
/* 022BDBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022BDBB4 */ _t54 = cpu->r[30] + 0x00000000u;
|
|
/* 022BDBB4 */ rbrew_write32(cpu->mem, _t54, cpu->r[12]);
|
|
/* 022BDBB8 */ _t55 = cpu->r[30] + 0x00000004u;
|
|
/* 022BDBB8 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 022BDBBC */ _t56 = cpu->r[30] + 0x00000004u;
|
|
/* 022BDBBC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022BDBC0 */ _t57 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDBC0 */ rbrew_write32(cpu->mem, _t57, cpu->r[7]);
|
|
/* 022BDBC4 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 022BDBC8 */ _t58 = cpu->r[30] + 0x00000000u;
|
|
/* 022BDBC8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022BDBCC */ _t59 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDBCC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022BDBD0 */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[11]);
|
|
/* 022BDBD4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BDBD8 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[0]);
|
|
/* 022BDBDC */ _t60 = cpu->r[11] + 0x000042C8u;
|
|
/* 022BDBDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022BDBE0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 022BDBE4 */ /* nop */
|
|
/* 022BDBE8 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BDBE8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022BDBE8 */ if (_t62) goto L_022BDBEC; else goto L_022BDC68;
|
|
L_022BDBEC: ; // 0x22bdbec
|
|
/* 022BDBEC */ cpu->r[9] = 0x10060000u;
|
|
/* 022BDBF0 */ cpu->r[7] = 0x10060000u;
|
|
/* 022BDBF4 */ _t63 = cpu->r[9] + 0x00004374u;
|
|
/* 022BDBF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022BDBF8 */ _t64 = cpu->r[7] + 0x00004378u;
|
|
/* 022BDBF8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022BDBFC */ _ft65 = sqrt(cpu->f[9]);
|
|
/* 022BDBFC */ _ft66 = (double)(int32_t)0x00000001u;
|
|
/* 022BDBFC */ cpu->f[11] = _ft66 / _ft65;
|
|
/* 022BDC00 */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 022BDC04 */ cpu->f[0] = cpu->f[11] * cpu->f[13];
|
|
/* 022BDC08 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[9], -(cpu->f[12]));
|
|
/* 022BDC0C */ cpu->f[11] = cpu->f[10] * cpu->f[0];
|
|
/* 022BDC10 */ _t67 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDC10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022BDC14 */ /* nop */
|
|
/* 022BDC18 */ cpu->f[13] = cpu->f[13] * cpu->f[11];
|
|
/* 022BDC1C */ /* nop */
|
|
/* 022BDC20 */ _t68 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDC20 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[13]);
|
|
/* 022BDC24 */ /* nop */
|
|
/* 022BDC28 */ _t69 = cpu->r[1] + 0x00000054u;
|
|
/* 022BDC28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022BDC2C */ _t70 = cpu->r[1] + 0x00000068u;
|
|
/* 022BDC2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022BDC30 */ _t71 = cpu->r[1] + 0x00000058u;
|
|
/* 022BDC30 */ cpu->r[30] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022BDC34 */ _t72 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDC34 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t72);
|
|
/* 022BDC38 */ _t73 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BDC38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022BDC3C */ _t74 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDC3C */ _t75 = _t74 & 0x00000001u;
|
|
/* 022BDC3C */ if (_t75) goto L_022BDC40; // else: addr-0 trap, fall-through
|
|
L_022BDC40: ; // 0x22bdc40
|
|
/* 022BDC40 */ _t76 = cpu->r[1] + 0x00000074u;
|
|
/* 022BDC40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022BDC44 */ cpu->lr = cpu->r[0];
|
|
/* 022BDC48 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 022BDC4C */ return;
|
|
L_022BDC50: ; // 0x22bdc50
|
|
/* 022BDC50 */ _t77 = cpu->r[29] + 0x00000134u;
|
|
/* 022BDC50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022BDC54 */ _t78 = cpu->r[30] + 0x00000000u;
|
|
/* 022BDC54 */ rbrew_write32(cpu->mem, _t78, cpu->r[9]);
|
|
/* 022BDC58 */ _t79 = cpu->r[29] + 0x00000138u;
|
|
/* 022BDC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022BDC5C */ _t80 = cpu->r[30] + 0x00000004u;
|
|
/* 022BDC5C */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 022BDC60 */ _t81 = cpu->r[29] + 0x0000013Cu;
|
|
/* 022BDC60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022BDC64 */ _t82 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDC64 */ rbrew_write32(cpu->mem, _t82, cpu->r[0]);
|
|
L_022BDC68: ; // 0x22bdc68
|
|
/* 022BDC68 */ _t83 = cpu->r[1] + 0x00000054u;
|
|
/* 022BDC68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t83);
|
|
/* 022BDC6C */ _t84 = cpu->r[1] + 0x00000068u;
|
|
/* 022BDC6C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 022BDC70 */ _t85 = cpu->r[1] + 0x00000058u;
|
|
/* 022BDC70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t85);
|
|
/* 022BDC74 */ _t86 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDC74 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t86);
|
|
/* 022BDC78 */ _t87 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BDC78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022BDC7C */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDC7C */ _t89 = _t88 & 0x00000001u;
|
|
/* 022BDC7C */ if (_t89) goto L_022BDC80; // else: addr-0 trap, fall-through
|
|
L_022BDC80: ; // 0x22bdc80
|
|
/* 022BDC80 */ _t90 = cpu->r[1] + 0x00000074u;
|
|
/* 022BDC80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022BDC84 */ cpu->lr = cpu->r[0];
|
|
/* 022BDC88 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 022BDC8C */ return;
|
|
}
|
|
|
|
// fn_022BDC90 @ 0x22bdc90
|
|
void Gambit_fn_022BDC90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BDC90: ; // 0x22bdc90
|
|
/* 022BDC90 */ cpu->r[0] = cpu->lr;
|
|
/* 022BDC94 */ _t0 = cpu->r[1] + 0xFFFFFF58u;
|
|
/* 022BDC94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BDC94 */ cpu->r[1] = _t0;
|
|
/* 022BDC98 */ _t1 = cpu->r[1] + 0x00000098u;
|
|
/* 022BDC98 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BDC9C */ /* nop */
|
|
/* 022BDCA0 */ _t2 = cpu->r[1] + 0x00000094u;
|
|
/* 022BDCA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BDCA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BDCA8 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 022BDCA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022BDCAC */ cpu->r[9] = 0x10060000u;
|
|
/* 022BDCB0 */ _t4 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BDCB0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 022BDCB4 */ _t5 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BDCB4 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 022BDCB8 */ _t6 = cpu->r[1] + 0x000000ACu;
|
|
/* 022BDCB8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022BDCBC */ _t7 = cpu->r[31] + 0x000001ECu;
|
|
/* 022BDCBC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BDCC0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BDCC4 */ _t8 = cpu->r[9] + 0x00004374u;
|
|
/* 022BDCC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BDCC8 */ cpu->f[7] = cpu->f[13] + cpu->f[0];
|
|
/* 022BDCCC */ _t9 = cpu->r[12] + 0x00004340u;
|
|
/* 022BDCCC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BDCD0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 022BDCD4 */ cpu->f[10] = cpu->f[7];
|
|
/* 022BDCD8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDCD8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BDCD8 */ if (_t11) goto L_022BDCDC; else goto L_022BDD08;
|
|
L_022BDCDC: ; // 0x22bdcdc
|
|
/* 022BDCDC */ _t12 = cpu->r[31] + 0x000001ECu;
|
|
/* 022BDCDC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[10]);
|
|
/* 022BDCE0 */ _t13 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BDCE0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BDCE4 */ _t14 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BDCE4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BDCE8 */ _t15 = cpu->r[1] + 0x00000090u;
|
|
/* 022BDCE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BDCEC */ _t16 = cpu->r[1] + 0x00000098u;
|
|
/* 022BDCEC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 022BDCF0 */ _t17 = cpu->r[1] + 0x00000094u;
|
|
/* 022BDCF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BDCF4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDCF4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BDCF4 */ if (_t19) goto L_022BDCF8; // else: addr-0 trap, fall-through
|
|
L_022BDCF8: ; // 0x22bdcf8
|
|
/* 022BDCF8 */ _t20 = cpu->r[1] + 0x000000ACu;
|
|
/* 022BDCF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BDCFC */ cpu->lr = cpu->r[0];
|
|
/* 022BDD00 */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 022BDD04 */ return;
|
|
L_022BDD08: ; // 0x22bdd08
|
|
/* 022BDD08 */ cpu->f[11] = cpu->f[7] - cpu->f[31];
|
|
/* 022BDD0C */ _t21 = cpu->r[31] + 0x000001E4u;
|
|
/* 022BDD0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BDD10 */ _t22 = cpu->r[31] + 0x000001ECu;
|
|
/* 022BDD10 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 022BDD14 */ Gambit_fn_02830138(cpu);
|
|
/* 022BDD18 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 022BDD1C */ cpu->r[7] = cpu->r[0] | 0x3F800000u;
|
|
/* 022BDD20 */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BDD20 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 022BDD24 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BDD24 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BDD28 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BDD2C */ cpu->f[12] = cpu->f[8] - cpu->f[31];
|
|
/* 022BDD30 */ Gambit_fn_022BDA24(cpu);
|
|
/* 022BDD34 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022BDD38 */ _t25 = cpu->r[31] + 0x00000144u;
|
|
/* 022BDD38 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BDD3C */ cpu->r[9] = 0x101E0000u;
|
|
/* 022BDD40 */ _t26 = cpu->r[11] + 0x00003C54u;
|
|
/* 022BDD40 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022BDD40 */ cpu->r[11] = _t26;
|
|
/* 022BDD44 */ cpu->f[5] = cpu->f[12] * cpu->f[1];
|
|
/* 022BDD48 */ _t27 = cpu->r[9] + 0x00003C60u;
|
|
/* 022BDD48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BDD48 */ cpu->r[9] = _t27;
|
|
/* 022BDD4C */ _t28 = cpu->r[31] + 0x00000140u;
|
|
/* 022BDD4C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022BDD50 */ cpu->f[12] = cpu->f[0] - cpu->f[6];
|
|
/* 022BDD54 */ _t29 = cpu->r[9] + 0x00000004u;
|
|
/* 022BDD54 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022BDD58 */ _t30 = cpu->r[9] + 0x00000008u;
|
|
/* 022BDD58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BDD5C */ cpu->f[9] = fma(cpu->f[12], cpu->f[5], cpu->f[6]);
|
|
/* 022BDD60 */ _t31 = cpu->r[11] + 0x00000004u;
|
|
/* 022BDD60 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022BDD64 */ _t32 = cpu->r[1] + 0x00000058u;
|
|
/* 022BDD64 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 022BDD68 */ cpu->f[12] = cpu->f[8] - cpu->f[6];
|
|
/* 022BDD6C */ _t33 = cpu->r[31] + 0x00000148u;
|
|
/* 022BDD6C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BDD70 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BDD70 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[13]);
|
|
/* 022BDD74 */ cpu->f[10] = fma(cpu->f[12], cpu->f[5], cpu->f[6]);
|
|
/* 022BDD78 */ _t35 = cpu->r[11] + 0x00000008u;
|
|
/* 022BDD78 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022BDD7C */ _t36 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDD7C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[7]);
|
|
/* 022BDD80 */ cpu->f[12] = cpu->f[0] - cpu->f[6];
|
|
/* 022BDD84 */ _t37 = cpu->r[1] + 0x00000020u;
|
|
/* 022BDD84 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 022BDD88 */ cpu->f[9] = fma(cpu->f[12], cpu->f[5], cpu->f[6]);
|
|
/* 022BDD8C */ _t38 = cpu->r[1] + 0x00000024u;
|
|
/* 022BDD8C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 022BDD90 */ cpu->r[4] = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BDD94 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BDD98 */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 022BDD98 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[9]);
|
|
/* 022BDD9C */ Gambit_fn_022BDA50(cpu);
|
|
/* 022BDDA0 */ cpu->r[30] = 0x101F0000u;
|
|
/* 022BDDA4 */ _t40 = cpu->r[30] + 0x00006350u;
|
|
/* 022BDDA4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BDDA4 */ cpu->r[30] = _t40;
|
|
/* 022BDDA8 */ _t41 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDDA8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022BDDAC */ _t42 = cpu->r[30] + 0x00000004u;
|
|
/* 022BDDAC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022BDDB0 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 022BDDB4 */ _t43 = cpu->r[1] + 0x00000048u;
|
|
/* 022BDDB4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[10]);
|
|
/* 022BDDB8 */ cpu->r[4] = 0x10060000u;
|
|
/* 022BDDBC */ _t44 = cpu->r[1] + 0x00000040u;
|
|
/* 022BDDBC */ rbrew_write_f32(cpu->mem, _t44, cpu->f[8]);
|
|
/* 022BDDC0 */ cpu->r[4] = cpu->r[4] + 0x000043ACu;
|
|
/* 022BDDC4 */ cpu->r[5] = 0x00000475u;
|
|
/* 022BDDC8 */ _t45 = cpu->r[1] + 0x00000044u;
|
|
/* 022BDDC8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[9]);
|
|
/* 022BDDCC */ Gambit_fn_0204D380(cpu);
|
|
/* 022BDDD0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 022BDDD4 */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 022BDDD4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022BDDD8 */ _t47 = cpu->r[12] + 0x00003C3Cu;
|
|
/* 022BDDD8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BDDD8 */ cpu->r[12] = _t47;
|
|
/* 022BDDDC */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 022BDDDC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[11]);
|
|
/* 022BDDE0 */ _t49 = cpu->r[1] + 0x00000038u;
|
|
/* 022BDDE0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022BDDE4 */ _t50 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BDDE4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022BDDE8 */ _t51 = cpu->r[1] + 0x00000018u;
|
|
/* 022BDDE8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[12]);
|
|
/* 022BDDEC */ /* nop */
|
|
/* 022BDDF0 */ cpu->f[0] = cpu->f[3] * cpu->f[10];
|
|
/* 022BDDF4 */ _t52 = cpu->r[12] + 0x00000004u;
|
|
/* 022BDDF4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022BDDF8 */ _t53 = cpu->r[1] + 0x00000048u;
|
|
/* 022BDDF8 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022BDDFC */ /* nop */
|
|
/* 022BDE00 */ /* nop */
|
|
/* 022BDE04 */ cpu->f[0] = fma(cpu->f[7], cpu->f[2], cpu->f[0]);
|
|
/* 022BDE08 */ _t54 = cpu->r[12] + 0x00000008u;
|
|
/* 022BDE08 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022BDE0C */ /* nop */
|
|
/* 022BDE10 */ _t55 = cpu->r[1] + 0x00000054u;
|
|
/* 022BDE10 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022BDE14 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 022BDE14 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[11]);
|
|
/* 022BDE18 */ _t57 = cpu->r[1] + 0x00000020u;
|
|
/* 022BDE18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022BDE1C */ cpu->f[0] = fma(cpu->f[9], cpu->f[4], cpu->f[0]);
|
|
/* 022BDE20 */ /* nop */
|
|
/* 022BDE24 */ _t58 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDE24 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022BDE28 */ cpu->f[3] = cpu->f[3] * cpu->f[13];
|
|
/* 022BDE2C */ /* nop */
|
|
/* 022BDE30 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BDE30 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 022BDE34 */ cpu->f[12] = cpu->f[0] + cpu->f[11];
|
|
/* 022BDE38 */ _t60 = cpu->r[31] + 0x00000070u;
|
|
/* 022BDE38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022BDE3C */ /* nop */
|
|
/* 022BDE40 */ _t61 = cpu->r[1] + 0x00000024u;
|
|
/* 022BDE40 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022BDE44 */ /* nop */
|
|
/* 022BDE48 */ /* nop */
|
|
/* 022BDE4C */ cpu->f[3] = fma(cpu->f[7], cpu->f[2], cpu->f[3]);
|
|
/* 022BDE50 */ _t62 = cpu->r[1] + 0x00000028u;
|
|
/* 022BDE50 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022BDE54 */ /* nop */
|
|
/* 022BDE58 */ /* nop */
|
|
/* 022BDE5C */ /* nop */
|
|
/* 022BDE60 */ cpu->f[13] = fma(cpu->f[8], cpu->f[4], cpu->f[3]);
|
|
/* 022BDE64 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BDE64 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
/* 022BDE68 */ /* nop */
|
|
/* 022BDE6C */ /* nop */
|
|
/* 022BDE70 */ /* nop */
|
|
/* 022BDE74 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDE74 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[13]);
|
|
/* 022BDE78 */ /* nop */
|
|
/* 022BDE7C */ _t65 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BDE7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022BDE80 */ /* nop */
|
|
/* 022BDE84 */ /* nop */
|
|
/* 022BDE88 */ _t66 = cpu->r[12] + 0x00000070u;
|
|
/* 022BDE88 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022BDE8C */ _t67 = cpu->r[1] + 0x00000064u;
|
|
/* 022BDE8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022BDE90 */ cpu->f[8] = cpu->f[10] + cpu->f[11];
|
|
/* 022BDE94 */ _t68 = cpu->r[1] + 0x00000068u;
|
|
/* 022BDE94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022BDE98 */ _t69 = cpu->r[1] + 0x00000070u;
|
|
/* 022BDE98 */ rbrew_write32(cpu->mem, _t69, cpu->r[10]);
|
|
/* 022BDE9C */ _t70 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BDE9C */ rbrew_write_f32(cpu->mem, _t70, cpu->f[8]);
|
|
/* 022BDEA0 */ _t71 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BDEA0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022BDEA4 */ _t72 = cpu->r[1] + 0x00000074u;
|
|
/* 022BDEA4 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 022BDEA8 */ _t73 = cpu->r[1] + 0x00000078u;
|
|
/* 022BDEA8 */ rbrew_write32(cpu->mem, _t73, cpu->r[7]);
|
|
/* 022BDEAC */ _t74 = cpu->r[1] + 0x00000078u;
|
|
/* 022BDEAC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022BDEB0 */ /* nop */
|
|
/* 022BDEB4 */ cpu->f[13] = cpu->f[13] + cpu->f[8];
|
|
/* 022BDEB8 */ _t75 = cpu->r[31] + 0x000001E4u;
|
|
/* 022BDEB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022BDEBC */ /* nop */
|
|
/* 022BDEC0 */ /* nop */
|
|
/* 022BDEC4 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDEC4 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[13]);
|
|
/* 022BDEC8 */ Gambit_fn_02830138(cpu);
|
|
/* 022BDECC */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 022BDED0 */ cpu->r[0] = cpu->r[8] | 0x3F800000u;
|
|
/* 022BDED4 */ _t77 = cpu->r[1] + 0x00000030u;
|
|
/* 022BDED4 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 022BDED8 */ _t78 = cpu->r[1] + 0x00000030u;
|
|
/* 022BDED8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 022BDEDC */ cpu->f[10] = cpu->f[12] - cpu->f[31];
|
|
/* 022BDEE0 */ cpu->f[0] = cpu->f[10] + cpu->f[10];
|
|
/* 022BDEE4 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BDEE8 */ cpu->f[2] = cpu->f[0] - cpu->f[31];
|
|
/* 022BDEEC */ _t79 = cpu->r[10] + 0x000043A4u;
|
|
/* 022BDEEC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022BDEF0 */ Gambit_fn_0204EA50(cpu);
|
|
/* 022BDEF4 */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 022BDEF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022BDEF8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BDEFC */ _t81 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022BDF00 */ _t82 = cpu->r[9] + 0x000043A8u;
|
|
/* 022BDF00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 022BDF04 */ cpu->r[5] = cpu->r[30];
|
|
/* 022BDF08 */ _t83 = cpu->r[1] + 0x00000084u;
|
|
/* 022BDF08 */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 022BDF0C */ cpu->f[1] = cpu->f[1] * cpu->f[13];
|
|
/* 022BDF10 */ _t84 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BDF10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022BDF14 */ cpu->r[4] = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BDF18 */ _t85 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BDF18 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 022BDF1C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BDF20 */ _t86 = cpu->r[1] + 0x00000080u;
|
|
/* 022BDF20 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 022BDF24 */ Gambit_fn_0204EF20(cpu);
|
|
/* 022BDF28 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022BDF2C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022BDF30 */ _t87 = cpu->r[11] + 0x00006000u;
|
|
/* 022BDF30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022BDF34 */ _t88 = cpu->r[12] + 0x000050F0u;
|
|
/* 022BDF34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022BDF38 */ _t89 = cpu->r[11] + 0x00000274u;
|
|
/* 022BDF38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 022BDF3C */ cpu->r[7] = cpu->r[3] + cpu->r[12];
|
|
/* 022BDF40 */ _t90 = cpu->r[7] + 0x00000104u;
|
|
/* 022BDF40 */ cpu->r[4] = rbrew_read8(cpu->mem, _t90);
|
|
/* 022BDF44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022BDF48 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDF48 */ _t92 = _t91 & 0x00000001u;
|
|
/* 022BDF48 */ if (_t92) goto L_022BDFDC; else goto L_022BDF4C;
|
|
L_022BDF4C: ; // 0x22bdf4c
|
|
/* 022BDF4C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022BDF50 */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 022BDF54 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BDF58 */ Gambit_fn_021F000C(cpu);
|
|
/* 022BDF5C */ cpu->r[30] = cpu->r[3];
|
|
/* 022BDF5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BDF60 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDF60 */ _t94 = _t93 & 0x00000001u;
|
|
/* 022BDF60 */ if (_t94) goto L_022BDFDC; else goto L_022BDF64;
|
|
L_022BDF64: ; // 0x22bdf64
|
|
/* 022BDF64 */ cpu->r[3] = 0x101D0000u;
|
|
/* 022BDF68 */ _t95 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022BDF68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t95);
|
|
/* 022BDF6C */ Gambit_fn_02830138(cpu);
|
|
/* 022BDF70 */ cpu->r[9] = cpu->r[3];
|
|
/* 022BDF74 */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 022BDF78 */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 022BDF7C */ cpu->r[6] = 0x00000000u;
|
|
/* 022BDF80 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BDF84 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BDF88 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BDF8C */ Gambit_fn_021E81D0(cpu);
|
|
/* 022BDF90 */ _t96 = cpu->r[31] + 0x00000310u;
|
|
/* 022BDF90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t96);
|
|
/* 022BDF94 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 022BDF98 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 022BDF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BDF9C */ _t97 = cpu->r[31] + 0x00000310u;
|
|
/* 022BDF9C */ rbrew_write32(cpu->mem, _t97, cpu->r[8]);
|
|
/* 022BDFA0 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDFA0 */ _t99 = _t98 & 0x00000001u;
|
|
/* 022BDFA0 */ if (_t99) goto L_022BDFA4; else goto L_022BDFDC;
|
|
L_022BDFA4: ; // 0x22bdfa4
|
|
/* 022BDFA4 */ cpu->r[29] = 0x101E0000u;
|
|
/* 022BDFA8 */ cpu->r[29] = cpu->r[29] + 0x00003BCCu;
|
|
/* 022BDFAC */ _t100 = cpu->r[29] + 0x00000004u;
|
|
/* 022BDFAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022BDFB0 */ _t101 = cpu->r[10] + 0x00000014u;
|
|
/* 022BDFB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t101);
|
|
/* 022BDFB4 */ _t102 = cpu->r[31] + 0x00000030u;
|
|
/* 022BDFB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t102);
|
|
/* 022BDFB8 */ cpu->ctr = cpu->r[11];
|
|
/* 022BDFBC */ _t103 = cpu->r[8] + 0x000000E0u;
|
|
/* 022BDFBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t103);
|
|
/* 022BDFC0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022BDFC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BDFC8 */ _t104 = cpu->r[30] + 0x00000034u;
|
|
/* 022BDFC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022BDFCC */ _t105 = cpu->r[29] + 0x00000000u;
|
|
/* 022BDFCC */ cpu->r[4] = rbrew_read32(cpu->mem, _t105);
|
|
/* 022BDFD0 */ cpu->ctr = cpu->r[12];
|
|
/* 022BDFD4 */ _t106 = cpu->r[31] + 0x00000030u;
|
|
/* 022BDFD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022BDFD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022BDFDC: ; // 0x22bdfdc
|
|
/* 022BDFDC */ _t107 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BDFDC */ cpu->r[29] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022BDFE0 */ _t108 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BDFE0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 022BDFE4 */ _t109 = cpu->r[1] + 0x00000090u;
|
|
/* 022BDFE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t109);
|
|
/* 022BDFE8 */ _t110 = cpu->r[1] + 0x00000098u;
|
|
/* 022BDFE8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t110);
|
|
/* 022BDFEC */ _t111 = cpu->r[1] + 0x00000094u;
|
|
/* 022BDFEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t111);
|
|
/* 022BDFF0 */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDFF0 */ _t113 = _t112 & 0x00000001u;
|
|
/* 022BDFF0 */ if (_t113) goto L_022BDFF4; // else: addr-0 trap, fall-through
|
|
L_022BDFF4: ; // 0x22bdff4
|
|
/* 022BDFF4 */ _t114 = cpu->r[1] + 0x000000ACu;
|
|
/* 022BDFF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 022BDFF8 */ cpu->lr = cpu->r[0];
|
|
/* 022BDFFC */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 022BE000 */ return;
|
|
}
|
|
|
|
// fn_022BDC94 @ 0x22bdc94
|
|
void Gambit_fn_022BDC94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BDC94: ; // 0x22bdc94
|
|
/* 022BDC94 */ _t0 = cpu->r[1] + 0xFFFFFF58u;
|
|
/* 022BDC94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BDC94 */ cpu->r[1] = _t0;
|
|
/* 022BDC98 */ _t1 = cpu->r[1] + 0x00000098u;
|
|
/* 022BDC98 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BDC9C */ /* nop */
|
|
/* 022BDCA0 */ _t2 = cpu->r[1] + 0x00000094u;
|
|
/* 022BDCA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BDCA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BDCA8 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 022BDCA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022BDCAC */ cpu->r[9] = 0x10060000u;
|
|
/* 022BDCB0 */ _t4 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BDCB0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 022BDCB4 */ _t5 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BDCB4 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 022BDCB8 */ _t6 = cpu->r[1] + 0x000000ACu;
|
|
/* 022BDCB8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022BDCBC */ _t7 = cpu->r[31] + 0x000001ECu;
|
|
/* 022BDCBC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BDCC0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BDCC4 */ _t8 = cpu->r[9] + 0x00004374u;
|
|
/* 022BDCC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BDCC8 */ cpu->f[7] = cpu->f[13] + cpu->f[0];
|
|
/* 022BDCCC */ _t9 = cpu->r[12] + 0x00004340u;
|
|
/* 022BDCCC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BDCD0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 022BDCD4 */ cpu->f[10] = cpu->f[7];
|
|
/* 022BDCD8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDCD8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BDCD8 */ if (_t11) goto L_022BDCDC; else goto L_022BDD08;
|
|
L_022BDCDC: ; // 0x22bdcdc
|
|
/* 022BDCDC */ _t12 = cpu->r[31] + 0x000001ECu;
|
|
/* 022BDCDC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[10]);
|
|
/* 022BDCE0 */ _t13 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BDCE0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BDCE4 */ _t14 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BDCE4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BDCE8 */ _t15 = cpu->r[1] + 0x00000090u;
|
|
/* 022BDCE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BDCEC */ _t16 = cpu->r[1] + 0x00000098u;
|
|
/* 022BDCEC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 022BDCF0 */ _t17 = cpu->r[1] + 0x00000094u;
|
|
/* 022BDCF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BDCF4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDCF4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BDCF4 */ if (_t19) goto L_022BDCF8; // else: addr-0 trap, fall-through
|
|
L_022BDCF8: ; // 0x22bdcf8
|
|
/* 022BDCF8 */ _t20 = cpu->r[1] + 0x000000ACu;
|
|
/* 022BDCF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BDCFC */ cpu->lr = cpu->r[0];
|
|
/* 022BDD00 */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 022BDD04 */ return;
|
|
L_022BDD08: ; // 0x22bdd08
|
|
/* 022BDD08 */ cpu->f[11] = cpu->f[7] - cpu->f[31];
|
|
/* 022BDD0C */ _t21 = cpu->r[31] + 0x000001E4u;
|
|
/* 022BDD0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BDD10 */ _t22 = cpu->r[31] + 0x000001ECu;
|
|
/* 022BDD10 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 022BDD14 */ Gambit_fn_02830138(cpu);
|
|
/* 022BDD18 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 022BDD1C */ cpu->r[7] = cpu->r[0] | 0x3F800000u;
|
|
/* 022BDD20 */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BDD20 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 022BDD24 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BDD24 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BDD28 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BDD2C */ cpu->f[12] = cpu->f[8] - cpu->f[31];
|
|
/* 022BDD30 */ Gambit_fn_022BDA24(cpu);
|
|
/* 022BDD34 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022BDD38 */ _t25 = cpu->r[31] + 0x00000144u;
|
|
/* 022BDD38 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BDD3C */ cpu->r[9] = 0x101E0000u;
|
|
/* 022BDD40 */ _t26 = cpu->r[11] + 0x00003C54u;
|
|
/* 022BDD40 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022BDD40 */ cpu->r[11] = _t26;
|
|
/* 022BDD44 */ cpu->f[5] = cpu->f[12] * cpu->f[1];
|
|
/* 022BDD48 */ _t27 = cpu->r[9] + 0x00003C60u;
|
|
/* 022BDD48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BDD48 */ cpu->r[9] = _t27;
|
|
/* 022BDD4C */ _t28 = cpu->r[31] + 0x00000140u;
|
|
/* 022BDD4C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022BDD50 */ cpu->f[12] = cpu->f[0] - cpu->f[6];
|
|
/* 022BDD54 */ _t29 = cpu->r[9] + 0x00000004u;
|
|
/* 022BDD54 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022BDD58 */ _t30 = cpu->r[9] + 0x00000008u;
|
|
/* 022BDD58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BDD5C */ cpu->f[9] = fma(cpu->f[12], cpu->f[5], cpu->f[6]);
|
|
/* 022BDD60 */ _t31 = cpu->r[11] + 0x00000004u;
|
|
/* 022BDD60 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022BDD64 */ _t32 = cpu->r[1] + 0x00000058u;
|
|
/* 022BDD64 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 022BDD68 */ cpu->f[12] = cpu->f[8] - cpu->f[6];
|
|
/* 022BDD6C */ _t33 = cpu->r[31] + 0x00000148u;
|
|
/* 022BDD6C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BDD70 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022BDD70 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[13]);
|
|
/* 022BDD74 */ cpu->f[10] = fma(cpu->f[12], cpu->f[5], cpu->f[6]);
|
|
/* 022BDD78 */ _t35 = cpu->r[11] + 0x00000008u;
|
|
/* 022BDD78 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022BDD7C */ _t36 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDD7C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[7]);
|
|
/* 022BDD80 */ cpu->f[12] = cpu->f[0] - cpu->f[6];
|
|
/* 022BDD84 */ _t37 = cpu->r[1] + 0x00000020u;
|
|
/* 022BDD84 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 022BDD88 */ cpu->f[9] = fma(cpu->f[12], cpu->f[5], cpu->f[6]);
|
|
/* 022BDD8C */ _t38 = cpu->r[1] + 0x00000024u;
|
|
/* 022BDD8C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[10]);
|
|
/* 022BDD90 */ cpu->r[4] = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BDD94 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BDD98 */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 022BDD98 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[9]);
|
|
/* 022BDD9C */ Gambit_fn_022BDA50(cpu);
|
|
/* 022BDDA0 */ cpu->r[30] = 0x101F0000u;
|
|
/* 022BDDA4 */ _t40 = cpu->r[30] + 0x00006350u;
|
|
/* 022BDDA4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BDDA4 */ cpu->r[30] = _t40;
|
|
/* 022BDDA8 */ _t41 = cpu->r[30] + 0x00000008u;
|
|
/* 022BDDA8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022BDDAC */ _t42 = cpu->r[30] + 0x00000004u;
|
|
/* 022BDDAC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022BDDB0 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 022BDDB4 */ _t43 = cpu->r[1] + 0x00000048u;
|
|
/* 022BDDB4 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[10]);
|
|
/* 022BDDB8 */ cpu->r[4] = 0x10060000u;
|
|
/* 022BDDBC */ _t44 = cpu->r[1] + 0x00000040u;
|
|
/* 022BDDBC */ rbrew_write_f32(cpu->mem, _t44, cpu->f[8]);
|
|
/* 022BDDC0 */ cpu->r[4] = cpu->r[4] + 0x000043ACu;
|
|
/* 022BDDC4 */ cpu->r[5] = 0x00000475u;
|
|
/* 022BDDC8 */ _t45 = cpu->r[1] + 0x00000044u;
|
|
/* 022BDDC8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[9]);
|
|
/* 022BDDCC */ Gambit_fn_0204D380(cpu);
|
|
/* 022BDDD0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 022BDDD4 */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 022BDDD4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022BDDD8 */ _t47 = cpu->r[12] + 0x00003C3Cu;
|
|
/* 022BDDD8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BDDD8 */ cpu->r[12] = _t47;
|
|
/* 022BDDDC */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 022BDDDC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[11]);
|
|
/* 022BDDE0 */ _t49 = cpu->r[1] + 0x00000038u;
|
|
/* 022BDDE0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022BDDE4 */ _t50 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BDDE4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022BDDE8 */ _t51 = cpu->r[1] + 0x00000018u;
|
|
/* 022BDDE8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[12]);
|
|
/* 022BDDEC */ /* nop */
|
|
/* 022BDDF0 */ cpu->f[0] = cpu->f[3] * cpu->f[10];
|
|
/* 022BDDF4 */ _t52 = cpu->r[12] + 0x00000004u;
|
|
/* 022BDDF4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022BDDF8 */ _t53 = cpu->r[1] + 0x00000048u;
|
|
/* 022BDDF8 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022BDDFC */ /* nop */
|
|
/* 022BDE00 */ /* nop */
|
|
/* 022BDE04 */ cpu->f[0] = fma(cpu->f[7], cpu->f[2], cpu->f[0]);
|
|
/* 022BDE08 */ _t54 = cpu->r[12] + 0x00000008u;
|
|
/* 022BDE08 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022BDE0C */ /* nop */
|
|
/* 022BDE10 */ _t55 = cpu->r[1] + 0x00000054u;
|
|
/* 022BDE10 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022BDE14 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 022BDE14 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[11]);
|
|
/* 022BDE18 */ _t57 = cpu->r[1] + 0x00000020u;
|
|
/* 022BDE18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022BDE1C */ cpu->f[0] = fma(cpu->f[9], cpu->f[4], cpu->f[0]);
|
|
/* 022BDE20 */ /* nop */
|
|
/* 022BDE24 */ _t58 = cpu->r[1] + 0x00000060u;
|
|
/* 022BDE24 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022BDE28 */ cpu->f[3] = cpu->f[3] * cpu->f[13];
|
|
/* 022BDE2C */ /* nop */
|
|
/* 022BDE30 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BDE30 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 022BDE34 */ cpu->f[12] = cpu->f[0] + cpu->f[11];
|
|
/* 022BDE38 */ _t60 = cpu->r[31] + 0x00000070u;
|
|
/* 022BDE38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022BDE3C */ /* nop */
|
|
/* 022BDE40 */ _t61 = cpu->r[1] + 0x00000024u;
|
|
/* 022BDE40 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022BDE44 */ /* nop */
|
|
/* 022BDE48 */ /* nop */
|
|
/* 022BDE4C */ cpu->f[3] = fma(cpu->f[7], cpu->f[2], cpu->f[3]);
|
|
/* 022BDE50 */ _t62 = cpu->r[1] + 0x00000028u;
|
|
/* 022BDE50 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022BDE54 */ /* nop */
|
|
/* 022BDE58 */ /* nop */
|
|
/* 022BDE5C */ /* nop */
|
|
/* 022BDE60 */ cpu->f[13] = fma(cpu->f[8], cpu->f[4], cpu->f[3]);
|
|
/* 022BDE64 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BDE64 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
/* 022BDE68 */ /* nop */
|
|
/* 022BDE6C */ /* nop */
|
|
/* 022BDE70 */ /* nop */
|
|
/* 022BDE74 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDE74 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[13]);
|
|
/* 022BDE78 */ /* nop */
|
|
/* 022BDE7C */ _t65 = cpu->r[31] + 0x000001DCu;
|
|
/* 022BDE7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022BDE80 */ /* nop */
|
|
/* 022BDE84 */ /* nop */
|
|
/* 022BDE88 */ _t66 = cpu->r[12] + 0x00000070u;
|
|
/* 022BDE88 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022BDE8C */ _t67 = cpu->r[1] + 0x00000064u;
|
|
/* 022BDE8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022BDE90 */ cpu->f[8] = cpu->f[10] + cpu->f[11];
|
|
/* 022BDE94 */ _t68 = cpu->r[1] + 0x00000068u;
|
|
/* 022BDE94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022BDE98 */ _t69 = cpu->r[1] + 0x00000070u;
|
|
/* 022BDE98 */ rbrew_write32(cpu->mem, _t69, cpu->r[10]);
|
|
/* 022BDE9C */ _t70 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BDE9C */ rbrew_write_f32(cpu->mem, _t70, cpu->f[8]);
|
|
/* 022BDEA0 */ _t71 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022BDEA0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022BDEA4 */ _t72 = cpu->r[1] + 0x00000074u;
|
|
/* 022BDEA4 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 022BDEA8 */ _t73 = cpu->r[1] + 0x00000078u;
|
|
/* 022BDEA8 */ rbrew_write32(cpu->mem, _t73, cpu->r[7]);
|
|
/* 022BDEAC */ _t74 = cpu->r[1] + 0x00000078u;
|
|
/* 022BDEAC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022BDEB0 */ /* nop */
|
|
/* 022BDEB4 */ cpu->f[13] = cpu->f[13] + cpu->f[8];
|
|
/* 022BDEB8 */ _t75 = cpu->r[31] + 0x000001E4u;
|
|
/* 022BDEB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022BDEBC */ /* nop */
|
|
/* 022BDEC0 */ /* nop */
|
|
/* 022BDEC4 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDEC4 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[13]);
|
|
/* 022BDEC8 */ Gambit_fn_02830138(cpu);
|
|
/* 022BDECC */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 022BDED0 */ cpu->r[0] = cpu->r[8] | 0x3F800000u;
|
|
/* 022BDED4 */ _t77 = cpu->r[1] + 0x00000030u;
|
|
/* 022BDED4 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 022BDED8 */ _t78 = cpu->r[1] + 0x00000030u;
|
|
/* 022BDED8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 022BDEDC */ cpu->f[10] = cpu->f[12] - cpu->f[31];
|
|
/* 022BDEE0 */ cpu->f[0] = cpu->f[10] + cpu->f[10];
|
|
/* 022BDEE4 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BDEE8 */ cpu->f[2] = cpu->f[0] - cpu->f[31];
|
|
/* 022BDEEC */ _t79 = cpu->r[10] + 0x000043A4u;
|
|
/* 022BDEEC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022BDEF0 */ Gambit_fn_0204EA50(cpu);
|
|
/* 022BDEF4 */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 022BDEF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022BDEF8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BDEFC */ _t81 = cpu->r[1] + 0x00000010u;
|
|
/* 022BDEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022BDF00 */ _t82 = cpu->r[9] + 0x000043A8u;
|
|
/* 022BDF00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 022BDF04 */ cpu->r[5] = cpu->r[30];
|
|
/* 022BDF08 */ _t83 = cpu->r[1] + 0x00000084u;
|
|
/* 022BDF08 */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 022BDF0C */ cpu->f[1] = cpu->f[1] * cpu->f[13];
|
|
/* 022BDF10 */ _t84 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BDF10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022BDF14 */ cpu->r[4] = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BDF18 */ _t85 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022BDF18 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 022BDF1C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BDF20 */ _t86 = cpu->r[1] + 0x00000080u;
|
|
/* 022BDF20 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 022BDF24 */ Gambit_fn_0204EF20(cpu);
|
|
/* 022BDF28 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022BDF2C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022BDF30 */ _t87 = cpu->r[11] + 0x00006000u;
|
|
/* 022BDF30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022BDF34 */ _t88 = cpu->r[12] + 0x000050F0u;
|
|
/* 022BDF34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022BDF38 */ _t89 = cpu->r[11] + 0x00000274u;
|
|
/* 022BDF38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 022BDF3C */ cpu->r[7] = cpu->r[3] + cpu->r[12];
|
|
/* 022BDF40 */ _t90 = cpu->r[7] + 0x00000104u;
|
|
/* 022BDF40 */ cpu->r[4] = rbrew_read8(cpu->mem, _t90);
|
|
/* 022BDF44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022BDF48 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDF48 */ _t92 = _t91 & 0x00000001u;
|
|
/* 022BDF48 */ if (_t92) goto L_022BDFDC; else goto L_022BDF4C;
|
|
L_022BDF4C: ; // 0x22bdf4c
|
|
/* 022BDF4C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022BDF50 */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 022BDF54 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BDF58 */ Gambit_fn_021F000C(cpu);
|
|
/* 022BDF5C */ cpu->r[30] = cpu->r[3];
|
|
/* 022BDF5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BDF60 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDF60 */ _t94 = _t93 & 0x00000001u;
|
|
/* 022BDF60 */ if (_t94) goto L_022BDFDC; else goto L_022BDF64;
|
|
L_022BDF64: ; // 0x22bdf64
|
|
/* 022BDF64 */ cpu->r[3] = 0x101D0000u;
|
|
/* 022BDF68 */ _t95 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022BDF68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t95);
|
|
/* 022BDF6C */ Gambit_fn_02830138(cpu);
|
|
/* 022BDF70 */ cpu->r[9] = cpu->r[3];
|
|
/* 022BDF74 */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 022BDF78 */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 022BDF7C */ cpu->r[6] = 0x00000000u;
|
|
/* 022BDF80 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BDF84 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BDF88 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BDF8C */ Gambit_fn_021E81D0(cpu);
|
|
/* 022BDF90 */ _t96 = cpu->r[31] + 0x00000310u;
|
|
/* 022BDF90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t96);
|
|
/* 022BDF94 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 022BDF98 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Eu, 0x0000001Fu);
|
|
/* 022BDF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BDF9C */ _t97 = cpu->r[31] + 0x00000310u;
|
|
/* 022BDF9C */ rbrew_write32(cpu->mem, _t97, cpu->r[8]);
|
|
/* 022BDFA0 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BDFA0 */ _t99 = _t98 & 0x00000001u;
|
|
/* 022BDFA0 */ if (_t99) goto L_022BDFA4; else goto L_022BDFDC;
|
|
L_022BDFA4: ; // 0x22bdfa4
|
|
/* 022BDFA4 */ cpu->r[29] = 0x101E0000u;
|
|
/* 022BDFA8 */ cpu->r[29] = cpu->r[29] + 0x00003BCCu;
|
|
/* 022BDFAC */ _t100 = cpu->r[29] + 0x00000004u;
|
|
/* 022BDFAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022BDFB0 */ _t101 = cpu->r[10] + 0x00000014u;
|
|
/* 022BDFB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t101);
|
|
/* 022BDFB4 */ _t102 = cpu->r[31] + 0x00000030u;
|
|
/* 022BDFB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t102);
|
|
/* 022BDFB8 */ cpu->ctr = cpu->r[11];
|
|
/* 022BDFBC */ _t103 = cpu->r[8] + 0x000000E0u;
|
|
/* 022BDFBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t103);
|
|
/* 022BDFC0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022BDFC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BDFC8 */ _t104 = cpu->r[30] + 0x00000034u;
|
|
/* 022BDFC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022BDFCC */ _t105 = cpu->r[29] + 0x00000000u;
|
|
/* 022BDFCC */ cpu->r[4] = rbrew_read32(cpu->mem, _t105);
|
|
/* 022BDFD0 */ cpu->ctr = cpu->r[12];
|
|
/* 022BDFD4 */ _t106 = cpu->r[31] + 0x00000030u;
|
|
/* 022BDFD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022BDFD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022BDFDC: ; // 0x22bdfdc
|
|
/* 022BDFDC */ _t107 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022BDFDC */ cpu->r[29] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022BDFE0 */ _t108 = cpu->r[1] + 0x000000A0u;
|
|
/* 022BDFE0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 022BDFE4 */ _t109 = cpu->r[1] + 0x00000090u;
|
|
/* 022BDFE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t109);
|
|
/* 022BDFE8 */ _t110 = cpu->r[1] + 0x00000098u;
|
|
/* 022BDFE8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t110);
|
|
/* 022BDFEC */ _t111 = cpu->r[1] + 0x00000094u;
|
|
/* 022BDFEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t111);
|
|
/* 022BDFF0 */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BDFF0 */ _t113 = _t112 & 0x00000001u;
|
|
/* 022BDFF0 */ if (_t113) goto L_022BDFF4; // else: addr-0 trap, fall-through
|
|
L_022BDFF4: ; // 0x22bdff4
|
|
/* 022BDFF4 */ _t114 = cpu->r[1] + 0x000000ACu;
|
|
/* 022BDFF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 022BDFF8 */ cpu->lr = cpu->r[0];
|
|
/* 022BDFFC */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 022BE000 */ return;
|
|
}
|
|
|
|
// fn_022BE004 @ 0x22be004
|
|
void Gambit_fn_022BE004(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_022BE004: ; // 0x22be004
|
|
/* 022BE004 */ cpu->r[0] = cpu->lr;
|
|
/* 022BE008 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE008 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE008 */ cpu->r[1] = _t0;
|
|
/* 022BE00C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE00C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BE010 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE014 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE014 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BE018 */ Gambit_fn_022BDA0C(cpu);
|
|
/* 022BE01C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE020 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE020 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BE020 */ if (_t4) goto L_022BE050; else goto L_022BE024;
|
|
L_022BE024: ; // 0x22be024
|
|
/* 022BE024 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE028 */ Gambit_fn_022BDC90(cpu);
|
|
/* 022BE02C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE030 */ Gambit_fn_022BC350(cpu);
|
|
/* 022BE034 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 022BE034 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BE038 */ _t6 = cpu->r[31] + 0x00000184u;
|
|
/* 022BE038 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022BE03C */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 022BE03C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BE040 */ _t8 = cpu->r[31] + 0x00000188u;
|
|
/* 022BE040 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022BE044 */ _t9 = cpu->r[3] + 0x00000008u;
|
|
/* 022BE044 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BE048 */ _t10 = cpu->r[31] + 0x0000018Cu;
|
|
/* 022BE048 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022BE04C */ goto L_022BE078;
|
|
L_022BE050: ; // 0x22be050
|
|
/* 022BE050 */ cpu->r[0] = 0x00000000u;
|
|
/* 022BE054 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE058 */ _t11 = cpu->r[31] + 0x00000310u;
|
|
/* 022BE058 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022BE05C */ Gambit_fn_022BC350(cpu);
|
|
/* 022BE060 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 022BE060 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BE064 */ _t13 = cpu->r[31] + 0x00000184u;
|
|
/* 022BE064 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 022BE068 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 022BE068 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BE06C */ _t15 = cpu->r[31] + 0x00000188u;
|
|
/* 022BE06C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022BE070 */ _t16 = cpu->r[3] + 0x00000008u;
|
|
/* 022BE070 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BE074 */ _t17 = cpu->r[31] + 0x0000018Cu;
|
|
/* 022BE074 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
L_022BE078: ; // 0x22be078
|
|
/* 022BE078 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BE07C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE07C */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BE080 */ cpu->lr = cpu->r[0];
|
|
/* 022BE084 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE088 */ return;
|
|
}
|
|
|
|
// fn_022BE008 @ 0x22be008
|
|
void Gambit_fn_022BE008(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_022BE008: ; // 0x22be008
|
|
/* 022BE008 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE008 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE008 */ cpu->r[1] = _t0;
|
|
/* 022BE00C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE00C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BE010 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE014 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE014 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BE018 */ Gambit_fn_022BDA0C(cpu);
|
|
/* 022BE01C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE020 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE020 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BE020 */ if (_t4) goto L_022BE050; else goto L_022BE024;
|
|
L_022BE024: ; // 0x22be024
|
|
/* 022BE024 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE028 */ Gambit_fn_022BDC90(cpu);
|
|
/* 022BE02C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE030 */ Gambit_fn_022BC350(cpu);
|
|
/* 022BE034 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 022BE034 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022BE038 */ _t6 = cpu->r[31] + 0x00000184u;
|
|
/* 022BE038 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022BE03C */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 022BE03C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022BE040 */ _t8 = cpu->r[31] + 0x00000188u;
|
|
/* 022BE040 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022BE044 */ _t9 = cpu->r[3] + 0x00000008u;
|
|
/* 022BE044 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BE048 */ _t10 = cpu->r[31] + 0x0000018Cu;
|
|
/* 022BE048 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022BE04C */ goto L_022BE078;
|
|
L_022BE050: ; // 0x22be050
|
|
/* 022BE050 */ cpu->r[0] = 0x00000000u;
|
|
/* 022BE054 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE058 */ _t11 = cpu->r[31] + 0x00000310u;
|
|
/* 022BE058 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022BE05C */ Gambit_fn_022BC350(cpu);
|
|
/* 022BE060 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 022BE060 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BE064 */ _t13 = cpu->r[31] + 0x00000184u;
|
|
/* 022BE064 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 022BE068 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 022BE068 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BE06C */ _t15 = cpu->r[31] + 0x00000188u;
|
|
/* 022BE06C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022BE070 */ _t16 = cpu->r[3] + 0x00000008u;
|
|
/* 022BE070 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BE074 */ _t17 = cpu->r[31] + 0x0000018Cu;
|
|
/* 022BE074 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
L_022BE078: ; // 0x22be078
|
|
/* 022BE078 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BE07C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE07C */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BE080 */ cpu->lr = cpu->r[0];
|
|
/* 022BE084 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE088 */ return;
|
|
}
|
|
|
|
// fn_022BE08C @ 0x22be08c
|
|
void Gambit_fn_022BE08C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BE08C: ; // 0x22be08c
|
|
/* 022BE08C */ _t0 = cpu->r[3] + 0x000001E8u;
|
|
/* 022BE08C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BE090 */ cpu->r[12] = (uint32_t)(-(int32_t)cpu->r[0]);
|
|
/* 022BE094 */ _t1 = ~cpu->r[0];
|
|
/* 022BE094 */ cpu->r[0] = cpu->r[12] & _t1;
|
|
/* 022BE098 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BE09C */ return;
|
|
}
|
|
|
|
// fn_022BE0A0 @ 0x22be0a0
|
|
void Gambit_fn_022BE0A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_022BE0A0: ; // 0x22be0a0
|
|
/* 022BE0A0 */ cpu->r[0] = cpu->lr;
|
|
/* 022BE0A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE0A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE0A4 */ cpu->r[1] = _t0;
|
|
/* 022BE0A8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE0A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BE0AC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE0AC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BE0B0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022BE0B4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE0B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BE0B8 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022BE0B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BE0BC */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022BE0BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BE0C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE0C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BE0C8 */ Gambit_fn_0261F774(cpu);
|
|
/* 022BE0CC */ cpu->r[4] = cpu->r[3];
|
|
/* 022BE0D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BE0D4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022BE0D8 */ _t6 = cpu->r[31] + 0x00000194u;
|
|
/* 022BE0D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BE0DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u);
|
|
/* 022BE0E0 */ cpu->r[11] = cpu->r[3];
|
|
/* 022BE0E4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE0E4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BE0E4 */ if (_t8) goto L_022BE0E8; else goto L_022BE140;
|
|
L_022BE0E8: ; // 0x22be0e8
|
|
/* 022BE0E8 */ _t9 = cpu->r[31] + 0x00000218u;
|
|
/* 022BE0E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BE0EC */ _t10 = cpu->r[31] + 0x00000148u;
|
|
/* 022BE0EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BE0F0 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022BE0F4 */ _t11 = cpu->r[31] + 0x00000210u;
|
|
/* 022BE0F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BE0F8 */ _t12 = cpu->r[31] + 0x00000140u;
|
|
/* 022BE0F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BE0FC */ cpu->f[0] = cpu->f[0] * cpu->f[0];
|
|
/* 022BE100 */ cpu->f[13] = cpu->f[13] - cpu->f[12];
|
|
/* 022BE104 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BE108 */ cpu->f[13] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 022BE10C */ _t13 = cpu->r[8] + 0x000043C4u;
|
|
/* 022BE10C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BE110 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BE114 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BE114 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BE114 */ if (_t15) goto L_022BE16C; else goto L_022BE118;
|
|
L_022BE118: ; // 0x22be118
|
|
/* 022BE118 */ _t16 = cpu->r[31] + 0x00000220u;
|
|
/* 022BE118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BE11C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BE120 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE120 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BE120 */ if (_t18) goto L_022BE16C; else goto L_022BE124;
|
|
L_022BE124: ; // 0x22be124
|
|
/* 022BE124 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BE128 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE128 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BE12C */ cpu->lr = cpu->r[0];
|
|
/* 022BE130 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE130 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BE134 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE138 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BE13C */ return;
|
|
L_022BE140: ; // 0x22be140
|
|
/* 022BE140 */ _t22 = cpu->r[31] + 0x0000006Cu;
|
|
/* 022BE140 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BE144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE148 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE148 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022BE148 */ if (_t24) goto L_022BE15C; else goto L_022BE14C;
|
|
L_022BE14C: ; // 0x22be14c
|
|
/* 022BE14C */ cpu->r[4] = cpu->r[11] + 0x00000244u;
|
|
/* 022BE150 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 022BE154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE158 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE158 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022BE158 */ if (_t26) goto L_022BE16C; else goto L_022BE15C;
|
|
L_022BE15C: ; // 0x22be15c
|
|
/* 022BE15C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE160 */ Gambit_fn_022BE08C(cpu);
|
|
/* 022BE164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE168 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE168 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022BE168 */ if (_t28) goto L_022BE16C; else goto L_022BE124;
|
|
L_022BE16C: ; // 0x22be16c
|
|
/* 022BE16C */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE16C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022BE170 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE170 */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022BE174 */ cpu->lr = cpu->r[0];
|
|
/* 022BE178 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE178 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022BE17C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE180 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BE184 */ return;
|
|
}
|
|
|
|
// fn_022BE0A4 @ 0x22be0a4
|
|
void Gambit_fn_022BE0A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _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_022BE0A4: ; // 0x22be0a4
|
|
/* 022BE0A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE0A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE0A4 */ cpu->r[1] = _t0;
|
|
/* 022BE0A8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE0A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BE0AC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE0AC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BE0B0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022BE0B4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE0B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BE0B8 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022BE0B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BE0BC */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022BE0BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BE0C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE0C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BE0C8 */ Gambit_fn_0261F774(cpu);
|
|
/* 022BE0CC */ cpu->r[4] = cpu->r[3];
|
|
/* 022BE0D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BE0D4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022BE0D8 */ _t6 = cpu->r[31] + 0x00000194u;
|
|
/* 022BE0D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BE0DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u);
|
|
/* 022BE0E0 */ cpu->r[11] = cpu->r[3];
|
|
/* 022BE0E4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE0E4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BE0E4 */ if (_t8) goto L_022BE0E8; else goto L_022BE140;
|
|
L_022BE0E8: ; // 0x22be0e8
|
|
/* 022BE0E8 */ _t9 = cpu->r[31] + 0x00000218u;
|
|
/* 022BE0E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BE0EC */ _t10 = cpu->r[31] + 0x00000148u;
|
|
/* 022BE0EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BE0F0 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022BE0F4 */ _t11 = cpu->r[31] + 0x00000210u;
|
|
/* 022BE0F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BE0F8 */ _t12 = cpu->r[31] + 0x00000140u;
|
|
/* 022BE0F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022BE0FC */ cpu->f[0] = cpu->f[0] * cpu->f[0];
|
|
/* 022BE100 */ cpu->f[13] = cpu->f[13] - cpu->f[12];
|
|
/* 022BE104 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BE108 */ cpu->f[13] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 022BE10C */ _t13 = cpu->r[8] + 0x000043C4u;
|
|
/* 022BE10C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BE110 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BE114 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BE114 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BE114 */ if (_t15) goto L_022BE16C; else goto L_022BE118;
|
|
L_022BE118: ; // 0x22be118
|
|
/* 022BE118 */ _t16 = cpu->r[31] + 0x00000220u;
|
|
/* 022BE118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BE11C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BE120 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE120 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BE120 */ if (_t18) goto L_022BE16C; else goto L_022BE124;
|
|
L_022BE124: ; // 0x22be124
|
|
/* 022BE124 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BE128 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE128 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BE12C */ cpu->lr = cpu->r[0];
|
|
/* 022BE130 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE130 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BE134 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE138 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BE13C */ return;
|
|
L_022BE140: ; // 0x22be140
|
|
/* 022BE140 */ _t22 = cpu->r[31] + 0x0000006Cu;
|
|
/* 022BE140 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BE144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE148 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE148 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022BE148 */ if (_t24) goto L_022BE15C; else goto L_022BE14C;
|
|
L_022BE14C: ; // 0x22be14c
|
|
/* 022BE14C */ cpu->r[4] = cpu->r[11] + 0x00000244u;
|
|
/* 022BE150 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 022BE154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE158 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE158 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022BE158 */ if (_t26) goto L_022BE16C; else goto L_022BE15C;
|
|
L_022BE15C: ; // 0x22be15c
|
|
/* 022BE15C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE160 */ Gambit_fn_022BE08C(cpu);
|
|
/* 022BE164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE168 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE168 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022BE168 */ if (_t28) goto L_022BE16C; else goto L_022BE124;
|
|
L_022BE16C: ; // 0x22be16c
|
|
/* 022BE16C */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE16C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022BE170 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE170 */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022BE174 */ cpu->lr = cpu->r[0];
|
|
/* 022BE178 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE178 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022BE17C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE180 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BE184 */ return;
|
|
}
|
|
|
|
// fn_022BE188 @ 0x22be188
|
|
void Gambit_fn_022BE188(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022BE188: ; // 0x22be188
|
|
/* 022BE188 */ cpu->r[0] = cpu->lr;
|
|
/* 022BE18C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022BE18C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022BE190 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BE194 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE194 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022BE194 */ cpu->r[1] = _t1;
|
|
/* 022BE198 */ _t2 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BE198 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022BE19C */ cpu->r[5] = cpu->r[5] + 0x000043C8u;
|
|
/* 022BE1A0 */ _t3 = cpu->r[12] + 0x00000000u;
|
|
/* 022BE1A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BE1A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BE1A8 */ Gambit_fn_027DBAD4(cpu);
|
|
/* 022BE1AC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE1AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BE1B0 */ cpu->r[12] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022BE1B4 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022BE1B8 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 022BE1BC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE1BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BE1C0 */ cpu->lr = cpu->r[0];
|
|
/* 022BE1C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE1C8 */ return;
|
|
}
|
|
|
|
// fn_022BE194 @ 0x22be194
|
|
void Gambit_fn_022BE194(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022BE194: ; // 0x22be194
|
|
/* 022BE194 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE194 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE194 */ cpu->r[1] = _t0;
|
|
/* 022BE198 */ _t1 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BE198 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BE19C */ cpu->r[5] = cpu->r[5] + 0x000043C8u;
|
|
/* 022BE1A0 */ _t2 = cpu->r[12] + 0x00000000u;
|
|
/* 022BE1A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022BE1A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BE1A8 */ Gambit_fn_027DBAD4(cpu);
|
|
/* 022BE1AC */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE1AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BE1B0 */ cpu->r[12] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022BE1B4 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022BE1B8 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 022BE1BC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE1BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BE1C0 */ cpu->lr = cpu->r[0];
|
|
/* 022BE1C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE1C8 */ return;
|
|
}
|
|
|
|
// fn_022BE1CC @ 0x22be1cc
|
|
void Gambit_fn_022BE1CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BE1CC: ; // 0x22be1cc
|
|
/* 022BE1CC */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022BE1CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE1CC */ cpu->r[1] = _t0;
|
|
/* 022BE1D0 */ /* nop */
|
|
/* 022BE1D4 */ cpu->r[0] = cpu->lr;
|
|
/* 022BE1D8 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 022BE1D8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022BE1DC */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 022BE1DC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BE1E0 */ /* nop */
|
|
/* 022BE1E4 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 022BE1E4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022BE1E8 */ /* nop */
|
|
/* 022BE1EC */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 022BE1EC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 022BE1F0 */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BE1F0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022BE1F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BE1F8 */ _t6 = cpu->r[30] + 0x000001A4u;
|
|
/* 022BE1F8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t6);
|
|
/* 022BE1FC */ /* nop */
|
|
/* 022BE200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000006u);
|
|
/* 022BE204 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE204 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BE204 */ if (_t8) goto L_022BE250; else goto L_022BE208;
|
|
L_022BE208: ; // 0x22be208
|
|
/* 022BE208 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BE20C */ _t9 = cpu->r[30] + 0x000000E0u;
|
|
/* 022BE20C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BE210 */ _t10 = cpu->r[8] + 0x000042C8u;
|
|
/* 022BE210 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BE214 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[11]);
|
|
/* 022BE218 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BE218 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022BE218 */ if (_t12) goto L_022BE250; else goto L_022BE21C;
|
|
L_022BE21C: ; // 0x22be21c
|
|
/* 022BE21C */ cpu->r[3] = cpu->r[30] + 0x00000198u;
|
|
/* 022BE220 */ cpu->r[4] = 0x00000006u;
|
|
/* 022BE224 */ Gambit_fn_022C0618(cpu);
|
|
/* 022BE228 */ /* nop */
|
|
/* 022BE22C */ _t13 = cpu->r[1] + 0x00000030u;
|
|
/* 022BE22C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BE230 */ _t14 = cpu->r[1] + 0x00000040u;
|
|
/* 022BE230 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022BE234 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 022BE234 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 022BE238 */ _t16 = cpu->r[1] + 0x00000038u;
|
|
/* 022BE238 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 022BE23C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BE23C */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BE23C */ if (_t18) goto L_022BE240; // else: addr-0 trap, fall-through
|
|
L_022BE240: ; // 0x22be240
|
|
/* 022BE240 */ _t19 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BE240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BE244 */ cpu->lr = cpu->r[0];
|
|
/* 022BE248 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 022BE24C */ return;
|
|
L_022BE250: ; // 0x22be250
|
|
/* 022BE250 */ _t20 = cpu->r[30] + 0x00000190u;
|
|
/* 022BE250 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BE254 */ cpu->r[28] = 0x101D0000u;
|
|
/* 022BE258 */ cpu->r[29] = 0x10060000u;
|
|
/* 022BE25C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 022BE260 */ cpu->r[27] = 0x101D0000u;
|
|
/* 022BE264 */ cpu->r[29] = cpu->r[29] + 0x000041D8u;
|
|
/* 022BE268 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE268 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022BE268 */ if (_t22) goto L_022BE26C; else goto L_022BE32C;
|
|
L_022BE26C: ; // 0x22be26c
|
|
/* 022BE26C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000004u);
|
|
/* 022BE270 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE270 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022BE270 */ if (_t24) goto L_022BE32C; else goto L_022BE274;
|
|
L_022BE274: ; // 0x22be274
|
|
/* 022BE274 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BE278 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BE27C */ _t25 = cpu->r[28] + 0x000001B0u;
|
|
/* 022BE27C */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022BE280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022BE284 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE288 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE288 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BE288 */ if (_t27) goto L_022BE28C; else goto L_022BE298;
|
|
L_022BE28C: ; // 0x22be28c
|
|
/* 022BE28C */ _t28 = cpu->r[27] + 0x000001ACu;
|
|
/* 022BE28C */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
/* 022BE290 */ cpu->r[10] = 0x00000001u;
|
|
/* 022BE294 */ _t29 = cpu->r[28] + 0x000001B0u;
|
|
/* 022BE294 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
L_022BE298: ; // 0x22be298
|
|
/* 022BE298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BE29C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE29C */ _t31 = _t30 & 0x00000001u;
|
|
/* 022BE29C */ if (_t31) goto L_022BE2C0; else goto L_022BE2A0;
|
|
L_022BE2A0: ; // 0x22be2a0
|
|
/* 022BE2A0 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 022BE2A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022BE2A4 */ _t33 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022BE2A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BE2A8 */ cpu->ctr = cpu->r[12];
|
|
/* 022BE2AC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE2B0 */ cpu->r[4] = cpu->r[27] + 0x000001ACu;
|
|
/* 022BE2B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BE2B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE2BC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE2BC */ _t35 = _t34 & 0x00000001u;
|
|
/* 022BE2BC */ if (_t35) goto L_022BE2C0; else goto L_022BE2C4;
|
|
L_022BE2C0: ; // 0x22be2c0
|
|
/* 022BE2C0 */ cpu->r[31] = 0x00000000u;
|
|
L_022BE2C4: ; // 0x22be2c4
|
|
/* 022BE2C4 */ _t36 = cpu->r[30] + 0x00000238u;
|
|
/* 022BE2C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022BE2C8 */ _t37 = cpu->r[31] + 0x00000DA4u;
|
|
/* 022BE2C8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022BE2CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[8]);
|
|
/* 022BE2D0 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BE2D0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022BE2D0 */ if (_t39) goto L_022BE2F8; else goto L_022BE2D4;
|
|
L_022BE2D4: ; // 0x22be2d4
|
|
/* 022BE2D4 */ _t40 = cpu->r[30] + 0x000001A4u;
|
|
/* 022BE2D4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t40);
|
|
/* 022BE2D8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BE2DC */ _t41 = cpu->r[30] + 0x00000094u;
|
|
/* 022BE2DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022BE2E0 */ /* nop */
|
|
/* 022BE2E4 */ _t42 = cpu->r[6] + 0x00004340u;
|
|
/* 022BE2E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022BE2E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000006u);
|
|
/* 022BE2EC */ _t43 = cpu->r[9] + 0x00000004u;
|
|
/* 022BE2EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BE2F0 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BE2F0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022BE2F0 */ if (_t45) goto L_022BE7B8; else goto L_022BE2F4;
|
|
L_022BE2F4: ; // 0x22be2f4
|
|
/* 022BE2F4 */ goto L_022BE344;
|
|
L_022BE2F8: ; // 0x22be2f8
|
|
/* 022BE2F8 */ cpu->r[3] = cpu->r[30] + 0x00000198u;
|
|
/* 022BE2FC */ cpu->r[4] = 0x00000004u;
|
|
/* 022BE300 */ Gambit_fn_022C0618(cpu);
|
|
/* 022BE304 */ /* nop */
|
|
/* 022BE308 */ _t46 = cpu->r[1] + 0x00000030u;
|
|
/* 022BE308 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022BE30C */ _t47 = cpu->r[1] + 0x00000040u;
|
|
/* 022BE30C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BE310 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 022BE310 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 022BE314 */ _t49 = cpu->r[1] + 0x00000038u;
|
|
/* 022BE314 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 022BE318 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BE318 */ _t51 = _t50 & 0x00000001u;
|
|
/* 022BE318 */ if (_t51) goto L_022BE31C; // else: addr-0 trap, fall-through
|
|
L_022BE31C: ; // 0x22be31c
|
|
/* 022BE31C */ _t52 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BE31C */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022BE320 */ cpu->lr = cpu->r[0];
|
|
/* 022BE324 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 022BE328 */ return;
|
|
L_022BE32C: ; // 0x22be32c
|
|
/* 022BE32C */ _t53 = cpu->r[30] + 0x00000094u;
|
|
/* 022BE32C */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022BE330 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BE334 */ _t54 = cpu->r[6] + 0x00004340u;
|
|
/* 022BE334 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022BE338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000006u);
|
|
/* 022BE33C */ _t55 = cpu->r[9] + 0x00000004u;
|
|
/* 022BE33C */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022BE340 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BE340 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022BE340 */ if (_t57) goto L_022BE7B8; else goto L_022BE344;
|
|
L_022BE344: ; // 0x22be344
|
|
/* 022BE344 */ cpu->r[0] = 0x022C0000u;
|
|
/* 022BE348 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022BE34C */ cpu->r[0] = cpu->r[0] + 0xFFFFE35Cu;
|
|
/* 022BE350 */ cpu->r[0] = cpu->r[10] + cpu->r[0];
|
|
/* 022BE354 */ cpu->ctr = cpu->r[0];
|
|
/* 022BE358 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_022BE7B8: ; // 0x22be7b8
|
|
/* 022BE7B8 */ /* nop */
|
|
/* 022BE7BC */ _t58 = cpu->r[1] + 0x00000030u;
|
|
/* 022BE7BC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022BE7C0 */ _t59 = cpu->r[1] + 0x00000040u;
|
|
/* 022BE7C0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022BE7C4 */ _t60 = cpu->r[1] + 0x00000028u;
|
|
/* 022BE7C4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t60);
|
|
/* 022BE7C8 */ _t61 = cpu->r[1] + 0x00000038u;
|
|
/* 022BE7C8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t61);
|
|
/* 022BE7CC */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BE7CC */ _t63 = _t62 & 0x00000001u;
|
|
/* 022BE7CC */ if (_t63) goto L_022BE7D0; // else: addr-0 trap, fall-through
|
|
L_022BE7D0: ; // 0x22be7d0
|
|
/* 022BE7D0 */ _t64 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BE7D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022BE7D4 */ cpu->lr = cpu->r[0];
|
|
/* 022BE7D8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 022BE7DC */ return;
|
|
}
|
|
|
|
// fn_022BE7E0 @ 0x22be7e0
|
|
void Gambit_fn_022BE7E0(CPUState* cpu) {
|
|
uint32_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_022BE7E0: ; // 0x22be7e0
|
|
/* 022BE7E0 */ cpu->r[0] = cpu->lr;
|
|
/* 022BE7E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE7E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE7E4 */ cpu->r[1] = _t0;
|
|
/* 022BE7E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE7E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BE7EC */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE7F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE7F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BE7F4 */ Gambit_fn_022BBE90(cpu);
|
|
/* 022BE7F8 */ Gambit_fn_022BBEE8(cpu);
|
|
/* 022BE7FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE800 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE800 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BE800 */ if (_t4) goto L_022BE804; else goto L_022BE80C;
|
|
L_022BE804: ; // 0x22be804
|
|
/* 022BE804 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE808 */ Gambit_fn_022BC2D4(cpu);
|
|
L_022BE80C: ; // 0x22be80c
|
|
/* 022BE80C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE810 */ Gambit_fn_022BC33C(cpu);
|
|
/* 022BE814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE818 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE818 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BE818 */ if (_t6) goto L_022BE81C; else goto L_022BE834;
|
|
L_022BE81C: ; // 0x22be81c
|
|
/* 022BE81C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE820 */ Gambit_fn_022BBEE8(cpu);
|
|
/* 022BE824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE828 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE828 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BE828 */ if (_t8) goto L_022BE82C; else goto L_022BE834;
|
|
L_022BE82C: ; // 0x22be82c
|
|
/* 022BE82C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE830 */ Gambit_fn_022BD728(cpu);
|
|
L_022BE834: ; // 0x22be834
|
|
/* 022BE834 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE838 */ Gambit_fn_022BD7D0(cpu);
|
|
/* 022BE83C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE840 */ Gambit_fn_022BC33C(cpu);
|
|
/* 022BE844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE848 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE848 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BE848 */ if (_t10) goto L_022BE84C; else goto L_022BE86C;
|
|
L_022BE84C: ; // 0x22be84c
|
|
/* 022BE84C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE850 */ Gambit_fn_022BBEE8(cpu);
|
|
/* 022BE854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE858 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE858 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022BE858 */ if (_t12) goto L_022BE85C; else goto L_022BE86C;
|
|
L_022BE85C: ; // 0x22be85c
|
|
/* 022BE85C */ _t13 = cpu->r[31] + 0x000001A4u;
|
|
/* 022BE85C */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022BE860 */ /* nop */
|
|
/* 022BE864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BE868 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE868 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BE868 */ if (_t15) goto L_022BE888; else goto L_022BE86C;
|
|
L_022BE86C: ; // 0x22be86c
|
|
/* 022BE86C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE870 */ Gambit_fn_022BD9F4(cpu);
|
|
/* 022BE874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE878 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE878 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BE878 */ if (_t17) goto L_022BE890; else goto L_022BE87C;
|
|
L_022BE87C: ; // 0x22be87c
|
|
/* 022BE87C */ _t18 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022BE87C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BE880 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BE880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BE884 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE884 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BE884 */ if (_t20) goto L_022BE888; else goto L_022BE890;
|
|
L_022BE888: ; // 0x22be888
|
|
/* 022BE888 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE88C */ Gambit_fn_022BE004(cpu);
|
|
L_022BE890: ; // 0x22be890
|
|
/* 022BE890 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE894 */ Gambit_fn_022BE1CC(cpu);
|
|
/* 022BE898 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE898 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BE89C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE89C */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BE8A0 */ cpu->lr = cpu->r[0];
|
|
/* 022BE8A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE8A8 */ return;
|
|
}
|
|
|
|
// fn_022BE7E4 @ 0x22be7e4
|
|
void Gambit_fn_022BE7E4(CPUState* cpu) {
|
|
uint32_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_022BE7E4: ; // 0x22be7e4
|
|
/* 022BE7E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE7E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE7E4 */ cpu->r[1] = _t0;
|
|
/* 022BE7E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE7E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BE7EC */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE7F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE7F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BE7F4 */ Gambit_fn_022BBE90(cpu);
|
|
/* 022BE7F8 */ Gambit_fn_022BBEE8(cpu);
|
|
/* 022BE7FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE800 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE800 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022BE800 */ if (_t4) goto L_022BE804; else goto L_022BE80C;
|
|
L_022BE804: ; // 0x22be804
|
|
/* 022BE804 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE808 */ Gambit_fn_022BC2D4(cpu);
|
|
L_022BE80C: ; // 0x22be80c
|
|
/* 022BE80C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE810 */ Gambit_fn_022BC33C(cpu);
|
|
/* 022BE814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE818 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE818 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BE818 */ if (_t6) goto L_022BE81C; else goto L_022BE834;
|
|
L_022BE81C: ; // 0x22be81c
|
|
/* 022BE81C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE820 */ Gambit_fn_022BBEE8(cpu);
|
|
/* 022BE824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE828 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE828 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BE828 */ if (_t8) goto L_022BE82C; else goto L_022BE834;
|
|
L_022BE82C: ; // 0x22be82c
|
|
/* 022BE82C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE830 */ Gambit_fn_022BD728(cpu);
|
|
L_022BE834: ; // 0x22be834
|
|
/* 022BE834 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE838 */ Gambit_fn_022BD7D0(cpu);
|
|
/* 022BE83C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE840 */ Gambit_fn_022BC33C(cpu);
|
|
/* 022BE844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE848 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE848 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BE848 */ if (_t10) goto L_022BE84C; else goto L_022BE86C;
|
|
L_022BE84C: ; // 0x22be84c
|
|
/* 022BE84C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE850 */ Gambit_fn_022BBEE8(cpu);
|
|
/* 022BE854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE858 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE858 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022BE858 */ if (_t12) goto L_022BE85C; else goto L_022BE86C;
|
|
L_022BE85C: ; // 0x22be85c
|
|
/* 022BE85C */ _t13 = cpu->r[31] + 0x000001A4u;
|
|
/* 022BE85C */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022BE860 */ /* nop */
|
|
/* 022BE864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BE868 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE868 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BE868 */ if (_t15) goto L_022BE888; else goto L_022BE86C;
|
|
L_022BE86C: ; // 0x22be86c
|
|
/* 022BE86C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE870 */ Gambit_fn_022BD9F4(cpu);
|
|
/* 022BE874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE878 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE878 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BE878 */ if (_t17) goto L_022BE890; else goto L_022BE87C;
|
|
L_022BE87C: ; // 0x22be87c
|
|
/* 022BE87C */ _t18 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022BE87C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BE880 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BE880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BE884 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE884 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BE884 */ if (_t20) goto L_022BE888; else goto L_022BE890;
|
|
L_022BE888: ; // 0x22be888
|
|
/* 022BE888 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE88C */ Gambit_fn_022BE004(cpu);
|
|
L_022BE890: ; // 0x22be890
|
|
/* 022BE890 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE894 */ Gambit_fn_022BE1CC(cpu);
|
|
/* 022BE898 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE898 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BE89C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE89C */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BE8A0 */ cpu->lr = cpu->r[0];
|
|
/* 022BE8A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BE8A8 */ return;
|
|
}
|
|
|
|
// fn_022BE8AC @ 0x22be8ac
|
|
void Gambit_fn_022BE8AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_022BE8AC: ; // 0x22be8ac
|
|
/* 022BE8AC */ cpu->r[0] = cpu->lr;
|
|
/* 022BE8B0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022BE8B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE8B0 */ cpu->r[1] = _t0;
|
|
/* 022BE8B4 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 022BE8B4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BE8B8 */ /* nop */
|
|
/* 022BE8BC */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 022BE8BC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BE8C0 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022BE8C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BE8C4 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 022BE8C4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022BE8C8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BE8CC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BE8CC */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022BE8D0 */ _t6 = cpu->r[30] + 0x00000190u;
|
|
/* 022BE8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BE8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BE8D8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE8D8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BE8D8 */ if (_t8) goto L_022BE8DC; else goto L_022BE9B8;
|
|
L_022BE8DC: ; // 0x22be8dc
|
|
/* 022BE8DC */ cpu->r[10] = 0x10060000u;
|
|
/* 022BE8E0 */ _t9 = cpu->r[30] + 0x00000238u;
|
|
/* 022BE8E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BE8E4 */ _t10 = cpu->r[10] + 0x000042C8u;
|
|
/* 022BE8E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BE8E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BE8EC */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BE8EC */ _t12 = _t11 & 0x00000001u;
|
|
/* 022BE8EC */ if (_t12) goto L_022BE8F0; else goto L_022BE9B8;
|
|
L_022BE8F0: ; // 0x22be8f0
|
|
/* 022BE8F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BE8F4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BE8F8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BE8FC */ _t13 = cpu->r[12] + 0x000001B0u;
|
|
/* 022BE8FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BE8FC */ cpu->r[12] = _t13;
|
|
/* 022BE900 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BE904 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022BE90C */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BE910 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE910 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BE910 */ if (_t15) goto L_022BE914; else goto L_022BE928;
|
|
L_022BE914: ; // 0x22be914
|
|
/* 022BE914 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BE918 */ cpu->r[11] = 0x00000001u;
|
|
/* 022BE91C */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BE920 */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 022BE920 */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 022BE924 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 022BE924 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
L_022BE928: ; // 0x22be928
|
|
/* 022BE928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BE92C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE92C */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BE92C */ if (_t19) goto L_022BE94C; else goto L_022BE930;
|
|
L_022BE930: ; // 0x22be930
|
|
/* 022BE930 */ _t20 = cpu->r[31] + 0x00000000u;
|
|
/* 022BE930 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BE934 */ _t21 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022BE934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BE938 */ cpu->ctr = cpu->r[0];
|
|
/* 022BE93C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE940 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BE944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE948 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE948 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022BE948 */ if (_t23) goto L_022BE94C; else goto L_022BE950;
|
|
L_022BE94C: ; // 0x22be94c
|
|
/* 022BE94C */ cpu->r[31] = 0x00000000u;
|
|
L_022BE950: ; // 0x22be950
|
|
/* 022BE950 */ _t24 = cpu->r[30] + 0x00000238u;
|
|
/* 022BE950 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BE954 */ _t25 = cpu->r[31] + 0x00000E64u;
|
|
/* 022BE954 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BE958 */ _t26 = cpu->r[30] + 0x00000234u;
|
|
/* 022BE958 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022BE95C */ cpu->f[31] = cpu->f[10] / cpu->f[12];
|
|
/* 022BE960 */ _t27 = cpu->r[10] + 0x00000000u;
|
|
/* 022BE960 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BE964 */ _t28 = cpu->r[10] + 0x00000004u;
|
|
/* 022BE964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BE968 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE968 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 022BE96C */ _t30 = cpu->r[11] + 0x000000A4u;
|
|
/* 022BE96C */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022BE970 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BE974 */ Gambit_fn_0298415C(cpu);
|
|
/* 022BE978 */ cpu->r[12] = 0x43300000u;
|
|
/* 022BE97C */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 022BE97C */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 022BE980 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BE984 */ _t32 = cpu->r[12] + 0x000043D8u;
|
|
/* 022BE984 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 022BE988 */ cpu->r[9] = cpu->r[3] ^ 0x80000000u;
|
|
/* 022BE98C */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE98C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 022BE990 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 022BE990 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 022BE994 */ cpu->f[11] = cpu->f[10] - cpu->f[13];
|
|
/* 022BE998 */ cpu->f[12] = (double)(float)cpu->f[11];
|
|
/* 022BE99C */ cpu->f[11] = cpu->f[31] * cpu->f[12];
|
|
/* 022BE9A0 */ _t35 = cpu->r[30] + 0x00000234u;
|
|
/* 022BE9A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022BE9A4 */ _t36 = cpu->r[12] + 0x00000008u;
|
|
/* 022BE9A4 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 022BE9A8 */ _t37 = cpu->r[30] + 0x00000234u;
|
|
/* 022BE9A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022BE9AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE9B0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE9B0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022BE9B0 */ if (_t39) goto L_022BE9B8; else goto L_022BE9B4;
|
|
L_022BE9B4: ; // 0x22be9b4
|
|
/* 022BE9B4 */ Gambit_fn_027C5E34(cpu);
|
|
L_022BE9B8: ; // 0x22be9b8
|
|
/* 022BE9B8 */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 022BE9B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BE9BC */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BE9BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022BE9C0 */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 022BE9C0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t42);
|
|
/* 022BE9C4 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 022BE9C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BE9C8 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BE9C8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022BE9C8 */ if (_t45) goto L_022BE9CC; // else: addr-0 trap, fall-through
|
|
L_022BE9CC: ; // 0x22be9cc
|
|
/* 022BE9CC */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 022BE9CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022BE9D0 */ cpu->lr = cpu->r[0];
|
|
/* 022BE9D4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022BE9D8 */ return;
|
|
}
|
|
|
|
// fn_022BE8B0 @ 0x22be8b0
|
|
void Gambit_fn_022BE8B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_022BE8B0: ; // 0x22be8b0
|
|
/* 022BE8B0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022BE8B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE8B0 */ cpu->r[1] = _t0;
|
|
/* 022BE8B4 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 022BE8B4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022BE8B8 */ /* nop */
|
|
/* 022BE8BC */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 022BE8BC */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022BE8C0 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022BE8C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BE8C4 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 022BE8C4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022BE8C8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BE8CC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BE8CC */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022BE8D0 */ _t6 = cpu->r[30] + 0x00000190u;
|
|
/* 022BE8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BE8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BE8D8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE8D8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BE8D8 */ if (_t8) goto L_022BE8DC; else goto L_022BE9B8;
|
|
L_022BE8DC: ; // 0x22be8dc
|
|
/* 022BE8DC */ cpu->r[10] = 0x10060000u;
|
|
/* 022BE8E0 */ _t9 = cpu->r[30] + 0x00000238u;
|
|
/* 022BE8E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BE8E4 */ _t10 = cpu->r[10] + 0x000042C8u;
|
|
/* 022BE8E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022BE8E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022BE8EC */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BE8EC */ _t12 = _t11 & 0x00000001u;
|
|
/* 022BE8EC */ if (_t12) goto L_022BE8F0; else goto L_022BE9B8;
|
|
L_022BE8F0: ; // 0x22be8f0
|
|
/* 022BE8F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BE8F4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BE8F8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BE8FC */ _t13 = cpu->r[12] + 0x000001B0u;
|
|
/* 022BE8FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BE8FC */ cpu->r[12] = _t13;
|
|
/* 022BE900 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BE904 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022BE90C */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BE910 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE910 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BE910 */ if (_t15) goto L_022BE914; else goto L_022BE928;
|
|
L_022BE914: ; // 0x22be914
|
|
/* 022BE914 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BE918 */ cpu->r[11] = 0x00000001u;
|
|
/* 022BE91C */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BE920 */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 022BE920 */ rbrew_write32(cpu->mem, _t16, cpu->r[11]);
|
|
/* 022BE924 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 022BE924 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
L_022BE928: ; // 0x22be928
|
|
/* 022BE928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BE92C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE92C */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BE92C */ if (_t19) goto L_022BE94C; else goto L_022BE930;
|
|
L_022BE930: ; // 0x22be930
|
|
/* 022BE930 */ _t20 = cpu->r[31] + 0x00000000u;
|
|
/* 022BE930 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BE934 */ _t21 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022BE934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BE938 */ cpu->ctr = cpu->r[0];
|
|
/* 022BE93C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE940 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BE944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE948 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE948 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022BE948 */ if (_t23) goto L_022BE94C; else goto L_022BE950;
|
|
L_022BE94C: ; // 0x22be94c
|
|
/* 022BE94C */ cpu->r[31] = 0x00000000u;
|
|
L_022BE950: ; // 0x22be950
|
|
/* 022BE950 */ _t24 = cpu->r[30] + 0x00000238u;
|
|
/* 022BE950 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BE954 */ _t25 = cpu->r[31] + 0x00000E64u;
|
|
/* 022BE954 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022BE958 */ _t26 = cpu->r[30] + 0x00000234u;
|
|
/* 022BE958 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022BE95C */ cpu->f[31] = cpu->f[10] / cpu->f[12];
|
|
/* 022BE960 */ _t27 = cpu->r[10] + 0x00000000u;
|
|
/* 022BE960 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BE964 */ _t28 = cpu->r[10] + 0x00000004u;
|
|
/* 022BE964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BE968 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022BE968 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 022BE96C */ _t30 = cpu->r[11] + 0x000000A4u;
|
|
/* 022BE96C */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022BE970 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BE974 */ Gambit_fn_0298415C(cpu);
|
|
/* 022BE978 */ cpu->r[12] = 0x43300000u;
|
|
/* 022BE97C */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 022BE97C */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 022BE980 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BE984 */ _t32 = cpu->r[12] + 0x000043D8u;
|
|
/* 022BE984 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 022BE988 */ cpu->r[9] = cpu->r[3] ^ 0x80000000u;
|
|
/* 022BE98C */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE98C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 022BE990 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 022BE990 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 022BE994 */ cpu->f[11] = cpu->f[10] - cpu->f[13];
|
|
/* 022BE998 */ cpu->f[12] = (double)(float)cpu->f[11];
|
|
/* 022BE99C */ cpu->f[11] = cpu->f[31] * cpu->f[12];
|
|
/* 022BE9A0 */ _t35 = cpu->r[30] + 0x00000234u;
|
|
/* 022BE9A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022BE9A4 */ _t36 = cpu->r[12] + 0x00000008u;
|
|
/* 022BE9A4 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 022BE9A8 */ _t37 = cpu->r[30] + 0x00000234u;
|
|
/* 022BE9A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022BE9AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BE9B0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BE9B0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022BE9B0 */ if (_t39) goto L_022BE9B8; else goto L_022BE9B4;
|
|
L_022BE9B4: ; // 0x22be9b4
|
|
/* 022BE9B4 */ Gambit_fn_027C5E34(cpu);
|
|
L_022BE9B8: ; // 0x22be9b8
|
|
/* 022BE9B8 */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 022BE9B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BE9BC */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BE9BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022BE9C0 */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 022BE9C0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t42);
|
|
/* 022BE9C4 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 022BE9C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BE9C8 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BE9C8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022BE9C8 */ if (_t45) goto L_022BE9CC; // else: addr-0 trap, fall-through
|
|
L_022BE9CC: ; // 0x22be9cc
|
|
/* 022BE9CC */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 022BE9CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022BE9D0 */ cpu->lr = cpu->r[0];
|
|
/* 022BE9D4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022BE9D8 */ return;
|
|
}
|
|
|
|
// fn_022BE9DC @ 0x22be9dc
|
|
void Gambit_fn_022BE9DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022BE9DC: ; // 0x22be9dc
|
|
/* 022BE9DC */ cpu->r[0] = cpu->lr;
|
|
/* 022BE9E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE9E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE9E0 */ cpu->r[1] = _t0;
|
|
/* 022BE9E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE9E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BE9E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE9EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE9EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BE9F0 */ Gambit_fn_022BE8AC(cpu);
|
|
/* 022BE9F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE9F8 */ Gambit_fn_022709EC(cpu);
|
|
/* 022BE9FC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE9FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BEA00 */ cpu->lr = cpu->r[0];
|
|
/* 022BEA04 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEA04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BEA08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BEA0C */ return;
|
|
}
|
|
|
|
// fn_022BE9E0 @ 0x22be9e0
|
|
void Gambit_fn_022BE9E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022BE9E0: ; // 0x22be9e0
|
|
/* 022BE9E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BE9E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BE9E0 */ cpu->r[1] = _t0;
|
|
/* 022BE9E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BE9E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BE9E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BE9EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE9EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BE9F0 */ Gambit_fn_022BE8AC(cpu);
|
|
/* 022BE9F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BE9F8 */ Gambit_fn_022709EC(cpu);
|
|
/* 022BE9FC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BE9FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BEA00 */ cpu->lr = cpu->r[0];
|
|
/* 022BEA04 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEA04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BEA08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BEA0C */ return;
|
|
}
|
|
|
|
// fn_022BEA10 @ 0x22bea10
|
|
void Gambit_fn_022BEA10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _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_02271850: ; // 0x2271850
|
|
/* 02271850 */ cpu->r[0] = cpu->lr;
|
|
/* 02271854 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02271854 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02271854 */ cpu->r[1] = _t0;
|
|
/* 02271858 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02271858 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0227185C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0227185C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02271860 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02271860 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02271864 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02271864 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02271868 */ cpu->r[29] = cpu->r[3];
|
|
/* 0227186C */ Gambit_fn_0226ED34(cpu);
|
|
/* 02271870 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02271874 */ _t5 = cpu->r[7] + 0xFFFFDA38u;
|
|
/* 02271874 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02271874 */ cpu->r[7] = _t5;
|
|
/* 02271878 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0227187C */ cpu->r[31] = cpu->r[3];
|
|
/* 02271880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02271884 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFE8u;
|
|
/* 02271888 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02271888 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02271888 */ if (_t7) goto L_0227188C; else goto L_022718A0;
|
|
L_0227188C: ; // 0x227188c
|
|
/* 0227188C */ cpu->r[8] = 0x10060000u;
|
|
/* 02271890 */ cpu->r[0] = 0x00000001u;
|
|
/* 02271894 */ cpu->r[8] = cpu->r[8] + 0xFFFF9008u;
|
|
/* 02271898 */ _t8 = cpu->r[7] + 0x00000000u;
|
|
/* 02271898 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0227189C */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 0227189C */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
L_022718A0: ; // 0x22718a0
|
|
/* 022718A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022718A4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022718A4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022718A4 */ if (_t11) goto L_022718C4; else goto L_022718A8;
|
|
L_022718A8: ; // 0x22718a8
|
|
/* 022718A8 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 022718A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022718AC */ _t13 = cpu->r[9] + 0x0000006Cu;
|
|
/* 022718AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022718B0 */ cpu->ctr = cpu->r[11];
|
|
/* 022718B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022718B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022718BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022718C0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022718C0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022718C0 */ if (_t15) goto L_022718C4; else goto L_022718C8;
|
|
L_022718C4: ; // 0x22718c4
|
|
/* 022718C4 */ cpu->r[31] = 0x00000000u;
|
|
L_022718C8: ; // 0x22718c8
|
|
/* 022718C8 */ cpu->r[3] = 0x00000020u;
|
|
/* 022718CC */ Gambit_fn_02801A78(cpu);
|
|
/* 022718D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022718D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022718D4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022718D4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022718D4 */ if (_t17) goto L_022718F4; else goto L_022718D8;
|
|
L_022718D8: ; // 0x22718d8
|
|
/* 022718D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022718DC */ cpu->r[4] = cpu->r[31] + 0x00000988u;
|
|
/* 022718E0 */ Gambit_fn_02390BCC(cpu);
|
|
/* 022718E4 */ cpu->r[10] = 0x10050000u;
|
|
/* 022718E8 */ _t18 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022718E8 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 022718EC */ cpu->r[10] = cpu->r[10] + 0x00004284u;
|
|
/* 022718F0 */ _t19 = cpu->r[30] + 0x00000018u;
|
|
/* 022718F0 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
L_022718F4: ; // 0x22718f4
|
|
/* 022718F4 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022718F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022718F8 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022718F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022718FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02271900 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02271900 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02271904 */ cpu->lr = cpu->r[0];
|
|
/* 02271908 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02271908 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0227190C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02271910 */ return;
|
|
L_022BEA10: ; // 0x22bea10
|
|
/* 022BEA10 */ _t24 = cpu->r[3] + 0x0000005Cu;
|
|
/* 022BEA10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BEA14 */ _t25 = cpu->r[12] + 0x000046D8u;
|
|
/* 022BEA14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022BEA18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022BEA1C */ cpu->r[0] = 0x00000000u;
|
|
/* 022BEA20 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BEA20 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BEA20 */ if (_t27) goto L_022BEA28; else goto L_022BEA24;
|
|
L_022BEA24: ; // 0x22bea24
|
|
/* 022BEA24 */ goto L_02271850;
|
|
L_022BEA28: ; // 0x22bea28
|
|
/* 022BEA28 */ cpu->r[3] = cpu->r[0];
|
|
/* 022BEA2C */ return;
|
|
}
|
|
|
|
// fn_022BEA34 @ 0x22bea34
|
|
void Gambit_fn_022BEA34(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_022BEA34: ; // 0x22bea34
|
|
/* 022BEA34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BEA34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BEA34 */ cpu->r[1] = _t0;
|
|
/* 022BEA38 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022BEA38 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BEA3C */ cpu->r[30] = 0x101E0000u;
|
|
/* 022BEA40 */ cpu->r[30] = cpu->r[30] + 0x00003BD4u;
|
|
/* 022BEA44 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEA44 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BEA48 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEA48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BEA4C */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 022BEA4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BEA50 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 022BEA50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BEA54 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BEA58 */ cpu->ctr = cpu->r[0];
|
|
/* 022BEA5C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BEA60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BEA64 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 022BEA64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BEA68 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BEA6C */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022BEA6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BEA70 */ Gambit_fn_02398850(cpu);
|
|
/* 022BEA74 */ _t8 = cpu->r[31] + 0x00000314u;
|
|
/* 022BEA74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BEA78 */ cpu->r[30] = 0x00000000u;
|
|
/* 022BEA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BEA80 */ _t9 = cpu->r[31] + 0x000001E8u;
|
|
/* 022BEA80 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 022BEA84 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BEA84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BEA84 */ if (_t11) goto L_022BEA9C; else goto L_022BEA88;
|
|
L_022BEA88: ; // 0x22bea88
|
|
/* 022BEA88 */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 022BEA88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BEA8C */ _t13 = cpu->r[10] + 0x00000024u;
|
|
/* 022BEA8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BEA90 */ cpu->ctr = cpu->r[0];
|
|
/* 022BEA94 */ cpu->r[4] = cpu->r[31] + 0x00000140u;
|
|
/* 022BEA98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022BEA9C: ; // 0x22bea9c
|
|
/* 022BEA9C */ _t14 = cpu->r[31] + 0x00000194u;
|
|
/* 022BEA9C */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 022BEAA0 */ _t15 = cpu->r[31] + 0x00000194u;
|
|
/* 022BEAA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BEAA4 */ _t16 = cpu->r[31] + 0x0000021Cu;
|
|
/* 022BEAA4 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[30]);
|
|
/* 022BEAA8 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEAA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BEAAC */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022BEAAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BEAB0 */ cpu->lr = cpu->r[0];
|
|
/* 022BEAB4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEAB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BEAB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BEABC */ return;
|
|
}
|
|
|
|
// fn_022BEACC @ 0x22beacc
|
|
void Gambit_fn_022BEACC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022BEACC: ; // 0x22beacc
|
|
/* 022BEACC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BEACC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BEACC */ cpu->r[1] = _t0;
|
|
/* 022BEAD0 */ _t1 = cpu->r[11] + 0x00000314u;
|
|
/* 022BEAD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BEAD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BEAD8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BEAD8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BEAD8 */ if (_t3) goto L_022BEAF4; else goto L_022BEADC;
|
|
L_022BEADC: ; // 0x22beadc
|
|
/* 022BEADC */ cpu->r[3] = cpu->r[11];
|
|
/* 022BEAE0 */ Gambit_fn_022BD204(cpu);
|
|
/* 022BEAE4 */ cpu->f[1] = cpu->f[1] + cpu->f[1];
|
|
/* 022BEAE8 */ cpu->r[3] = cpu->r[0];
|
|
/* 022BEAEC */ cpu->r[4] = cpu->r[11] + 0x00000140u;
|
|
/* 022BEAF0 */ Gambit_fn_023B0DB4(cpu);
|
|
L_022BEAF4: ; // 0x22beaf4
|
|
/* 022BEAF4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEAF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BEAF8 */ cpu->lr = cpu->r[0];
|
|
/* 022BEAFC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BEB00 */ return;
|
|
}
|
|
|
|
// fn_022BEB04 @ 0x22beb04
|
|
void Gambit_fn_022BEB04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59;
|
|
|
|
L_022BEB04: ; // 0x22beb04
|
|
/* 022BEB04 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022BEB04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BEB04 */ cpu->r[1] = _t0;
|
|
/* 022BEB08 */ /* nop */
|
|
/* 022BEB0C */ cpu->r[0] = cpu->lr;
|
|
/* 022BEB10 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022BEB14 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BEB14 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022BEB18 */ cpu->r[30] = cpu->r[30] + 0x00003BDCu;
|
|
/* 022BEB1C */ _t2 = cpu->r[30] + 0x00000004u;
|
|
/* 022BEB1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022BEB20 */ _t3 = cpu->r[10] + 0x00000014u;
|
|
/* 022BEB20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BEB24 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BEB28 */ cpu->ctr = cpu->r[0];
|
|
/* 022BEB2C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BEB30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BEB34 */ _t4 = cpu->r[31] + 0x00000094u;
|
|
/* 022BEB34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BEB38 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BEB3C */ _t5 = cpu->r[30] + 0x00000000u;
|
|
/* 022BEB3C */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BEB40 */ Gambit_fn_02398850(cpu);
|
|
/* 022BEB44 */ _t6 = cpu->r[31] + 0x00000030u;
|
|
/* 022BEB44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BEB48 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BEB4C */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 022BEB4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BEB50 */ cpu->r[5] = cpu->r[5] + 0x000043ECu;
|
|
/* 022BEB54 */ cpu->r[6] = 0x00000000u;
|
|
/* 022BEB58 */ Gambit_fn_027B72F0(cpu);
|
|
/* 022BEB5C */ cpu->r[30] = 0x10060000u;
|
|
/* 022BEB60 */ _t8 = cpu->r[31] + 0x00000008u;
|
|
/* 022BEB60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BEB64 */ cpu->r[30] = cpu->r[30] + 0x00004138u;
|
|
/* 022BEB68 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BEB6C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEB6C */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 022BEB70 */ cpu->r[0] = cpu->r[0] + 0x000043F8u;
|
|
/* 022BEB74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BEB78 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022BEB78 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022BEB7C */ Gambit_fn_029807A8(cpu);
|
|
/* 022BEB80 */ cpu->r[27] = cpu->r[3];
|
|
/* 022BEB84 */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 022BEB84 */ cpu->r[28] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BEB88 */ /* nop */
|
|
/* 022BEB8C */ cpu->r[4] = cpu->r[29];
|
|
/* 022BEB90 */ cpu->r[3] = cpu->r[28];
|
|
/* 022BEB94 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 022BEB98 */ _t12 = cpu->r[28] + 0x0000001Cu;
|
|
/* 022BEB98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BEB9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 022BEBA0 */ cpu->r[8] = 0x00000000u;
|
|
/* 022BEBA4 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BEBA4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BEBA4 */ if (_t14) goto L_022BEBA8; else goto L_022BEBB4;
|
|
L_022BEBA8: ; // 0x22beba8
|
|
/* 022BEBA8 */ _t15 = cpu->r[28] + 0x00000024u;
|
|
/* 022BEBA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BEBAC */ cpu->r[10] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022BEBB0 */ _t16 = cpu->r[10] + cpu->r[0];
|
|
/* 022BEBB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
L_022BEBB4: ; // 0x22bebb4
|
|
/* 022BEBB4 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 022BEBB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BEBB8 */ _t18 = cpu->r[3] + 0x00000088u;
|
|
/* 022BEBB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BEBBC */ _t19 = cpu->r[12] + 0x0000007Cu;
|
|
/* 022BEBBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BEBC0 */ cpu->ctr = cpu->r[0];
|
|
/* 022BEBC4 */ /* nop */
|
|
/* 022BEBC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BEBCC */ cpu->r[12] = 0x101C0000u;
|
|
/* 022BEBD0 */ _t20 = cpu->r[31] + 0x00000228u;
|
|
/* 022BEBD0 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 022BEBD4 */ _t21 = cpu->r[12] + 0x00006000u;
|
|
/* 022BEBD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BEBD8 */ _t22 = cpu->r[12] + 0x00000268u;
|
|
/* 022BEBD8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022BEBDC */ cpu->r[3] = cpu->r[29];
|
|
/* 022BEBE0 */ Gambit_fn_0261F774(cpu);
|
|
/* 022BEBE4 */ cpu->r[4] = cpu->r[3];
|
|
/* 022BEBE8 */ cpu->r[3] = cpu->r[29];
|
|
/* 022BEBEC */ Gambit_fn_0261F55C(cpu);
|
|
/* 022BEBF0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BEBF4 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEBF4 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 022BEBF8 */ cpu->r[10] = cpu->r[10] + 0x000043E4u;
|
|
/* 022BEBFC */ cpu->r[29] = cpu->r[3];
|
|
/* 022BEC00 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022BEC00 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 022BEC04 */ _t25 = cpu->r[29] + 0x00000008u;
|
|
/* 022BEC04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022BEC08 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 022BEC0C */ Gambit_fn_029807A8(cpu);
|
|
/* 022BEC10 */ _t26 = cpu->r[29] + 0x00000008u;
|
|
/* 022BEC10 */ cpu->r[28] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022BEC14 */ cpu->r[27] = cpu->r[3];
|
|
/* 022BEC18 */ /* nop */
|
|
/* 022BEC1C */ cpu->r[3] = cpu->r[28];
|
|
/* 022BEC20 */ cpu->r[4] = cpu->r[29];
|
|
/* 022BEC24 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 022BEC28 */ _t27 = cpu->r[28] + 0x0000001Cu;
|
|
/* 022BEC28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BEC2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 022BEC30 */ cpu->r[12] = 0x00000000u;
|
|
/* 022BEC34 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BEC34 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022BEC34 */ if (_t29) goto L_022BEC38; else goto L_022BEC44;
|
|
L_022BEC38: ; // 0x22bec38
|
|
/* 022BEC38 */ _t30 = cpu->r[28] + 0x00000024u;
|
|
/* 022BEC38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022BEC3C */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022BEC40 */ _t31 = cpu->r[12] + cpu->r[8];
|
|
/* 022BEC40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
L_022BEC44: ; // 0x22bec44
|
|
/* 022BEC44 */ _t32 = cpu->r[12] + 0x00000000u;
|
|
/* 022BEC44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022BEC48 */ _t33 = cpu->r[3] + 0x00000088u;
|
|
/* 022BEC48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BEC4C */ _t34 = cpu->r[9] + 0x0000007Cu;
|
|
/* 022BEC4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022BEC50 */ cpu->ctr = cpu->r[0];
|
|
/* 022BEC54 */ /* nop */
|
|
/* 022BEC58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BEC5C */ _t35 = cpu->r[31] + 0x00000004u;
|
|
/* 022BEC5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022BEC60 */ _t36 = cpu->r[31] + 0x0000022Cu;
|
|
/* 022BEC60 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 022BEC64 */ _t37 = cpu->r[11] + 0x00000434u;
|
|
/* 022BEC64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022BEC68 */ cpu->ctr = cpu->r[0];
|
|
/* 022BEC6C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BEC70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BEC74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BEC78 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BEC78 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022BEC78 */ if (_t39) goto L_022BECE8; else goto L_022BEC7C;
|
|
L_022BEC7C: ; // 0x22bec7c
|
|
/* 022BEC7C */ _t40 = cpu->r[31] + 0x00000008u;
|
|
/* 022BEC7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BEC80 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BEC84 */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BEC84 */ rbrew_write32(cpu->mem, _t41, cpu->r[30]);
|
|
/* 022BEC88 */ cpu->r[8] = cpu->r[8] + 0x00004404u;
|
|
/* 022BEC8C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 022BEC90 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 022BEC90 */ rbrew_write32(cpu->mem, _t42, cpu->r[8]);
|
|
/* 022BEC94 */ Gambit_fn_029807A8(cpu);
|
|
/* 022BEC98 */ cpu->r[28] = cpu->r[3];
|
|
/* 022BEC9C */ _t43 = cpu->r[31] + 0x00000008u;
|
|
/* 022BEC9C */ cpu->r[29] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BECA0 */ /* nop */
|
|
/* 022BECA4 */ cpu->r[4] = cpu->r[30];
|
|
/* 022BECA8 */ cpu->r[3] = cpu->r[29];
|
|
/* 022BECAC */ Gambit_fn_0297FC7C(cpu);
|
|
/* 022BECB0 */ _t44 = cpu->r[29] + 0x0000001Cu;
|
|
/* 022BECB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BECB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 022BECB8 */ cpu->r[9] = 0x00000000u;
|
|
/* 022BECBC */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BECBC */ _t46 = _t45 & 0x00000001u;
|
|
/* 022BECBC */ if (_t46) goto L_022BECC0; else goto L_022BECCC;
|
|
L_022BECC0: ; // 0x22becc0
|
|
/* 022BECC0 */ _t47 = cpu->r[29] + 0x00000024u;
|
|
/* 022BECC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022BECC4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022BECC8 */ _t48 = cpu->r[10] + cpu->r[0];
|
|
/* 022BECC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
L_022BECCC: ; // 0x22beccc
|
|
/* 022BECCC */ _t49 = cpu->r[9] + 0x00000000u;
|
|
/* 022BECCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022BECD0 */ _t50 = cpu->r[3] + 0x00000088u;
|
|
/* 022BECD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022BECD4 */ _t51 = cpu->r[12] + 0x0000007Cu;
|
|
/* 022BECD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022BECD8 */ cpu->ctr = cpu->r[0];
|
|
/* 022BECDC */ /* nop */
|
|
/* 022BECE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BECE4 */ _t52 = cpu->r[31] + 0x00000230u;
|
|
/* 022BECE4 */ rbrew_write32(cpu->mem, _t52, cpu->r[3]);
|
|
L_022BECE8: ; // 0x22bece8
|
|
/* 022BECE8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BECEC */ Gambit_fn_022BC350(cpu);
|
|
/* 022BECF0 */ _t53 = cpu->r[3] + 0x00000000u;
|
|
/* 022BECF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022BECF4 */ _t54 = cpu->r[31] + 0x00000184u;
|
|
/* 022BECF4 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[0]);
|
|
/* 022BECF8 */ _t55 = cpu->r[3] + 0x00000004u;
|
|
/* 022BECF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022BECFC */ _t56 = cpu->r[31] + 0x00000188u;
|
|
/* 022BECFC */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 022BED00 */ _t57 = cpu->r[3] + 0x00000008u;
|
|
/* 022BED00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022BED04 */ _t58 = cpu->r[31] + 0x0000018Cu;
|
|
/* 022BED04 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[0]);
|
|
/* 022BED08 */ /* nop */
|
|
/* 022BED0C */ _t59 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BED0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022BED10 */ cpu->lr = cpu->r[0];
|
|
/* 022BED14 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022BED18 */ return;
|
|
}
|
|
|
|
// fn_022BED20 @ 0x22bed20
|
|
void Gambit_fn_022BED20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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;
|
|
|
|
L_022BED20: ; // 0x22bed20
|
|
/* 022BED20 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022BED20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BED20 */ cpu->r[1] = _t0;
|
|
/* 022BED24 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BED24 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BED28 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BED2C */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 022BED2C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BED30 */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 022BED30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BED34 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 022BED34 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BED38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022BED3C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BED3C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BED3C */ if (_t6) goto L_022BEEC4; else goto L_022BED40;
|
|
L_022BED40: ; // 0x22bed40
|
|
/* 022BED40 */ _t7 = cpu->r[5] + 0x0000000Cu;
|
|
/* 022BED40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BED44 */ _t8 = cpu->r[12] + 0x00000004u;
|
|
/* 022BED44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BED48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 022BED4C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BED4C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BED4C */ if (_t10) goto L_022BED50; else goto L_022BEEC4;
|
|
L_022BED50: ; // 0x22bed50
|
|
/* 022BED50 */ _t11 = cpu->r[31] + 0x00000194u;
|
|
/* 022BED50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BED54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022BED58 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BED58 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022BED58 */ if (_t13) goto L_022BED5C; else goto L_022BEE08;
|
|
L_022BED5C: ; // 0x22bed5c
|
|
/* 022BED5C */ _t14 = cpu->r[31] + 0x0000022Cu;
|
|
/* 022BED5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BED60 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BED64 */ Gambit_fn_0200D450(cpu);
|
|
/* 022BED68 */ _t15 = cpu->r[31] + 0x00000228u;
|
|
/* 022BED68 */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BED6C */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BED70 */ Gambit_fn_0200D450(cpu);
|
|
/* 022BED74 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022BED74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BED78 */ cpu->r[6] = 0x101F0000u;
|
|
/* 022BED7C */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BED7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BED80 */ cpu->r[6] = cpu->r[6] + 0x00006330u;
|
|
/* 022BED84 */ _t18 = cpu->r[31] + 0x00000224u;
|
|
/* 022BED84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BED88 */ _t19 = cpu->r[6] + 0x00000004u;
|
|
/* 022BED88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BED8C */ _t20 = cpu->r[6] + 0x00000000u;
|
|
/* 022BED8C */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BED90 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BED90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BED94 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 022BED94 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 022BED98 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 022BED98 */ rbrew_write32(cpu->mem, _t23, cpu->r[6]);
|
|
/* 022BED9C */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022BED9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BEDA0 */ _t25 = cpu->r[1] + 0x00000048u;
|
|
/* 022BEDA0 */ rbrew_write32(cpu->mem, _t25, cpu->r[9]);
|
|
/* 022BEDA4 */ _t26 = cpu->r[1] + 0x00000034u;
|
|
/* 022BEDA4 */ rbrew_write32(cpu->mem, _t26, cpu->r[6]);
|
|
/* 022BEDA8 */ _t27 = cpu->r[1] + 0x00000020u;
|
|
/* 022BEDA8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BEDAC */ _t28 = cpu->r[1] + 0x00000044u;
|
|
/* 022BEDAC */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 022BEDB0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BEDB4 */ _t29 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BEDB4 */ rbrew_write32(cpu->mem, _t29, cpu->r[7]);
|
|
/* 022BEDB8 */ _t30 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BEDB8 */ rbrew_write32(cpu->mem, _t30, cpu->r[10]);
|
|
/* 022BEDBC */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 022BEDBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022BEDC0 */ _t32 = cpu->r[1] + 0x00000030u;
|
|
/* 022BEDC0 */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 022BEDC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BEDC8 */ _t33 = cpu->r[1] + 0x00000040u;
|
|
/* 022BEDC8 */ rbrew_write32(cpu->mem, _t33, cpu->r[10]);
|
|
/* 022BEDCC */ Gambit_fn_02C693A4(cpu);
|
|
/* 022BEDD0 */ cpu->r[7] = 0x10060000u;
|
|
/* 022BEDD4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BEDD8 */ _t34 = cpu->r[7] + 0x00004410u;
|
|
/* 022BEDD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022BEDDC */ _t35 = cpu->r[6] + 0x00004340u;
|
|
/* 022BEDDC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022BEDE0 */ cpu->f[0] = cpu->f[1] / cpu->f[0];
|
|
/* 022BEDE4 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEDE4 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[13]);
|
|
/* 022BEDE8 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEDE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022BEDEC */ _t38 = cpu->r[1] + 0x00000044u;
|
|
/* 022BEDEC */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 022BEDF0 */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 022BEDF0 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 022BEDF4 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 022BEDF4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BEDF8 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 022BEDFC */ _t41 = cpu->r[1] + 0x00000048u;
|
|
/* 022BEDFC */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 022BEE00 */ Gambit_fn_022B87A8(cpu);
|
|
/* 022BEE04 */ goto L_022BEEC4;
|
|
L_022BEE08: ; // 0x22bee08
|
|
/* 022BEE08 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BEE0C */ Gambit_fn_022BC350(cpu);
|
|
/* 022BEE10 */ _t42 = cpu->r[3] + 0x00000000u;
|
|
/* 022BEE10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022BEE14 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 022BEE14 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 022BEE18 */ _t44 = cpu->r[3] + 0x00000004u;
|
|
/* 022BEE18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022BEE1C */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEE1C */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 022BEE20 */ _t46 = cpu->r[3] + 0x00000008u;
|
|
/* 022BEE20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022BEE24 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BEE28 */ _t47 = cpu->r[31] + 0x00000228u;
|
|
/* 022BEE28 */ cpu->r[4] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022BEE2C */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 022BEE2C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 022BEE30 */ Gambit_fn_0200D450(cpu);
|
|
/* 022BEE34 */ cpu->r[6] = 0x101F0000u;
|
|
/* 022BEE38 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 022BEE38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022BEE3C */ cpu->r[6] = cpu->r[6] + 0x00006330u;
|
|
/* 022BEE40 */ _t50 = cpu->r[31] + 0x00000224u;
|
|
/* 022BEE40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022BEE44 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEE44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022BEE48 */ _t52 = cpu->r[1] + 0x00000028u;
|
|
/* 022BEE48 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 022BEE4C */ _t53 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BEE4C */ rbrew_write32(cpu->mem, _t53, cpu->r[10]);
|
|
/* 022BEE50 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 022BEE50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022BEE54 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 022BEE54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022BEE58 */ _t56 = cpu->r[1] + 0x00000040u;
|
|
/* 022BEE58 */ rbrew_write32(cpu->mem, _t56, cpu->r[10]);
|
|
/* 022BEE5C */ _t57 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022BEE5C */ rbrew_write32(cpu->mem, _t57, cpu->r[7]);
|
|
/* 022BEE60 */ _t58 = cpu->r[6] + 0x00000004u;
|
|
/* 022BEE60 */ cpu->r[9] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022BEE64 */ _t59 = cpu->r[1] + 0x00000030u;
|
|
/* 022BEE64 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 022BEE68 */ _t60 = cpu->r[6] + 0x00000000u;
|
|
/* 022BEE68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022BEE6C */ _t61 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BEE6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022BEE70 */ _t62 = cpu->r[1] + 0x00000048u;
|
|
/* 022BEE70 */ rbrew_write32(cpu->mem, _t62, cpu->r[9]);
|
|
/* 022BEE74 */ _t63 = cpu->r[1] + 0x00000038u;
|
|
/* 022BEE74 */ rbrew_write32(cpu->mem, _t63, cpu->r[6]);
|
|
/* 022BEE78 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 022BEE78 */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022BEE7C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BEE80 */ _t65 = cpu->r[1] + 0x00000044u;
|
|
/* 022BEE80 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 022BEE84 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BEE88 */ _t66 = cpu->r[1] + 0x00000034u;
|
|
/* 022BEE88 */ rbrew_write32(cpu->mem, _t66, cpu->r[6]);
|
|
/* 022BEE8C */ Gambit_fn_02C693A4(cpu);
|
|
/* 022BEE90 */ cpu->r[7] = 0x10060000u;
|
|
/* 022BEE94 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BEE98 */ _t67 = cpu->r[7] + 0x00004410u;
|
|
/* 022BEE98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022BEE9C */ _t68 = cpu->r[6] + 0x00004340u;
|
|
/* 022BEE9C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022BEEA0 */ cpu->f[0] = cpu->f[1] / cpu->f[0];
|
|
/* 022BEEA4 */ _t69 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEEA4 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[13]);
|
|
/* 022BEEA8 */ _t70 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEEA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 022BEEAC */ _t71 = cpu->r[1] + 0x00000044u;
|
|
/* 022BEEAC */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 022BEEB0 */ _t72 = cpu->r[1] + 0x00000018u;
|
|
/* 022BEEB0 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 022BEEB4 */ _t73 = cpu->r[1] + 0x00000018u;
|
|
/* 022BEEB4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022BEEB8 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 022BEEBC */ _t74 = cpu->r[1] + 0x00000048u;
|
|
/* 022BEEBC */ rbrew_write32(cpu->mem, _t74, cpu->r[5]);
|
|
/* 022BEEC0 */ Gambit_fn_022B87A8(cpu);
|
|
L_022BEEC4: ; // 0x22beec4
|
|
/* 022BEEC4 */ _t75 = cpu->r[1] + 0x00000054u;
|
|
/* 022BEEC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022BEEC8 */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BEEC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022BEECC */ cpu->lr = cpu->r[0];
|
|
/* 022BEED0 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022BEED4 */ return;
|
|
}
|
|
|
|
// fn_022BEEDC @ 0x22beedc
|
|
void Gambit_fn_022BEEDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022BEEDC: ; // 0x22beedc
|
|
/* 022BEEDC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BEEDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BEEDC */ cpu->r[1] = _t0;
|
|
/* 022BEEE0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEEE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BEEE4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEEE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BEEE8 */ _t3 = cpu->r[3] + 0x00000224u;
|
|
/* 022BEEE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BEEEC */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 022BEEEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BEEF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BEEF4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BEEF4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BEEF4 */ if (_t6) goto L_022BEF30; else goto L_022BEEF8;
|
|
L_022BEEF8: ; // 0x22beef8
|
|
/* 022BEEF8 */ _t7 = cpu->r[12] + 0x00000004u;
|
|
/* 022BEEF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BEEFC */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022BEEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BEF00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 022BEF04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BEF04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BEF04 */ if (_t10) goto L_022BEF08; else goto L_022BEF30;
|
|
L_022BEF08: ; // 0x22bef08
|
|
/* 022BEF08 */ _t11 = cpu->r[31] + 0x00000028u;
|
|
/* 022BEF08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BEF0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BEF10 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BEF10 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022BEF10 */ if (_t13) goto L_022BEF28; else goto L_022BEF14;
|
|
L_022BEF14: ; // 0x22bef14
|
|
/* 022BEF14 */ _t14 = cpu->r[3] + 0x00000050u;
|
|
/* 022BEF14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BEF18 */ _t15 = cpu->r[11] + 0x00000024u;
|
|
/* 022BEF18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BEF1C */ cpu->ctr = cpu->r[12];
|
|
/* 022BEF20 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 022BEF24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022BEF28: ; // 0x22bef28
|
|
/* 022BEF28 */ cpu->r[0] = 0x00000001u;
|
|
/* 022BEF2C */ _t16 = cpu->r[31] + 0x0000004Cu;
|
|
/* 022BEF2C */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[0]);
|
|
L_022BEF30: ; // 0x22bef30
|
|
/* 022BEF30 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEF30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BEF34 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEF34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BEF38 */ cpu->lr = cpu->r[0];
|
|
/* 022BEF3C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BEF40 */ return;
|
|
}
|
|
|
|
// fn_022BEF48 @ 0x22bef48
|
|
void Gambit_fn_022BEF48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022BEF48: ; // 0x22bef48
|
|
/* 022BEF48 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BEF48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BEF48 */ cpu->r[1] = _t0;
|
|
/* 022BEF4C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022BEF4C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BEF50 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022BEF54 */ cpu->r[30] = cpu->r[30] + 0x00003BE4u;
|
|
/* 022BEF58 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEF58 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BEF5C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEF5C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BEF60 */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 022BEF60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BEF64 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 022BEF64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BEF68 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BEF6C */ cpu->ctr = cpu->r[0];
|
|
/* 022BEF70 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BEF74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BEF78 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 022BEF78 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BEF7C */ cpu->r[5] = 0x00000001u;
|
|
/* 022BEF80 */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022BEF80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BEF84 */ Gambit_fn_02398850(cpu);
|
|
/* 022BEF88 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEF88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BEF8C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022BEF8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BEF90 */ cpu->lr = cpu->r[0];
|
|
/* 022BEF94 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEF94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BEF98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BEF9C */ return;
|
|
}
|
|
|
|
// fn_022BEFA4 @ 0x22befa4
|
|
void Gambit_fn_022BEFA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022BEFA4: ; // 0x22befa4
|
|
/* 022BEFA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BEFA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BEFA4 */ cpu->r[1] = _t0;
|
|
/* 022BEFA8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022BEFA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BEFAC */ cpu->r[30] = 0x101E0000u;
|
|
/* 022BEFB0 */ cpu->r[30] = cpu->r[30] + 0x00003BECu;
|
|
/* 022BEFB4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEFB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BEFB8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEFB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BEFBC */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 022BEFBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BEFC0 */ _t5 = cpu->r[11] + 0x00000014u;
|
|
/* 022BEFC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BEFC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BEFC8 */ cpu->ctr = cpu->r[0];
|
|
/* 022BEFCC */ cpu->r[3] = cpu->r[30];
|
|
/* 022BEFD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BEFD4 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 022BEFD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BEFD8 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BEFDC */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022BEFDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BEFE0 */ Gambit_fn_02398850(cpu);
|
|
/* 022BEFE4 */ cpu->r[0] = 0x00000000u;
|
|
/* 022BEFE8 */ _t8 = cpu->r[31] + 0x000001E8u;
|
|
/* 022BEFE8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022BEFEC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022BEFEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BEFF0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022BEFF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BEFF4 */ cpu->lr = cpu->r[0];
|
|
/* 022BEFF8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BEFF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BEFFC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BF000 */ return;
|
|
}
|
|
|
|
// fn_022BF008 @ 0x22bf008
|
|
void Gambit_fn_022BF008(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_022BF008: ; // 0x22bf008
|
|
/* 022BF008 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BF008 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF008 */ cpu->r[1] = _t0;
|
|
/* 022BF00C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF00C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BF010 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022BF014 */ cpu->r[30] = cpu->r[30] + 0x00003BD4u;
|
|
/* 022BF018 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF018 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BF01C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF01C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BF020 */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 022BF020 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BF024 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 022BF024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BF028 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF02C */ cpu->ctr = cpu->r[0];
|
|
/* 022BF030 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF034 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF038 */ _t6 = cpu->r[31] + 0x00000094u;
|
|
/* 022BF038 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BF03C */ cpu->r[5] = 0x00000001u;
|
|
/* 022BF040 */ _t7 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF040 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BF044 */ Gambit_fn_02398850(cpu);
|
|
/* 022BF048 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF04C */ _t8 = cpu->r[31] + 0x00000094u;
|
|
/* 022BF04C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BF050 */ _t9 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BF050 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022BF054 */ Gambit_fn_023988E0(cpu);
|
|
/* 022BF058 */ _t10 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022BF058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BF05C */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 022BF060 */ _t11 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022BF060 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022BF064 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF064 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BF068 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF068 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BF06C */ cpu->lr = cpu->r[0];
|
|
/* 022BF070 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF070 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BF074 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BF078 */ return;
|
|
}
|
|
|
|
// fn_022BF080 @ 0x22bf080
|
|
void Gambit_fn_022BF080(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022BF080: ; // 0x22bf080
|
|
/* 022BF080 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BF080 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF080 */ cpu->r[1] = _t0;
|
|
/* 022BF084 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF084 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BF088 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022BF08C */ cpu->r[30] = cpu->r[30] + 0x00003C04u;
|
|
/* 022BF090 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF090 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BF094 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF094 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BF098 */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 022BF098 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BF09C */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 022BF09C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BF0A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF0A4 */ cpu->ctr = cpu->r[0];
|
|
/* 022BF0A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF0AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF0B0 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF0B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BF0B4 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BF0B8 */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022BF0B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BF0BC */ Gambit_fn_02398850(cpu);
|
|
/* 022BF0C0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF0C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BF0C4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF0C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BF0C8 */ cpu->lr = cpu->r[0];
|
|
/* 022BF0CC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF0CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BF0D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BF0D4 */ return;
|
|
}
|
|
|
|
// fn_022BF0EC @ 0x22bf0ec
|
|
void Gambit_fn_022BF0EC(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_022BF0EC: ; // 0x22bf0ec
|
|
/* 022BF0EC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BF0EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF0EC */ cpu->r[1] = _t0;
|
|
/* 022BF0F0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF0F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BF0F4 */ cpu->r[30] = 0x101E0000u;
|
|
/* 022BF0F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF0F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022BF0FC */ cpu->r[30] = cpu->r[30] + 0x00003BF4u;
|
|
/* 022BF100 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF100 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BF104 */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 022BF104 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BF108 */ _t5 = cpu->r[6] + 0x00000014u;
|
|
/* 022BF108 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BF10C */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF110 */ cpu->ctr = cpu->r[8];
|
|
/* 022BF114 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF118 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF11C */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF11C */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BF120 */ cpu->r[5] = 0x00000001u;
|
|
/* 022BF124 */ _t7 = cpu->r[31] + 0x00000094u;
|
|
/* 022BF124 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BF128 */ Gambit_fn_02398850(cpu);
|
|
/* 022BF12C */ _t8 = cpu->r[31] + 0x00000094u;
|
|
/* 022BF12C */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BF130 */ _t9 = cpu->r[5] + 0x00000004u;
|
|
/* 022BF130 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BF134 */ Gambit_fn_027C7500(cpu);
|
|
/* 022BF138 */ _t10 = cpu->r[3] + 0x00000010u;
|
|
/* 022BF138 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BF13C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF140 */ _t11 = cpu->r[12] + 0x000043D8u;
|
|
/* 022BF140 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t11);
|
|
/* 022BF144 */ cpu->r[0] = 0x43300000u;
|
|
/* 022BF148 */ cpu->r[12] = cpu->r[11] ^ 0x80000000u;
|
|
/* 022BF14C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF14C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 022BF150 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF150 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 022BF154 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF154 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t14);
|
|
/* 022BF158 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 022BF15C */ cpu->f[0] = (double)(float)cpu->f[0];
|
|
/* 022BF160 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[0];
|
|
/* 022BF164 */ cpu->r[10] = cpu->r[1] + 0x00000008u;
|
|
/* 022BF168 */ /* nop */
|
|
/* 022BF16C */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF16C */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BF170 */ cpu->r[9] = cpu->r[7] + 0x0000003Cu;
|
|
/* 022BF174 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BF178 */ _t16 = cpu->r[31] + 0x00000208u;
|
|
/* 022BF178 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 022BF17C */ Gambit_fn_02271A58(cpu);
|
|
/* 022BF180 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022BF184 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF184 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022BF188 */ cpu->lr = cpu->r[0];
|
|
/* 022BF18C */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF18C */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022BF190 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BF194 */ return;
|
|
}
|
|
|
|
// fn_022BF198 @ 0x22bf198
|
|
void Gambit_fn_022BF198(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BF198: ; // 0x22bf198
|
|
/* 022BF198 */ cpu->r[0] = cpu->lr;
|
|
/* 022BF19C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022BF19C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF19C */ cpu->r[1] = _t0;
|
|
/* 022BF1A0 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022BF1A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BF1A4 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 022BF1A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022BF1A8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF1A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022BF1AC */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF1B0 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BF1B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022BF1B4 */ cpu->r[29] = cpu->r[4];
|
|
/* 022BF1B8 */ _t5 = cpu->r[30] + 0x00000190u;
|
|
/* 022BF1B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BF1BC */ _t6 = cpu->r[29] + 0x0000000Cu;
|
|
/* 022BF1BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BF1C0 */ _t7 = cpu->r[29] + 0x00000008u;
|
|
/* 022BF1C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BF1C4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF1C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022BF1C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022BF1CC */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF1CC */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 022BF1D0 */ _t10 = cpu->r[29] + 0x00000004u;
|
|
/* 022BF1D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BF1D4 */ _t11 = cpu->r[29] + 0x00000000u;
|
|
/* 022BF1D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BF1D8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF1D8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 022BF1DC */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF1DC */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 022BF1E0 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BF1E0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BF1E0 */ if (_t15) goto L_022BF29C; else goto L_022BF1E4;
|
|
L_022BF1E4: ; // 0x22bf1e4
|
|
/* 022BF1E4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF1E4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BF1E4 */ if (_t17) goto L_022BF200; else goto L_022BF1E8;
|
|
L_022BF1E8: ; // 0x22bf1e8
|
|
/* 022BF1E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 022BF1EC */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BF1EC */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BF1EC */ if (_t19) goto L_022BF1F0; else goto L_022BF290;
|
|
L_022BF1F0: ; // 0x22bf1f0
|
|
/* 022BF1F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF1F4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BF1F8 */ Gambit_fn_0227251C(cpu);
|
|
/* 022BF1FC */ goto L_022BF2A8;
|
|
L_022BF200: ; // 0x22bf200
|
|
/* 022BF200 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF204 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BF208 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022BF20C */ _t20 = cpu->r[10] + 0x000001B0u;
|
|
/* 022BF20C */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BF20C */ cpu->r[10] = _t20;
|
|
/* 022BF210 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BF214 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022BF21C */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BF220 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF220 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022BF220 */ if (_t22) goto L_022BF224; else goto L_022BF238;
|
|
L_022BF224: ; // 0x22bf224
|
|
/* 022BF224 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BF228 */ cpu->r[9] = 0x00000001u;
|
|
/* 022BF22C */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BF230 */ _t23 = cpu->r[10] + 0x00000000u;
|
|
/* 022BF230 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 022BF234 */ _t24 = cpu->r[4] + 0x00000000u;
|
|
/* 022BF234 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
L_022BF238: ; // 0x22bf238
|
|
/* 022BF238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BF23C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF23C */ _t26 = _t25 & 0x00000001u;
|
|
/* 022BF23C */ if (_t26) goto L_022BF25C; else goto L_022BF240;
|
|
L_022BF240: ; // 0x22bf240
|
|
/* 022BF240 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 022BF240 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BF244 */ _t28 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022BF244 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BF248 */ cpu->ctr = cpu->r[8];
|
|
/* 022BF24C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BF250 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF258 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF258 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022BF258 */ if (_t30) goto L_022BF25C; else goto L_022BF260;
|
|
L_022BF25C: ; // 0x22bf25c
|
|
/* 022BF25C */ cpu->r[31] = 0x00000000u;
|
|
L_022BF260: ; // 0x22bf260
|
|
/* 022BF260 */ _t31 = cpu->r[29] + 0x00000000u;
|
|
/* 022BF260 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022BF264 */ _t32 = cpu->r[30] + 0x00000238u;
|
|
/* 022BF264 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022BF268 */ _t33 = cpu->r[31] + 0x00000E64u;
|
|
/* 022BF268 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BF26C */ cpu->f[0] = cpu->f[12] + cpu->f[13];
|
|
/* 022BF270 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022BF274 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BF274 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022BF274 */ if (_t35) goto L_022BF28C; else goto L_022BF278;
|
|
L_022BF278: ; // 0x22bf278
|
|
/* 022BF278 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BF27C */ _t36 = cpu->r[30] + 0x00000238u;
|
|
/* 022BF27C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 022BF280 */ _t37 = cpu->r[8] + 0x000042C8u;
|
|
/* 022BF280 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022BF284 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF284 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 022BF288 */ goto L_022BF29C;
|
|
L_022BF28C: ; // 0x22bf28c
|
|
/* 022BF28C */ _t39 = cpu->r[30] + 0x00000238u;
|
|
/* 022BF28C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
L_022BF290: ; // 0x22bf290
|
|
/* 022BF290 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BF294 */ _t40 = cpu->r[8] + 0x000042C8u;
|
|
/* 022BF294 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BF298 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF298 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
L_022BF29C: ; // 0x22bf29c
|
|
/* 022BF29C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF2A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BF2A4 */ Gambit_fn_0227251C(cpu);
|
|
L_022BF2A8: ; // 0x22bf2a8
|
|
/* 022BF2A8 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF2A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022BF2AC */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BF2AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BF2B0 */ _t44 = cpu->r[1] + 0x00000020u;
|
|
/* 022BF2B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BF2B4 */ cpu->lr = cpu->r[0];
|
|
/* 022BF2B8 */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 022BF2B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022BF2BC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022BF2C0 */ return;
|
|
}
|
|
|
|
// fn_022BF19C @ 0x22bf19c
|
|
void Gambit_fn_022BF19C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BF19C: ; // 0x22bf19c
|
|
/* 022BF19C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022BF19C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF19C */ cpu->r[1] = _t0;
|
|
/* 022BF1A0 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022BF1A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BF1A4 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 022BF1A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022BF1A8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF1A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022BF1AC */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF1B0 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BF1B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022BF1B4 */ cpu->r[29] = cpu->r[4];
|
|
/* 022BF1B8 */ _t5 = cpu->r[30] + 0x00000190u;
|
|
/* 022BF1B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BF1BC */ _t6 = cpu->r[29] + 0x0000000Cu;
|
|
/* 022BF1BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BF1C0 */ _t7 = cpu->r[29] + 0x00000008u;
|
|
/* 022BF1C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BF1C4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF1C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022BF1C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022BF1CC */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF1CC */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 022BF1D0 */ _t10 = cpu->r[29] + 0x00000004u;
|
|
/* 022BF1D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BF1D4 */ _t11 = cpu->r[29] + 0x00000000u;
|
|
/* 022BF1D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BF1D8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF1D8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 022BF1DC */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF1DC */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 022BF1E0 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BF1E0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BF1E0 */ if (_t15) goto L_022BF29C; else goto L_022BF1E4;
|
|
L_022BF1E4: ; // 0x22bf1e4
|
|
/* 022BF1E4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF1E4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022BF1E4 */ if (_t17) goto L_022BF200; else goto L_022BF1E8;
|
|
L_022BF1E8: ; // 0x22bf1e8
|
|
/* 022BF1E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 022BF1EC */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022BF1EC */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BF1EC */ if (_t19) goto L_022BF1F0; else goto L_022BF290;
|
|
L_022BF1F0: ; // 0x22bf1f0
|
|
/* 022BF1F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF1F4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BF1F8 */ Gambit_fn_0227251C(cpu);
|
|
/* 022BF1FC */ goto L_022BF2A8;
|
|
L_022BF200: ; // 0x22bf200
|
|
/* 022BF200 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF204 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BF208 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022BF20C */ _t20 = cpu->r[10] + 0x000001B0u;
|
|
/* 022BF20C */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022BF20C */ cpu->r[10] = _t20;
|
|
/* 022BF210 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BF214 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022BF21C */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BF220 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF220 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022BF220 */ if (_t22) goto L_022BF224; else goto L_022BF238;
|
|
L_022BF224: ; // 0x22bf224
|
|
/* 022BF224 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BF228 */ cpu->r[9] = 0x00000001u;
|
|
/* 022BF22C */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022BF230 */ _t23 = cpu->r[10] + 0x00000000u;
|
|
/* 022BF230 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 022BF234 */ _t24 = cpu->r[4] + 0x00000000u;
|
|
/* 022BF234 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
L_022BF238: ; // 0x22bf238
|
|
/* 022BF238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BF23C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF23C */ _t26 = _t25 & 0x00000001u;
|
|
/* 022BF23C */ if (_t26) goto L_022BF25C; else goto L_022BF240;
|
|
L_022BF240: ; // 0x22bf240
|
|
/* 022BF240 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 022BF240 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022BF244 */ _t28 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022BF244 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022BF248 */ cpu->ctr = cpu->r[8];
|
|
/* 022BF24C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BF250 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF258 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF258 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022BF258 */ if (_t30) goto L_022BF25C; else goto L_022BF260;
|
|
L_022BF25C: ; // 0x22bf25c
|
|
/* 022BF25C */ cpu->r[31] = 0x00000000u;
|
|
L_022BF260: ; // 0x22bf260
|
|
/* 022BF260 */ _t31 = cpu->r[29] + 0x00000000u;
|
|
/* 022BF260 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022BF264 */ _t32 = cpu->r[30] + 0x00000238u;
|
|
/* 022BF264 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022BF268 */ _t33 = cpu->r[31] + 0x00000E64u;
|
|
/* 022BF268 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022BF26C */ cpu->f[0] = cpu->f[12] + cpu->f[13];
|
|
/* 022BF270 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022BF274 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BF274 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022BF274 */ if (_t35) goto L_022BF28C; else goto L_022BF278;
|
|
L_022BF278: ; // 0x22bf278
|
|
/* 022BF278 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BF27C */ _t36 = cpu->r[30] + 0x00000238u;
|
|
/* 022BF27C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 022BF280 */ _t37 = cpu->r[8] + 0x000042C8u;
|
|
/* 022BF280 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022BF284 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF284 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 022BF288 */ goto L_022BF29C;
|
|
L_022BF28C: ; // 0x22bf28c
|
|
/* 022BF28C */ _t39 = cpu->r[30] + 0x00000238u;
|
|
/* 022BF28C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
L_022BF290: ; // 0x22bf290
|
|
/* 022BF290 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BF294 */ _t40 = cpu->r[8] + 0x000042C8u;
|
|
/* 022BF294 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022BF298 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF298 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
L_022BF29C: ; // 0x22bf29c
|
|
/* 022BF29C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF2A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BF2A4 */ Gambit_fn_0227251C(cpu);
|
|
L_022BF2A8: ; // 0x22bf2a8
|
|
/* 022BF2A8 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF2A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022BF2AC */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022BF2AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022BF2B0 */ _t44 = cpu->r[1] + 0x00000020u;
|
|
/* 022BF2B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022BF2B4 */ cpu->lr = cpu->r[0];
|
|
/* 022BF2B8 */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 022BF2B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022BF2BC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022BF2C0 */ return;
|
|
}
|
|
|
|
// fn_022BF2C4 @ 0x22bf2c4
|
|
void Gambit_fn_022BF2C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_022BF2C4: ; // 0x22bf2c4
|
|
/* 022BF2C4 */ cpu->r[0] = cpu->lr;
|
|
/* 022BF2C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BF2C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF2C8 */ cpu->r[1] = _t0;
|
|
/* 022BF2CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF2CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BF2D0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF2D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022BF2D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF2D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF2D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BF2DC */ _t4 = cpu->r[31] + 0x00000190u;
|
|
/* 022BF2DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BF2E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 022BF2E4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF2E4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BF2E4 */ if (_t6) goto L_022BF2E8; else goto L_022BF350;
|
|
L_022BF2E8: ; // 0x22bf2e8
|
|
/* 022BF2E8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022BF2EC */ _t7 = cpu->r[11] + 0xFFFFD9C8u;
|
|
/* 022BF2EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BF2EC */ cpu->r[11] = _t7;
|
|
/* 022BF2F0 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022BF2F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BF2F4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BF2F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022BF2FC */ cpu->r[4] = cpu->r[4] + 0xFFFFE310u;
|
|
/* 022BF300 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF300 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BF300 */ if (_t10) goto L_022BF304; else goto L_022BF318;
|
|
L_022BF304: ; // 0x22bf304
|
|
/* 022BF304 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BF308 */ cpu->r[10] = 0x00000001u;
|
|
/* 022BF30C */ cpu->r[0] = cpu->r[0] + 0x000041A8u;
|
|
/* 022BF310 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 022BF310 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 022BF314 */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 022BF314 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_022BF318: ; // 0x22bf318
|
|
/* 022BF318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF31C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF31C */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BF31C */ if (_t14) goto L_022BF350; else goto L_022BF320;
|
|
L_022BF320: ; // 0x22bf320
|
|
/* 022BF320 */ _t15 = cpu->r[30] + 0x00000004u;
|
|
/* 022BF320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BF324 */ _t16 = cpu->r[12] + 0x00000014u;
|
|
/* 022BF324 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BF328 */ cpu->ctr = cpu->r[7];
|
|
/* 022BF32C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF338 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF338 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BF338 */ if (_t18) goto L_022BF350; else goto L_022BF33C;
|
|
L_022BF33C: ; // 0x22bf33c
|
|
/* 022BF33C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF340 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF340 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BF340 */ if (_t20) goto L_022BF350; else goto L_022BF344;
|
|
L_022BF344: ; // 0x22bf344
|
|
/* 022BF344 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF348 */ _t21 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BF348 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022BF34C */ _t22 = cpu->r[31] + 0x000000E0u;
|
|
/* 022BF34C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
L_022BF350: ; // 0x22bf350
|
|
/* 022BF350 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BF354 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF354 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BF358 */ cpu->lr = cpu->r[0];
|
|
/* 022BF35C */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF35C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022BF360 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BF364 */ return;
|
|
}
|
|
|
|
// fn_022BF2C8 @ 0x22bf2c8
|
|
void Gambit_fn_022BF2C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_022BF2C8: ; // 0x22bf2c8
|
|
/* 022BF2C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BF2C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF2C8 */ cpu->r[1] = _t0;
|
|
/* 022BF2CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF2CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BF2D0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF2D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022BF2D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF2D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF2D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BF2DC */ _t4 = cpu->r[31] + 0x00000190u;
|
|
/* 022BF2DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BF2E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 022BF2E4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF2E4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BF2E4 */ if (_t6) goto L_022BF2E8; else goto L_022BF350;
|
|
L_022BF2E8: ; // 0x22bf2e8
|
|
/* 022BF2E8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022BF2EC */ _t7 = cpu->r[11] + 0xFFFFD9C8u;
|
|
/* 022BF2EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BF2EC */ cpu->r[11] = _t7;
|
|
/* 022BF2F0 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022BF2F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022BF2F4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BF2F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022BF2FC */ cpu->r[4] = cpu->r[4] + 0xFFFFE310u;
|
|
/* 022BF300 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF300 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022BF300 */ if (_t10) goto L_022BF304; else goto L_022BF318;
|
|
L_022BF304: ; // 0x22bf304
|
|
/* 022BF304 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BF308 */ cpu->r[10] = 0x00000001u;
|
|
/* 022BF30C */ cpu->r[0] = cpu->r[0] + 0x000041A8u;
|
|
/* 022BF310 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 022BF310 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 022BF314 */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 022BF314 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_022BF318: ; // 0x22bf318
|
|
/* 022BF318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF31C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF31C */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BF31C */ if (_t14) goto L_022BF350; else goto L_022BF320;
|
|
L_022BF320: ; // 0x22bf320
|
|
/* 022BF320 */ _t15 = cpu->r[30] + 0x00000004u;
|
|
/* 022BF320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BF324 */ _t16 = cpu->r[12] + 0x00000014u;
|
|
/* 022BF324 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022BF328 */ cpu->ctr = cpu->r[7];
|
|
/* 022BF32C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF338 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF338 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022BF338 */ if (_t18) goto L_022BF350; else goto L_022BF33C;
|
|
L_022BF33C: ; // 0x22bf33c
|
|
/* 022BF33C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF340 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF340 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BF340 */ if (_t20) goto L_022BF350; else goto L_022BF344;
|
|
L_022BF344: ; // 0x22bf344
|
|
/* 022BF344 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF348 */ _t21 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BF348 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022BF34C */ _t22 = cpu->r[31] + 0x000000E0u;
|
|
/* 022BF34C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
L_022BF350: ; // 0x22bf350
|
|
/* 022BF350 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022BF354 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF354 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022BF358 */ cpu->lr = cpu->r[0];
|
|
/* 022BF35C */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF35C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022BF360 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BF364 */ return;
|
|
}
|
|
|
|
// fn_022BF368 @ 0x22bf368
|
|
void Gambit_fn_022BF368(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BF368: ; // 0x22bf368
|
|
/* 022BF368 */ cpu->r[0] = cpu->lr;
|
|
/* 022BF36C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BF36C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF36C */ cpu->r[1] = _t0;
|
|
/* 022BF370 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF370 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BF374 */ cpu->r[30] = cpu->r[4];
|
|
/* 022BF378 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF378 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022BF37C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF37C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022BF380 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF380 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022BF384 */ cpu->r[29] = cpu->r[3];
|
|
/* 022BF388 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BF38C */ cpu->r[11] = 0x101D0000u;
|
|
/* 022BF390 */ _t5 = cpu->r[11] + 0x000001B0u;
|
|
/* 022BF390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BF390 */ cpu->r[11] = _t5;
|
|
/* 022BF394 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BF398 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BF3A0 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BF3A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF3A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BF3A4 */ if (_t7) goto L_022BF3A8; else goto L_022BF3BC;
|
|
L_022BF3A8: ; // 0x22bf3a8
|
|
/* 022BF3A8 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BF3AC */ cpu->r[6] = 0x00000001u;
|
|
/* 022BF3B0 */ cpu->r[8] = cpu->r[8] + 0x000041D8u;
|
|
/* 022BF3B4 */ _t8 = cpu->r[11] + 0x00000000u;
|
|
/* 022BF3B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 022BF3B8 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 022BF3B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
L_022BF3BC: ; // 0x22bf3bc
|
|
/* 022BF3BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BF3C0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF3C0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BF3C0 */ if (_t11) goto L_022BF3E0; else goto L_022BF3C4;
|
|
L_022BF3C4: ; // 0x22bf3c4
|
|
/* 022BF3C4 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 022BF3C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BF3C8 */ _t13 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022BF3C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BF3CC */ cpu->ctr = cpu->r[11];
|
|
/* 022BF3D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BF3D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF3D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF3DC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF3DC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BF3DC */ if (_t15) goto L_022BF3E0; else goto L_022BF3E4;
|
|
L_022BF3E0: ; // 0x22bf3e0
|
|
/* 022BF3E0 */ cpu->r[31] = 0x00000000u;
|
|
L_022BF3E4: ; // 0x22bf3e4
|
|
/* 022BF3E4 */ _t16 = cpu->r[29] + 0x00000148u;
|
|
/* 022BF3E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BF3E8 */ _t17 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022BF3E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022BF3EC */ _t18 = cpu->r[29] + 0x00000140u;
|
|
/* 022BF3EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BF3F0 */ cpu->f[13] = cpu->f[11] - cpu->f[0];
|
|
/* 022BF3F4 */ _t19 = cpu->r[30] + 0x00000004u;
|
|
/* 022BF3F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BF3F8 */ cpu->f[11] = cpu->f[0] - cpu->f[10];
|
|
/* 022BF3FC */ _t20 = cpu->r[31] + 0x00000D44u;
|
|
/* 022BF3FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022BF400 */ cpu->f[10] = cpu->f[13] * cpu->f[13];
|
|
/* 022BF404 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 022BF408 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022BF40C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022BF410 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BF410 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022BF410 */ if (_t22) goto L_022BF414; else goto L_022BF458;
|
|
L_022BF414: ; // 0x22bf414
|
|
/* 022BF414 */ _t23 = cpu->r[29] + 0x000001A4u;
|
|
/* 022BF414 */ cpu->r[12] = rbrew_read8(cpu->mem, _t23);
|
|
/* 022BF418 */ /* nop */
|
|
/* 022BF41C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF41C */ _t25 = _t24 & 0x00000001u;
|
|
/* 022BF41C */ if (_t25) goto L_022BF428; else goto L_022BF420;
|
|
L_022BF420: ; // 0x22bf420
|
|
/* 022BF420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 022BF424 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF424 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BF424 */ if (_t27) goto L_022BF428; else goto L_022BF458;
|
|
L_022BF428: ; // 0x22bf428
|
|
/* 022BF428 */ cpu->r[0] = 0x00000001u;
|
|
/* 022BF42C */ _t28 = cpu->r[29] + 0x00000194u;
|
|
/* 022BF42C */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022BF430 */ _t29 = cpu->r[29] + 0x0000021Cu;
|
|
/* 022BF430 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[0]);
|
|
/* 022BF434 */ _t30 = cpu->r[30] + 0x00000004u;
|
|
/* 022BF434 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BF438 */ _t31 = cpu->r[29] + 0x00000210u;
|
|
/* 022BF438 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 022BF43C */ _t32 = cpu->r[30] + 0x00000008u;
|
|
/* 022BF43C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022BF440 */ _t33 = cpu->r[29] + 0x00000194u;
|
|
/* 022BF440 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BF444 */ cpu->r[0] = 0x0000012Cu;
|
|
/* 022BF448 */ _t34 = cpu->r[29] + 0x00000214u;
|
|
/* 022BF448 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[10]);
|
|
/* 022BF44C */ _t35 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022BF44C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022BF450 */ _t36 = cpu->r[29] + 0x00000220u;
|
|
/* 022BF450 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 022BF454 */ _t37 = cpu->r[29] + 0x00000218u;
|
|
/* 022BF454 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
L_022BF458: ; // 0x22bf458
|
|
/* 022BF458 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF458 */ cpu->r[29] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022BF45C */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF45C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022BF460 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF460 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BF464 */ cpu->lr = cpu->r[0];
|
|
/* 022BF468 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF468 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022BF46C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BF470 */ return;
|
|
}
|
|
|
|
// fn_022BF36C @ 0x22bf36c
|
|
void Gambit_fn_022BF36C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022BF36C: ; // 0x22bf36c
|
|
/* 022BF36C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BF36C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF36C */ cpu->r[1] = _t0;
|
|
/* 022BF370 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF370 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022BF374 */ cpu->r[30] = cpu->r[4];
|
|
/* 022BF378 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF378 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022BF37C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF37C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022BF380 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF380 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022BF384 */ cpu->r[29] = cpu->r[3];
|
|
/* 022BF388 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022BF38C */ cpu->r[11] = 0x101D0000u;
|
|
/* 022BF390 */ _t5 = cpu->r[11] + 0x000001B0u;
|
|
/* 022BF390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BF390 */ cpu->r[11] = _t5;
|
|
/* 022BF394 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022BF398 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BF3A0 */ cpu->r[4] = cpu->r[4] + 0x000001ACu;
|
|
/* 022BF3A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF3A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022BF3A4 */ if (_t7) goto L_022BF3A8; else goto L_022BF3BC;
|
|
L_022BF3A8: ; // 0x22bf3a8
|
|
/* 022BF3A8 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BF3AC */ cpu->r[6] = 0x00000001u;
|
|
/* 022BF3B0 */ cpu->r[8] = cpu->r[8] + 0x000041D8u;
|
|
/* 022BF3B4 */ _t8 = cpu->r[11] + 0x00000000u;
|
|
/* 022BF3B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 022BF3B8 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 022BF3B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
L_022BF3BC: ; // 0x22bf3bc
|
|
/* 022BF3BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BF3C0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF3C0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022BF3C0 */ if (_t11) goto L_022BF3E0; else goto L_022BF3C4;
|
|
L_022BF3C4: ; // 0x22bf3c4
|
|
/* 022BF3C4 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 022BF3C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BF3C8 */ _t13 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022BF3C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022BF3CC */ cpu->ctr = cpu->r[11];
|
|
/* 022BF3D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BF3D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF3D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF3DC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF3DC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022BF3DC */ if (_t15) goto L_022BF3E0; else goto L_022BF3E4;
|
|
L_022BF3E0: ; // 0x22bf3e0
|
|
/* 022BF3E0 */ cpu->r[31] = 0x00000000u;
|
|
L_022BF3E4: ; // 0x22bf3e4
|
|
/* 022BF3E4 */ _t16 = cpu->r[29] + 0x00000148u;
|
|
/* 022BF3E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BF3E8 */ _t17 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022BF3E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022BF3EC */ _t18 = cpu->r[29] + 0x00000140u;
|
|
/* 022BF3EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022BF3F0 */ cpu->f[13] = cpu->f[11] - cpu->f[0];
|
|
/* 022BF3F4 */ _t19 = cpu->r[30] + 0x00000004u;
|
|
/* 022BF3F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022BF3F8 */ cpu->f[11] = cpu->f[0] - cpu->f[10];
|
|
/* 022BF3FC */ _t20 = cpu->r[31] + 0x00000D44u;
|
|
/* 022BF3FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022BF400 */ cpu->f[10] = cpu->f[13] * cpu->f[13];
|
|
/* 022BF404 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 022BF408 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 022BF40C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022BF410 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BF410 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022BF410 */ if (_t22) goto L_022BF414; else goto L_022BF458;
|
|
L_022BF414: ; // 0x22bf414
|
|
/* 022BF414 */ _t23 = cpu->r[29] + 0x000001A4u;
|
|
/* 022BF414 */ cpu->r[12] = rbrew_read8(cpu->mem, _t23);
|
|
/* 022BF418 */ /* nop */
|
|
/* 022BF41C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF41C */ _t25 = _t24 & 0x00000001u;
|
|
/* 022BF41C */ if (_t25) goto L_022BF428; else goto L_022BF420;
|
|
L_022BF420: ; // 0x22bf420
|
|
/* 022BF420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 022BF424 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF424 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022BF424 */ if (_t27) goto L_022BF428; else goto L_022BF458;
|
|
L_022BF428: ; // 0x22bf428
|
|
/* 022BF428 */ cpu->r[0] = 0x00000001u;
|
|
/* 022BF42C */ _t28 = cpu->r[29] + 0x00000194u;
|
|
/* 022BF42C */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022BF430 */ _t29 = cpu->r[29] + 0x0000021Cu;
|
|
/* 022BF430 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[0]);
|
|
/* 022BF434 */ _t30 = cpu->r[30] + 0x00000004u;
|
|
/* 022BF434 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022BF438 */ _t31 = cpu->r[29] + 0x00000210u;
|
|
/* 022BF438 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 022BF43C */ _t32 = cpu->r[30] + 0x00000008u;
|
|
/* 022BF43C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022BF440 */ _t33 = cpu->r[29] + 0x00000194u;
|
|
/* 022BF440 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022BF444 */ cpu->r[0] = 0x0000012Cu;
|
|
/* 022BF448 */ _t34 = cpu->r[29] + 0x00000214u;
|
|
/* 022BF448 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[10]);
|
|
/* 022BF44C */ _t35 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022BF44C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022BF450 */ _t36 = cpu->r[29] + 0x00000220u;
|
|
/* 022BF450 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 022BF454 */ _t37 = cpu->r[29] + 0x00000218u;
|
|
/* 022BF454 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
L_022BF458: ; // 0x22bf458
|
|
/* 022BF458 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF458 */ cpu->r[29] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022BF45C */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BF45C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022BF460 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF460 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022BF464 */ cpu->lr = cpu->r[0];
|
|
/* 022BF468 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF468 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022BF46C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BF470 */ return;
|
|
}
|
|
|
|
// fn_022BF474 @ 0x22bf474
|
|
void Gambit_fn_022BF474(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_022BF474: ; // 0x22bf474
|
|
/* 022BF474 */ cpu->r[0] = cpu->lr;
|
|
/* 022BF478 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BF478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF478 */ cpu->r[1] = _t0;
|
|
/* 022BF47C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF47C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BF480 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF484 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF484 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BF488 */ _t3 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022BF488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BF48C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BF490 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF494 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 022BF494 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BF498 */ cpu->r[5] = cpu->r[5] + 0x0000442Cu;
|
|
/* 022BF49C */ Gambit_fn_027DBAD4(cpu);
|
|
/* 022BF4A0 */ _t5 = cpu->r[31] + 0x00000004u;
|
|
/* 022BF4A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BF4A4 */ _t6 = cpu->r[12] + 0x00000434u;
|
|
/* 022BF4A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BF4A8 */ cpu->ctr = cpu->r[12];
|
|
/* 022BF4AC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BF4B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF4B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF4B8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF4B8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BF4B8 */ if (_t8) goto L_022BF4D8; else goto L_022BF4BC;
|
|
L_022BF4BC: ; // 0x22bf4bc
|
|
/* 022BF4BC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF4BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BF4C0 */ cpu->r[3] = 0x10060000u;
|
|
/* 022BF4C4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF4C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BF4C8 */ cpu->lr = cpu->r[0];
|
|
/* 022BF4CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BF4D0 */ cpu->r[3] = cpu->r[3] + 0x00004438u;
|
|
/* 022BF4D4 */ return;
|
|
L_022BF4D8: ; // 0x22bf4d8
|
|
/* 022BF4D8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF4D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BF4DC */ cpu->r[3] = 0x10060000u;
|
|
/* 022BF4E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BF4E4 */ cpu->r[3] = cpu->r[3] + 0x00004448u;
|
|
/* 022BF4E8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF4E8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022BF4E8 */ if (_t13) goto L_022BF4EC; else goto L_022BF4F4;
|
|
L_022BF4EC: ; // 0x22bf4ec
|
|
/* 022BF4EC */ cpu->r[3] = 0x10060000u;
|
|
/* 022BF4F0 */ cpu->r[3] = cpu->r[3] + 0x00004414u;
|
|
L_022BF4F4: ; // 0x22bf4f4
|
|
/* 022BF4F4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BF4F8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF4F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BF4FC */ cpu->lr = cpu->r[0];
|
|
/* 022BF500 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BF504 */ return;
|
|
}
|
|
|
|
// fn_022BF478 @ 0x22bf478
|
|
void Gambit_fn_022BF478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_022BF478: ; // 0x22bf478
|
|
/* 022BF478 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BF478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF478 */ cpu->r[1] = _t0;
|
|
/* 022BF47C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF47C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BF480 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF484 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF484 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BF488 */ _t3 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022BF488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BF48C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022BF490 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF494 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 022BF494 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BF498 */ cpu->r[5] = cpu->r[5] + 0x0000442Cu;
|
|
/* 022BF49C */ Gambit_fn_027DBAD4(cpu);
|
|
/* 022BF4A0 */ _t5 = cpu->r[31] + 0x00000004u;
|
|
/* 022BF4A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BF4A4 */ _t6 = cpu->r[12] + 0x00000434u;
|
|
/* 022BF4A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BF4A8 */ cpu->ctr = cpu->r[12];
|
|
/* 022BF4AC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BF4B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BF4B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF4B8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF4B8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022BF4B8 */ if (_t8) goto L_022BF4D8; else goto L_022BF4BC;
|
|
L_022BF4BC: ; // 0x22bf4bc
|
|
/* 022BF4BC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF4BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BF4C0 */ cpu->r[3] = 0x10060000u;
|
|
/* 022BF4C4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF4C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BF4C8 */ cpu->lr = cpu->r[0];
|
|
/* 022BF4CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BF4D0 */ cpu->r[3] = cpu->r[3] + 0x00004438u;
|
|
/* 022BF4D4 */ return;
|
|
L_022BF4D8: ; // 0x22bf4d8
|
|
/* 022BF4D8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022BF4D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BF4DC */ cpu->r[3] = 0x10060000u;
|
|
/* 022BF4E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022BF4E4 */ cpu->r[3] = cpu->r[3] + 0x00004448u;
|
|
/* 022BF4E8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF4E8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022BF4E8 */ if (_t13) goto L_022BF4EC; else goto L_022BF4F4;
|
|
L_022BF4EC: ; // 0x22bf4ec
|
|
/* 022BF4EC */ cpu->r[3] = 0x10060000u;
|
|
/* 022BF4F0 */ cpu->r[3] = cpu->r[3] + 0x00004414u;
|
|
L_022BF4F4: ; // 0x22bf4f4
|
|
/* 022BF4F4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BF4F8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF4F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022BF4FC */ cpu->lr = cpu->r[0];
|
|
/* 022BF500 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BF504 */ return;
|
|
}
|
|
|
|
// fn_022BF508 @ 0x22bf508
|
|
void Gambit_fn_022BF508(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110;
|
|
|
|
L_022BF508: ; // 0x22bf508
|
|
/* 022BF508 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022BF508 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF508 */ cpu->r[1] = _t0;
|
|
/* 022BF50C */ cpu->r[0] = cpu->lr;
|
|
/* 022BF510 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 022BF510 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022BF514 */ /* nop */
|
|
/* 022BF518 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF518 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022BF51C */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022BF51C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022BF520 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF520 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022BF524 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF524 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 022BF528 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 022BF528 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[29]);
|
|
/* 022BF52C */ _t7 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BF52C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022BF530 */ /* nop */
|
|
/* 022BF534 */ _t8 = cpu->r[1] + 0x00000030u;
|
|
/* 022BF534 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 022BF538 */ /* nop */
|
|
/* 022BF53C */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 022BF53C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 022BF540 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BF544 */ _t10 = cpu->r[1] + 0x00000040u;
|
|
/* 022BF544 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 022BF548 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF548 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022BF548 */ if (_t12) goto L_022BF54C; else goto L_022BF55C;
|
|
L_022BF54C: ; // 0x22bf54c
|
|
/* 022BF54C */ cpu->r[3] = 0x00001050u;
|
|
/* 022BF550 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF554 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BF554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022BF558 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF558 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022BF558 */ if (_t14) goto L_022BF890; else goto L_022BF55C;
|
|
L_022BF55C: ; // 0x22bf55c
|
|
/* 022BF55C */ cpu->r[3] = cpu->r[31];
|
|
/* 022BF560 */ Gambit_fn_02318964(cpu);
|
|
/* 022BF564 */ cpu->r[29] = 0x10110000u;
|
|
/* 022BF568 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BF56C */ cpu->r[29] = cpu->r[29] + 0x00000A2Cu;
|
|
/* 022BF570 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BF574 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF578 */ _t15 = cpu->r[11] + 0x00004458u;
|
|
/* 022BF578 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022BF57C */ cpu->r[0] = cpu->r[0] + 0x00004228u;
|
|
/* 022BF580 */ _t16 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BF580 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022BF584 */ cpu->r[30] = cpu->r[31] + 0x00000CF0u;
|
|
/* 022BF584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF588 */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 022BF588 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022BF58C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF58C */ _t19 = _t18 & 0x00000001u;
|
|
/* 022BF58C */ if (_t19) goto L_022BF590; else goto L_022BF5A0;
|
|
L_022BF590: ; // 0x22bf590
|
|
/* 022BF590 */ cpu->r[3] = 0x00000060u;
|
|
/* 022BF594 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF598 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF59C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF59C */ _t21 = _t20 & 0x00000001u;
|
|
/* 022BF59C */ if (_t21) goto L_022BF5DC; else goto L_022BF5A0;
|
|
L_022BF5A0: ; // 0x22bf5a0
|
|
/* 022BF5A0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF5A4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BF5A8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF5AC */ cpu->r[5] = cpu->r[5] + 0x000044C4u;
|
|
/* 022BF5B0 */ cpu->r[8] = 0x00000000u;
|
|
/* 022BF5B4 */ cpu->r[6] = cpu->r[6] + 0x000044D8u;
|
|
/* 022BF5B8 */ cpu->r[7] = cpu->r[5];
|
|
/* 022BF5BC */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF5C0 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022BF5C4 */ _t22 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BF5C4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[31]);
|
|
/* 022BF5C8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BF5CC */ _t23 = cpu->r[30] + 0x00000058u;
|
|
/* 022BF5CC */ rbrew_write_f32(cpu->mem, _t23, cpu->f[29]);
|
|
/* 022BF5D0 */ _t24 = cpu->r[9] + 0x0000445Cu;
|
|
/* 022BF5D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BF5D4 */ _t25 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF5D4 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 022BF5D8 */ _t26 = cpu->r[30] + 0x00000054u;
|
|
/* 022BF5D8 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
L_022BF5DC: ; // 0x22bf5dc
|
|
/* 022BF5DC */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF5E0 */ cpu->r[30] = cpu->r[31] + 0x00000D50u;
|
|
/* 022BF5E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF5E4 */ _t27 = cpu->r[12] + 0x00004460u;
|
|
/* 022BF5E4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022BF5E8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF5E8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022BF5E8 */ if (_t29) goto L_022BF5EC; else goto L_022BF5FC;
|
|
L_022BF5EC: ; // 0x22bf5ec
|
|
/* 022BF5EC */ cpu->r[3] = 0x00000060u;
|
|
/* 022BF5F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF5F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF5F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF5F8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF5F8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022BF5F8 */ if (_t31) goto L_022BF638; else goto L_022BF5FC;
|
|
L_022BF5FC: ; // 0x22bf5fc
|
|
/* 022BF5FC */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF600 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BF604 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF608 */ cpu->r[5] = cpu->r[5] + 0x000044E8u;
|
|
/* 022BF60C */ cpu->r[8] = 0x00000000u;
|
|
/* 022BF610 */ cpu->r[6] = cpu->r[6] + 0x000044FCu;
|
|
/* 022BF614 */ cpu->r[7] = cpu->r[5];
|
|
/* 022BF618 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF61C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022BF620 */ _t32 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BF620 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[30]);
|
|
/* 022BF624 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BF628 */ _t33 = cpu->r[30] + 0x00000058u;
|
|
/* 022BF628 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[29]);
|
|
/* 022BF62C */ _t34 = cpu->r[11] + 0x00004464u;
|
|
/* 022BF62C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022BF630 */ _t35 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF630 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 022BF634 */ _t36 = cpu->r[30] + 0x00000054u;
|
|
/* 022BF634 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[12]);
|
|
L_022BF638: ; // 0x22bf638
|
|
/* 022BF638 */ cpu->r[30] = cpu->r[31] + 0x00000DB0u;
|
|
/* 022BF638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF63C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF63C */ _t38 = _t37 & 0x00000001u;
|
|
/* 022BF63C */ if (_t38) goto L_022BF640; else goto L_022BF650;
|
|
L_022BF640: ; // 0x22bf640
|
|
/* 022BF640 */ cpu->r[3] = 0x00000060u;
|
|
/* 022BF644 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF648 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF64C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF64C */ _t40 = _t39 & 0x00000001u;
|
|
/* 022BF64C */ if (_t40) goto L_022BF68C; else goto L_022BF650;
|
|
L_022BF650: ; // 0x22bf650
|
|
/* 022BF650 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF654 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BF658 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF65C */ cpu->r[5] = cpu->r[5] + 0x00004510u;
|
|
/* 022BF660 */ cpu->r[8] = 0x00000000u;
|
|
/* 022BF664 */ cpu->r[6] = cpu->r[6] + 0x00004524u;
|
|
/* 022BF668 */ cpu->r[7] = cpu->r[5];
|
|
/* 022BF66C */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF670 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022BF674 */ _t41 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BF674 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[30]);
|
|
/* 022BF678 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BF67C */ _t42 = cpu->r[30] + 0x00000058u;
|
|
/* 022BF67C */ rbrew_write_f32(cpu->mem, _t42, cpu->f[29]);
|
|
/* 022BF680 */ _t43 = cpu->r[10] + 0x00004344u;
|
|
/* 022BF680 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022BF684 */ _t44 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF684 */ rbrew_write32(cpu->mem, _t44, cpu->r[29]);
|
|
/* 022BF688 */ _t45 = cpu->r[30] + 0x00000054u;
|
|
/* 022BF688 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[13]);
|
|
L_022BF68C: ; // 0x22bf68c
|
|
/* 022BF68C */ cpu->r[30] = cpu->r[31] + 0x00000E10u;
|
|
/* 022BF68C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF690 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF690 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022BF690 */ if (_t47) goto L_022BF694; else goto L_022BF6A4;
|
|
L_022BF694: ; // 0x22bf694
|
|
/* 022BF694 */ cpu->r[3] = 0x00000060u;
|
|
/* 022BF698 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF69C */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF6A0 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF6A0 */ _t49 = _t48 & 0x00000001u;
|
|
/* 022BF6A0 */ if (_t49) goto L_022BF6E0; else goto L_022BF6A4;
|
|
L_022BF6A4: ; // 0x22bf6a4
|
|
/* 022BF6A4 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF6A8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BF6AC */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF6B0 */ cpu->r[5] = cpu->r[5] + 0x00004538u;
|
|
/* 022BF6B4 */ cpu->r[8] = 0x00000000u;
|
|
/* 022BF6B8 */ cpu->r[6] = cpu->r[6] + 0x0000454Cu;
|
|
/* 022BF6BC */ cpu->r[7] = cpu->r[5];
|
|
/* 022BF6C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF6C4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022BF6C8 */ _t50 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BF6C8 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[30]);
|
|
/* 022BF6CC */ cpu->r[9] = 0x10060000u;
|
|
/* 022BF6D0 */ _t51 = cpu->r[30] + 0x00000058u;
|
|
/* 022BF6D0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[29]);
|
|
/* 022BF6D4 */ _t52 = cpu->r[9] + 0x00004468u;
|
|
/* 022BF6D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022BF6D8 */ _t53 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF6D8 */ rbrew_write32(cpu->mem, _t53, cpu->r[29]);
|
|
/* 022BF6DC */ _t54 = cpu->r[30] + 0x00000054u;
|
|
/* 022BF6DC */ rbrew_write_f32(cpu->mem, _t54, cpu->f[0]);
|
|
L_022BF6E0: ; // 0x22bf6e0
|
|
/* 022BF6E0 */ cpu->r[30] = cpu->r[31] + 0x00000E70u;
|
|
/* 022BF6E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF6E4 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF6E4 */ _t56 = _t55 & 0x00000001u;
|
|
/* 022BF6E4 */ if (_t56) goto L_022BF6E8; else goto L_022BF6F8;
|
|
L_022BF6E8: ; // 0x22bf6e8
|
|
/* 022BF6E8 */ cpu->r[3] = 0x00000060u;
|
|
/* 022BF6EC */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF6F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF6F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF6F4 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF6F4 */ _t58 = _t57 & 0x00000001u;
|
|
/* 022BF6F4 */ if (_t58) goto L_022BF734; else goto L_022BF6F8;
|
|
L_022BF6F8: ; // 0x22bf6f8
|
|
/* 022BF6F8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF6FC */ cpu->r[4] = cpu->r[31];
|
|
/* 022BF700 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF704 */ cpu->r[5] = cpu->r[5] + 0x0000447Cu;
|
|
/* 022BF708 */ cpu->r[8] = 0x00000000u;
|
|
/* 022BF70C */ cpu->r[6] = cpu->r[6] + 0x00004560u;
|
|
/* 022BF710 */ cpu->r[7] = cpu->r[5];
|
|
/* 022BF714 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF718 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022BF71C */ _t59 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BF71C */ rbrew_write_f32(cpu->mem, _t59, cpu->f[31]);
|
|
/* 022BF720 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF724 */ _t60 = cpu->r[30] + 0x00000058u;
|
|
/* 022BF724 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[29]);
|
|
/* 022BF728 */ _t61 = cpu->r[12] + 0x0000446Cu;
|
|
/* 022BF728 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022BF72C */ _t62 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF72C */ rbrew_write32(cpu->mem, _t62, cpu->r[29]);
|
|
/* 022BF730 */ _t63 = cpu->r[30] + 0x00000054u;
|
|
/* 022BF730 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[11]);
|
|
L_022BF734: ; // 0x22bf734
|
|
/* 022BF734 */ cpu->r[30] = cpu->r[31] + 0x00000ED0u;
|
|
/* 022BF734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF738 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF738 */ _t65 = _t64 & 0x00000001u;
|
|
/* 022BF738 */ if (_t65) goto L_022BF73C; else goto L_022BF74C;
|
|
L_022BF73C: ; // 0x22bf73c
|
|
/* 022BF73C */ cpu->r[3] = 0x00000060u;
|
|
/* 022BF740 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF744 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF748 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF748 */ _t67 = _t66 & 0x00000001u;
|
|
/* 022BF748 */ if (_t67) goto L_022BF788; else goto L_022BF74C;
|
|
L_022BF74C: ; // 0x22bf74c
|
|
/* 022BF74C */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF750 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BF754 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF758 */ cpu->r[5] = cpu->r[5] + 0x00004494u;
|
|
/* 022BF75C */ cpu->r[8] = 0x00000000u;
|
|
/* 022BF760 */ cpu->r[6] = cpu->r[6] + 0x00004584u;
|
|
/* 022BF764 */ cpu->r[7] = cpu->r[5];
|
|
/* 022BF768 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF76C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022BF770 */ _t68 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BF770 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[31]);
|
|
/* 022BF774 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BF778 */ _t69 = cpu->r[30] + 0x00000058u;
|
|
/* 022BF778 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[29]);
|
|
/* 022BF77C */ _t70 = cpu->r[9] + 0x00004470u;
|
|
/* 022BF77C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022BF780 */ _t71 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF780 */ rbrew_write32(cpu->mem, _t71, cpu->r[29]);
|
|
/* 022BF784 */ _t72 = cpu->r[30] + 0x00000054u;
|
|
/* 022BF784 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[13]);
|
|
L_022BF788: ; // 0x22bf788
|
|
/* 022BF788 */ cpu->r[30] = cpu->r[31] + 0x00000F30u;
|
|
/* 022BF788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF78C */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF78C */ _t74 = _t73 & 0x00000001u;
|
|
/* 022BF78C */ if (_t74) goto L_022BF790; else goto L_022BF7A0;
|
|
L_022BF790: ; // 0x22bf790
|
|
/* 022BF790 */ cpu->r[3] = 0x00000060u;
|
|
/* 022BF794 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF798 */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF79C */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF79C */ _t76 = _t75 & 0x00000001u;
|
|
/* 022BF79C */ if (_t76) goto L_022BF7DC; else goto L_022BF7A0;
|
|
L_022BF7A0: ; // 0x22bf7a0
|
|
/* 022BF7A0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF7A4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BF7A8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF7AC */ cpu->r[5] = cpu->r[5] + 0x000045A4u;
|
|
/* 022BF7B0 */ cpu->r[8] = 0x00000000u;
|
|
/* 022BF7B4 */ cpu->r[6] = cpu->r[6] + 0x000045B4u;
|
|
/* 022BF7B8 */ cpu->r[7] = cpu->r[5];
|
|
/* 022BF7BC */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF7C0 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022BF7C4 */ _t77 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BF7C4 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[30]);
|
|
/* 022BF7C8 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BF7CC */ _t78 = cpu->r[30] + 0x00000058u;
|
|
/* 022BF7CC */ rbrew_write_f32(cpu->mem, _t78, cpu->f[29]);
|
|
/* 022BF7D0 */ _t79 = cpu->r[11] + 0x00004474u;
|
|
/* 022BF7D0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022BF7D4 */ _t80 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF7D4 */ rbrew_write32(cpu->mem, _t80, cpu->r[29]);
|
|
/* 022BF7D8 */ _t81 = cpu->r[30] + 0x00000054u;
|
|
/* 022BF7D8 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[12]);
|
|
L_022BF7DC: ; // 0x22bf7dc
|
|
/* 022BF7DC */ cpu->r[30] = cpu->r[31] + 0x00000F90u;
|
|
/* 022BF7DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF7E0 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF7E0 */ _t83 = _t82 & 0x00000001u;
|
|
/* 022BF7E0 */ if (_t83) goto L_022BF7E4; else goto L_022BF7F4;
|
|
L_022BF7E4: ; // 0x22bf7e4
|
|
/* 022BF7E4 */ cpu->r[3] = 0x00000060u;
|
|
/* 022BF7E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF7EC */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF7EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF7F0 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF7F0 */ _t85 = _t84 & 0x00000001u;
|
|
/* 022BF7F0 */ if (_t85) goto L_022BF83C; else goto L_022BF7F4;
|
|
L_022BF7F4: ; // 0x22bf7f4
|
|
/* 022BF7F4 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF7F8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BF7FC */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF800 */ cpu->r[5] = cpu->r[5] + 0x000045C4u;
|
|
/* 022BF804 */ cpu->r[8] = 0x00000000u;
|
|
/* 022BF808 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF80C */ cpu->r[7] = cpu->r[5];
|
|
/* 022BF810 */ cpu->r[6] = cpu->r[6] + 0x000045D8u;
|
|
/* 022BF814 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022BF818 */ cpu->r[12] = 0x10110000u;
|
|
/* 022BF81C */ cpu->r[0] = 0x0000005Au;
|
|
/* 022BF820 */ cpu->r[12] = cpu->r[12] + 0x0000095Cu;
|
|
/* 022BF824 */ _t86 = cpu->r[30] + 0x00000054u;
|
|
/* 022BF824 */ rbrew_write32(cpu->mem, _t86, cpu->r[0]);
|
|
/* 022BF828 */ cpu->r[0] = 0x000003E8u;
|
|
/* 022BF82C */ _t87 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF82C */ rbrew_write32(cpu->mem, _t87, cpu->r[12]);
|
|
/* 022BF830 */ cpu->r[11] = 0x00000000u;
|
|
/* 022BF834 */ _t88 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BF834 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 022BF838 */ _t89 = cpu->r[30] + 0x00000058u;
|
|
/* 022BF838 */ rbrew_write32(cpu->mem, _t89, cpu->r[11]);
|
|
L_022BF83C: ; // 0x22bf83c
|
|
/* 022BF83C */ cpu->r[30] = cpu->r[31] + 0x00000FF0u;
|
|
/* 022BF83C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF840 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF840 */ _t91 = _t90 & 0x00000001u;
|
|
/* 022BF840 */ if (_t91) goto L_022BF844; else goto L_022BF854;
|
|
L_022BF844: ; // 0x22bf844
|
|
/* 022BF844 */ cpu->r[3] = 0x00000060u;
|
|
/* 022BF848 */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF84C */ cpu->r[30] = cpu->r[3];
|
|
/* 022BF84C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022BF850 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF850 */ _t93 = _t92 & 0x00000001u;
|
|
/* 022BF850 */ if (_t93) goto L_022BF890; else goto L_022BF854;
|
|
L_022BF854: ; // 0x22bf854
|
|
/* 022BF854 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BF858 */ cpu->r[4] = cpu->r[31];
|
|
/* 022BF85C */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF860 */ cpu->r[5] = cpu->r[5] + 0x000044ACu;
|
|
/* 022BF864 */ cpu->r[8] = 0x00000000u;
|
|
/* 022BF868 */ cpu->r[6] = cpu->r[6] + 0x000045ECu;
|
|
/* 022BF86C */ cpu->r[7] = cpu->r[5];
|
|
/* 022BF870 */ cpu->r[3] = cpu->r[30];
|
|
/* 022BF874 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022BF878 */ _t94 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022BF878 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[30]);
|
|
/* 022BF87C */ cpu->r[10] = 0x10060000u;
|
|
/* 022BF880 */ _t95 = cpu->r[30] + 0x00000058u;
|
|
/* 022BF880 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[29]);
|
|
/* 022BF884 */ _t96 = cpu->r[10] + 0x00004478u;
|
|
/* 022BF884 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 022BF888 */ _t97 = cpu->r[30] + 0x00000000u;
|
|
/* 022BF888 */ rbrew_write32(cpu->mem, _t97, cpu->r[29]);
|
|
/* 022BF88C */ _t98 = cpu->r[30] + 0x00000054u;
|
|
/* 022BF88C */ rbrew_write_f32(cpu->mem, _t98, cpu->f[0]);
|
|
L_022BF890: ; // 0x22bf890
|
|
/* 022BF890 */ _t99 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF890 */ cpu->r[29] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022BF894 */ _t100 = cpu->r[1] + 0x00000040u;
|
|
/* 022BF894 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 022BF898 */ _t101 = cpu->r[1] + 0x00000020u;
|
|
/* 022BF898 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 022BF89C */ _t102 = cpu->r[1] + 0x00000038u;
|
|
/* 022BF89C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t102);
|
|
/* 022BF8A0 */ _t103 = cpu->r[1] + 0x00000030u;
|
|
/* 022BF8A0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 022BF8A4 */ _t104 = cpu->r[1] + 0x00000018u;
|
|
/* 022BF8A4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t104);
|
|
/* 022BF8A8 */ _t105 = cpu->r[1] + 0x00000028u;
|
|
/* 022BF8A8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t105);
|
|
/* 022BF8AC */ cpu->r[3] = cpu->r[31];
|
|
/* 022BF8B0 */ _t106 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF8B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022BF8B4 */ _t107 = cpu->r[1] + 0x00000010u;
|
|
/* 022BF8B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022BF8B8 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022BF8B8 */ _t109 = _t108 & 0x00000001u;
|
|
/* 022BF8B8 */ if (_t109) goto L_022BF8BC; // else: addr-0 trap, fall-through
|
|
L_022BF8BC: ; // 0x22bf8bc
|
|
/* 022BF8BC */ _t110 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022BF8BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 022BF8C0 */ cpu->lr = cpu->r[0];
|
|
/* 022BF8C4 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 022BF8C8 */ return;
|
|
}
|
|
|
|
// fn_022BF8CC @ 0x22bf8cc
|
|
void Gambit_fn_022BF8CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022BF8CC: ; // 0x22bf8cc
|
|
/* 022BF8CC */ cpu->r[0] = cpu->lr;
|
|
/* 022BF8D0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022BF8D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022BF8D4 */ cpu->r[3] = 0x00001050u;
|
|
/* 022BF8D8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BF8D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022BF8D8 */ cpu->r[1] = _t1;
|
|
/* 022BF8DC */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF8E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF8E4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF8E4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BF8E4 */ rbrew_dispatch(cpu, (_t3) ? 0x022bf8e8u : 0x022bf508u); return;
|
|
/* 022BF8E8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF8E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BF8EC */ cpu->lr = cpu->r[0];
|
|
/* 022BF8F0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BF8F4 */ return;
|
|
}
|
|
|
|
// fn_022BF8D8 @ 0x22bf8d8
|
|
void Gambit_fn_022BF8D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022BF8D8: ; // 0x22bf8d8
|
|
/* 022BF8D8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BF8D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF8D8 */ cpu->r[1] = _t0;
|
|
/* 022BF8DC */ Gambit_fn_02801A78(cpu);
|
|
/* 022BF8E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BF8E4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BF8E4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BF8E4 */ rbrew_dispatch(cpu, (_t2) ? 0x022bf8e8u : 0x022bf508u); return;
|
|
/* 022BF8E8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF8E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BF8EC */ cpu->lr = cpu->r[0];
|
|
/* 022BF8F0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BF8F4 */ return;
|
|
}
|
|
|
|
// fn_022BF8F8 @ 0x22bf8f8
|
|
void Gambit_fn_022BF8F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66;
|
|
|
|
L_022BF8F8: ; // 0x22bf8f8
|
|
/* 022BF8F8 */ cpu->r[0] = cpu->lr;
|
|
/* 022BF8FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BF8FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF8FC */ cpu->r[1] = _t0;
|
|
/* 022BF900 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF904 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022BF908 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF908 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BF90C */ cpu->r[9] = 0x101E0000u;
|
|
/* 022BF910 */ cpu->r[31] = 0x10060000u;
|
|
/* 022BF914 */ _t2 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BF914 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BF918 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF91C */ cpu->r[11] = 0x10060000u;
|
|
/* 022BF920 */ cpu->r[31] = cpu->r[31] + 0x00004138u;
|
|
/* 022BF924 */ cpu->r[8] = cpu->r[8] + 0x00003BDCu;
|
|
/* 022BF928 */ cpu->r[11] = cpu->r[11] + 0x0000462Cu;
|
|
/* 022BF92C */ cpu->r[9] = cpu->r[9] + 0x00003BD4u;
|
|
/* 022BF930 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF930 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BF934 */ cpu->r[12] = cpu->r[12] + 0x00004624u;
|
|
/* 022BF938 */ _t4 = cpu->r[9] + 0x00000004u;
|
|
/* 022BF938 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022BF93C */ cpu->r[0] = 0x10060000u;
|
|
/* 022BF940 */ _t5 = cpu->r[9] + 0x00000000u;
|
|
/* 022BF940 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022BF944 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022BF948 */ _t6 = cpu->r[8] + 0x00000004u;
|
|
/* 022BF948 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 022BF94C */ cpu->r[11] = cpu->r[11] + 0x00003BE4u;
|
|
/* 022BF950 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BF954 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 022BF954 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 022BF958 */ cpu->r[4] = 0x101E0000u;
|
|
/* 022BF95C */ cpu->r[10] = 0x101E0000u;
|
|
/* 022BF960 */ _t8 = cpu->r[9] + 0x000043A4u;
|
|
/* 022BF960 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BF964 */ cpu->r[7] = 0x10060000u;
|
|
/* 022BF968 */ cpu->r[10] = cpu->r[10] + 0x00003BECu;
|
|
/* 022BF96C */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 022BF96C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 022BF970 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BF974 */ cpu->r[3] = 0x101E0000u;
|
|
/* 022BF978 */ _t10 = cpu->r[10] + 0x00000004u;
|
|
/* 022BF978 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 022BF97C */ cpu->r[12] = 0x101E0000u;
|
|
/* 022BF980 */ _t11 = cpu->r[8] + 0x0000460Cu;
|
|
/* 022BF980 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BF984 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022BF988 */ _t12 = cpu->r[3] + 0x00003C3Cu;
|
|
/* 022BF988 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[11]);
|
|
/* 022BF988 */ cpu->r[3] = _t12;
|
|
/* 022BF98C */ cpu->r[4] = cpu->r[4] + 0x00003C48u;
|
|
/* 022BF990 */ _t13 = cpu->r[7] + 0x00004374u;
|
|
/* 022BF990 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BF994 */ cpu->r[7] = 0x10060000u;
|
|
/* 022BF998 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF99C */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 022BF99C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[9]);
|
|
/* 022BF9A0 */ cpu->r[12] = cpu->r[12] + 0x00003C04u;
|
|
/* 022BF9A4 */ _t15 = cpu->r[6] + 0x00004610u;
|
|
/* 022BF9A4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022BF9A8 */ cpu->r[7] = cpu->r[7] + 0x0000463Cu;
|
|
/* 022BF9AC */ cpu->r[8] = cpu->r[8] + 0x00003BFCu;
|
|
/* 022BF9B0 */ _t16 = cpu->r[4] + 0x00000008u;
|
|
/* 022BF9B0 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[8]);
|
|
/* 022BF9B4 */ cpu->r[9] = 0x101E0000u;
|
|
/* 022BF9B8 */ _t17 = cpu->r[4] + 0x00000004u;
|
|
/* 022BF9B8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[10]);
|
|
/* 022BF9BC */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF9C0 */ _t18 = cpu->r[8] + 0x00000004u;
|
|
/* 022BF9C0 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 022BF9C4 */ cpu->r[6] = cpu->r[6] + 0x00004620u;
|
|
/* 022BF9C8 */ _t19 = cpu->r[8] + 0x00000000u;
|
|
/* 022BF9C8 */ rbrew_write32(cpu->mem, _t19, cpu->r[7]);
|
|
/* 022BF9CC */ cpu->r[9] = cpu->r[9] + 0x00003BF4u;
|
|
/* 022BF9D0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022BF9D0 */ rbrew_write32(cpu->mem, _t20, cpu->r[31]);
|
|
/* 022BF9D4 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022BF9D8 */ _t21 = cpu->r[9] + 0x00000004u;
|
|
/* 022BF9D8 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 022BF9DC */ cpu->r[0] = cpu->r[0] + 0x00004634u;
|
|
/* 022BF9E0 */ _t22 = cpu->r[9] + 0x00000000u;
|
|
/* 022BF9E0 */ rbrew_write32(cpu->mem, _t22, cpu->r[6]);
|
|
/* 022BF9E4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BF9E8 */ _t23 = cpu->r[11] + 0x00000000u;
|
|
/* 022BF9E8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 022BF9EC */ cpu->r[0] = 0x10060000u;
|
|
/* 022BF9F0 */ _t24 = cpu->r[9] + 0x00004394u;
|
|
/* 022BF9F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BF9F4 */ cpu->r[0] = cpu->r[0] + 0x00004644u;
|
|
/* 022BF9F8 */ _t25 = cpu->r[8] + 0x00003C54u;
|
|
/* 022BF9F8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[11]);
|
|
/* 022BF9F8 */ cpu->r[8] = _t25;
|
|
/* 022BF9FC */ cpu->r[9] = 0x101E0000u;
|
|
/* 022BFA00 */ _t26 = cpu->r[9] + 0x00003C60u;
|
|
/* 022BFA00 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 022BFA00 */ cpu->r[9] = _t26;
|
|
/* 022BFA04 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BFA08 */ _t27 = cpu->r[9] + 0x00000004u;
|
|
/* 022BFA08 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 022BFA0C */ cpu->r[5] = cpu->r[5] + 0x0000464Cu;
|
|
/* 022BFA10 */ _t28 = cpu->r[12] + 0x00000000u;
|
|
/* 022BFA10 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022BFA14 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BFA18 */ _t29 = cpu->r[10] + 0x00000000u;
|
|
/* 022BFA18 */ rbrew_write32(cpu->mem, _t29, cpu->r[5]);
|
|
/* 022BFA1C */ cpu->r[11] = 0x10060000u;
|
|
/* 022BFA20 */ _t30 = cpu->r[4] + 0x00000000u;
|
|
/* 022BFA20 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[10]);
|
|
/* 022BFA24 */ _t31 = cpu->r[12] + 0x00004378u;
|
|
/* 022BFA24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022BFA28 */ _t32 = cpu->r[11] + 0x00004340u;
|
|
/* 022BFA28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022BFA2C */ cpu->r[10] = 0x101E0000u;
|
|
/* 022BFA30 */ _t33 = cpu->r[3] + 0x00000008u;
|
|
/* 022BFA30 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 022BFA34 */ _t34 = cpu->r[10] + 0x00003C6Cu;
|
|
/* 022BFA34 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 022BFA34 */ cpu->r[10] = _t34;
|
|
/* 022BFA38 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BFA3C */ _t35 = cpu->r[10] + 0x00000004u;
|
|
/* 022BFA3C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 022BFA40 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022BFA44 */ _t36 = cpu->r[10] + 0x00000008u;
|
|
/* 022BFA44 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[7]);
|
|
/* 022BFA48 */ cpu->r[6] = 0x101E0000u;
|
|
/* 022BFA4C */ _t37 = cpu->r[11] + 0x00003C78u;
|
|
/* 022BFA4C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 022BFA4C */ cpu->r[11] = _t37;
|
|
/* 022BFA50 */ _t38 = cpu->r[12] + 0x00004614u;
|
|
/* 022BFA50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022BFA54 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BFA58 */ _t39 = cpu->r[11] + 0x00000004u;
|
|
/* 022BFA58 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 022BFA5C */ cpu->r[3] = 0x101E0000u;
|
|
/* 022BFA60 */ _t40 = cpu->r[9] + 0x00000008u;
|
|
/* 022BFA60 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 022BFA64 */ cpu->r[3] = cpu->r[3] + 0x00003C84u;
|
|
/* 022BFA68 */ _t41 = cpu->r[10] + 0x00004618u;
|
|
/* 022BFA68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022BFA6C */ cpu->r[10] = 0x101E0000u;
|
|
/* 022BFA70 */ _t42 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022BFA70 */ rbrew_write32(cpu->mem, _t42, cpu->r[31]);
|
|
/* 022BFA74 */ cpu->r[10] = cpu->r[10] + 0x00003BCCu;
|
|
/* 022BFA78 */ _t43 = cpu->r[8] + 0x00000004u;
|
|
/* 022BFA78 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[11]);
|
|
/* 022BFA7C */ cpu->r[0] = 0x022C0000u;
|
|
/* 022BFA80 */ _t44 = cpu->r[8] + 0x00000008u;
|
|
/* 022BFA80 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[7]);
|
|
/* 022BFA84 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BFA88 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BFA8C */ _t45 = cpu->r[11] + 0x00000008u;
|
|
/* 022BFA8C */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 022BFA90 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BFA94 */ _t46 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFA94 */ rbrew_write32(cpu->mem, _t46, cpu->r[31]);
|
|
/* 022BFA98 */ cpu->r[8] = cpu->r[8] + 0x00004658u;
|
|
/* 022BFA9C */ _t47 = cpu->r[9] + 0x0000461Cu;
|
|
/* 022BFA9C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BFAA0 */ cpu->r[5] = 0x101E0000u;
|
|
/* 022BFAA4 */ _t48 = cpu->r[10] + 0x00000004u;
|
|
/* 022BFAA4 */ rbrew_write32(cpu->mem, _t48, cpu->r[31]);
|
|
/* 022BFAA8 */ cpu->r[7] = 0x101E0000u;
|
|
/* 022BFAAC */ _t49 = cpu->r[10] + 0x00000000u;
|
|
/* 022BFAAC */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 022BFAB0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BFAB4 */ _t50 = cpu->r[5] + 0x00003C0Cu;
|
|
/* 022BFAB4 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[12]);
|
|
/* 022BFAB4 */ cpu->r[5] = _t50;
|
|
/* 022BFAB8 */ _t51 = cpu->r[5] + 0x00000004u;
|
|
/* 022BFAB8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 022BFABC */ cpu->r[10] = cpu->r[10] + 0x00004664u;
|
|
/* 022BFAC0 */ _t52 = cpu->r[7] + 0x00003C2Cu;
|
|
/* 022BFAC0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[13]);
|
|
/* 022BFAC0 */ cpu->r[7] = _t52;
|
|
/* 022BFAC4 */ _t53 = cpu->r[7] + 0x00000008u;
|
|
/* 022BFAC4 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[12]);
|
|
/* 022BFAC8 */ cpu->r[11] = cpu->r[11] + 0x00004208u;
|
|
/* 022BFACC */ _t54 = cpu->r[7] + 0x00000004u;
|
|
/* 022BFACC */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 022BFAD0 */ cpu->r[6] = cpu->r[6] + 0x00003C1Cu;
|
|
/* 022BFAD4 */ _t55 = cpu->r[3] + 0x00000008u;
|
|
/* 022BFAD4 */ rbrew_write32(cpu->mem, _t55, cpu->r[11]);
|
|
/* 022BFAD8 */ _t56 = cpu->r[5] + 0x0000000Cu;
|
|
/* 022BFAD8 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[8]);
|
|
/* 022BFADC */ _t57 = cpu->r[6] + 0x00000008u;
|
|
/* 022BFADC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 022BFAE0 */ cpu->r[0] = cpu->r[0] + 0x00000788u;
|
|
/* 022BFAE4 */ _t58 = cpu->r[3] + 0x00000010u;
|
|
/* 022BFAE4 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 022BFAE8 */ _t59 = cpu->r[7] + 0x0000000Cu;
|
|
/* 022BFAE8 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[8]);
|
|
/* 022BFAEC */ _t60 = cpu->r[6] + 0x0000000Cu;
|
|
/* 022BFAEC */ rbrew_write_f32(cpu->mem, _t60, cpu->f[8]);
|
|
/* 022BFAF0 */ _t61 = cpu->r[6] + 0x00000004u;
|
|
/* 022BFAF0 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 022BFAF4 */ _t62 = cpu->r[6] + 0x00000000u;
|
|
/* 022BFAF4 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 022BFAF8 */ _t63 = cpu->r[5] + 0x00000008u;
|
|
/* 022BFAF8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
/* 022BFAFC */ _t64 = cpu->r[3] + 0x00000000u;
|
|
/* 022BFAFC */ rbrew_write32(cpu->mem, _t64, cpu->r[10]);
|
|
/* 022BFB00 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022BFB04 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022BFB08 */ cpu->r[3] = cpu->r[3] + 0x000056F4u;
|
|
/* 022BFB0C */ Gambit_fn_02C83090(cpu);
|
|
/* 022BFB10 */ _t65 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFB10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022BFB14 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFB14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022BFB18 */ cpu->lr = cpu->r[0];
|
|
/* 022BFB1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BFB20 */ return;
|
|
}
|
|
|
|
// fn_022BF8FC @ 0x22bf8fc
|
|
void Gambit_fn_022BF8FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66;
|
|
|
|
L_022BF8FC: ; // 0x22bf8fc
|
|
/* 022BF8FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BF8FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BF8FC */ cpu->r[1] = _t0;
|
|
/* 022BF900 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF904 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022BF908 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BF908 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BF90C */ cpu->r[9] = 0x101E0000u;
|
|
/* 022BF910 */ cpu->r[31] = 0x10060000u;
|
|
/* 022BF914 */ _t2 = cpu->r[12] + 0x000042C8u;
|
|
/* 022BF914 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022BF918 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BF91C */ cpu->r[11] = 0x10060000u;
|
|
/* 022BF920 */ cpu->r[31] = cpu->r[31] + 0x00004138u;
|
|
/* 022BF924 */ cpu->r[8] = cpu->r[8] + 0x00003BDCu;
|
|
/* 022BF928 */ cpu->r[11] = cpu->r[11] + 0x0000462Cu;
|
|
/* 022BF92C */ cpu->r[9] = cpu->r[9] + 0x00003BD4u;
|
|
/* 022BF930 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022BF930 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BF934 */ cpu->r[12] = cpu->r[12] + 0x00004624u;
|
|
/* 022BF938 */ _t4 = cpu->r[9] + 0x00000004u;
|
|
/* 022BF938 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022BF93C */ cpu->r[0] = 0x10060000u;
|
|
/* 022BF940 */ _t5 = cpu->r[9] + 0x00000000u;
|
|
/* 022BF940 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022BF944 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022BF948 */ _t6 = cpu->r[8] + 0x00000004u;
|
|
/* 022BF948 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 022BF94C */ cpu->r[11] = cpu->r[11] + 0x00003BE4u;
|
|
/* 022BF950 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BF954 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 022BF954 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 022BF958 */ cpu->r[4] = 0x101E0000u;
|
|
/* 022BF95C */ cpu->r[10] = 0x101E0000u;
|
|
/* 022BF960 */ _t8 = cpu->r[9] + 0x000043A4u;
|
|
/* 022BF960 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022BF964 */ cpu->r[7] = 0x10060000u;
|
|
/* 022BF968 */ cpu->r[10] = cpu->r[10] + 0x00003BECu;
|
|
/* 022BF96C */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 022BF96C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 022BF970 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BF974 */ cpu->r[3] = 0x101E0000u;
|
|
/* 022BF978 */ _t10 = cpu->r[10] + 0x00000004u;
|
|
/* 022BF978 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 022BF97C */ cpu->r[12] = 0x101E0000u;
|
|
/* 022BF980 */ _t11 = cpu->r[8] + 0x0000460Cu;
|
|
/* 022BF980 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022BF984 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022BF988 */ _t12 = cpu->r[3] + 0x00003C3Cu;
|
|
/* 022BF988 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[11]);
|
|
/* 022BF988 */ cpu->r[3] = _t12;
|
|
/* 022BF98C */ cpu->r[4] = cpu->r[4] + 0x00003C48u;
|
|
/* 022BF990 */ _t13 = cpu->r[7] + 0x00004374u;
|
|
/* 022BF990 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022BF994 */ cpu->r[7] = 0x10060000u;
|
|
/* 022BF998 */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF99C */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 022BF99C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[9]);
|
|
/* 022BF9A0 */ cpu->r[12] = cpu->r[12] + 0x00003C04u;
|
|
/* 022BF9A4 */ _t15 = cpu->r[6] + 0x00004610u;
|
|
/* 022BF9A4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022BF9A8 */ cpu->r[7] = cpu->r[7] + 0x0000463Cu;
|
|
/* 022BF9AC */ cpu->r[8] = cpu->r[8] + 0x00003BFCu;
|
|
/* 022BF9B0 */ _t16 = cpu->r[4] + 0x00000008u;
|
|
/* 022BF9B0 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[8]);
|
|
/* 022BF9B4 */ cpu->r[9] = 0x101E0000u;
|
|
/* 022BF9B8 */ _t17 = cpu->r[4] + 0x00000004u;
|
|
/* 022BF9B8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[10]);
|
|
/* 022BF9BC */ cpu->r[6] = 0x10060000u;
|
|
/* 022BF9C0 */ _t18 = cpu->r[8] + 0x00000004u;
|
|
/* 022BF9C0 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 022BF9C4 */ cpu->r[6] = cpu->r[6] + 0x00004620u;
|
|
/* 022BF9C8 */ _t19 = cpu->r[8] + 0x00000000u;
|
|
/* 022BF9C8 */ rbrew_write32(cpu->mem, _t19, cpu->r[7]);
|
|
/* 022BF9CC */ cpu->r[9] = cpu->r[9] + 0x00003BF4u;
|
|
/* 022BF9D0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022BF9D0 */ rbrew_write32(cpu->mem, _t20, cpu->r[31]);
|
|
/* 022BF9D4 */ cpu->r[8] = 0x101E0000u;
|
|
/* 022BF9D8 */ _t21 = cpu->r[9] + 0x00000004u;
|
|
/* 022BF9D8 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 022BF9DC */ cpu->r[0] = cpu->r[0] + 0x00004634u;
|
|
/* 022BF9E0 */ _t22 = cpu->r[9] + 0x00000000u;
|
|
/* 022BF9E0 */ rbrew_write32(cpu->mem, _t22, cpu->r[6]);
|
|
/* 022BF9E4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BF9E8 */ _t23 = cpu->r[11] + 0x00000000u;
|
|
/* 022BF9E8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 022BF9EC */ cpu->r[0] = 0x10060000u;
|
|
/* 022BF9F0 */ _t24 = cpu->r[9] + 0x00004394u;
|
|
/* 022BF9F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022BF9F4 */ cpu->r[0] = cpu->r[0] + 0x00004644u;
|
|
/* 022BF9F8 */ _t25 = cpu->r[8] + 0x00003C54u;
|
|
/* 022BF9F8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[11]);
|
|
/* 022BF9F8 */ cpu->r[8] = _t25;
|
|
/* 022BF9FC */ cpu->r[9] = 0x101E0000u;
|
|
/* 022BFA00 */ _t26 = cpu->r[9] + 0x00003C60u;
|
|
/* 022BFA00 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 022BFA00 */ cpu->r[9] = _t26;
|
|
/* 022BFA04 */ cpu->r[5] = 0x10060000u;
|
|
/* 022BFA08 */ _t27 = cpu->r[9] + 0x00000004u;
|
|
/* 022BFA08 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 022BFA0C */ cpu->r[5] = cpu->r[5] + 0x0000464Cu;
|
|
/* 022BFA10 */ _t28 = cpu->r[12] + 0x00000000u;
|
|
/* 022BFA10 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022BFA14 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BFA18 */ _t29 = cpu->r[10] + 0x00000000u;
|
|
/* 022BFA18 */ rbrew_write32(cpu->mem, _t29, cpu->r[5]);
|
|
/* 022BFA1C */ cpu->r[11] = 0x10060000u;
|
|
/* 022BFA20 */ _t30 = cpu->r[4] + 0x00000000u;
|
|
/* 022BFA20 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[10]);
|
|
/* 022BFA24 */ _t31 = cpu->r[12] + 0x00004378u;
|
|
/* 022BFA24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022BFA28 */ _t32 = cpu->r[11] + 0x00004340u;
|
|
/* 022BFA28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022BFA2C */ cpu->r[10] = 0x101E0000u;
|
|
/* 022BFA30 */ _t33 = cpu->r[3] + 0x00000008u;
|
|
/* 022BFA30 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 022BFA34 */ _t34 = cpu->r[10] + 0x00003C6Cu;
|
|
/* 022BFA34 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 022BFA34 */ cpu->r[10] = _t34;
|
|
/* 022BFA38 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BFA3C */ _t35 = cpu->r[10] + 0x00000004u;
|
|
/* 022BFA3C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 022BFA40 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022BFA44 */ _t36 = cpu->r[10] + 0x00000008u;
|
|
/* 022BFA44 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[7]);
|
|
/* 022BFA48 */ cpu->r[6] = 0x101E0000u;
|
|
/* 022BFA4C */ _t37 = cpu->r[11] + 0x00003C78u;
|
|
/* 022BFA4C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 022BFA4C */ cpu->r[11] = _t37;
|
|
/* 022BFA50 */ _t38 = cpu->r[12] + 0x00004614u;
|
|
/* 022BFA50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022BFA54 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BFA58 */ _t39 = cpu->r[11] + 0x00000004u;
|
|
/* 022BFA58 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 022BFA5C */ cpu->r[3] = 0x101E0000u;
|
|
/* 022BFA60 */ _t40 = cpu->r[9] + 0x00000008u;
|
|
/* 022BFA60 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 022BFA64 */ cpu->r[3] = cpu->r[3] + 0x00003C84u;
|
|
/* 022BFA68 */ _t41 = cpu->r[10] + 0x00004618u;
|
|
/* 022BFA68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022BFA6C */ cpu->r[10] = 0x101E0000u;
|
|
/* 022BFA70 */ _t42 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022BFA70 */ rbrew_write32(cpu->mem, _t42, cpu->r[31]);
|
|
/* 022BFA74 */ cpu->r[10] = cpu->r[10] + 0x00003BCCu;
|
|
/* 022BFA78 */ _t43 = cpu->r[8] + 0x00000004u;
|
|
/* 022BFA78 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[11]);
|
|
/* 022BFA7C */ cpu->r[0] = 0x022C0000u;
|
|
/* 022BFA80 */ _t44 = cpu->r[8] + 0x00000008u;
|
|
/* 022BFA80 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[7]);
|
|
/* 022BFA84 */ cpu->r[8] = 0x10060000u;
|
|
/* 022BFA88 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BFA8C */ _t45 = cpu->r[11] + 0x00000008u;
|
|
/* 022BFA8C */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 022BFA90 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BFA94 */ _t46 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFA94 */ rbrew_write32(cpu->mem, _t46, cpu->r[31]);
|
|
/* 022BFA98 */ cpu->r[8] = cpu->r[8] + 0x00004658u;
|
|
/* 022BFA9C */ _t47 = cpu->r[9] + 0x0000461Cu;
|
|
/* 022BFA9C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022BFAA0 */ cpu->r[5] = 0x101E0000u;
|
|
/* 022BFAA4 */ _t48 = cpu->r[10] + 0x00000004u;
|
|
/* 022BFAA4 */ rbrew_write32(cpu->mem, _t48, cpu->r[31]);
|
|
/* 022BFAA8 */ cpu->r[7] = 0x101E0000u;
|
|
/* 022BFAAC */ _t49 = cpu->r[10] + 0x00000000u;
|
|
/* 022BFAAC */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 022BFAB0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022BFAB4 */ _t50 = cpu->r[5] + 0x00003C0Cu;
|
|
/* 022BFAB4 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[12]);
|
|
/* 022BFAB4 */ cpu->r[5] = _t50;
|
|
/* 022BFAB8 */ _t51 = cpu->r[5] + 0x00000004u;
|
|
/* 022BFAB8 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 022BFABC */ cpu->r[10] = cpu->r[10] + 0x00004664u;
|
|
/* 022BFAC0 */ _t52 = cpu->r[7] + 0x00003C2Cu;
|
|
/* 022BFAC0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[13]);
|
|
/* 022BFAC0 */ cpu->r[7] = _t52;
|
|
/* 022BFAC4 */ _t53 = cpu->r[7] + 0x00000008u;
|
|
/* 022BFAC4 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[12]);
|
|
/* 022BFAC8 */ cpu->r[11] = cpu->r[11] + 0x00004208u;
|
|
/* 022BFACC */ _t54 = cpu->r[7] + 0x00000004u;
|
|
/* 022BFACC */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 022BFAD0 */ cpu->r[6] = cpu->r[6] + 0x00003C1Cu;
|
|
/* 022BFAD4 */ _t55 = cpu->r[3] + 0x00000008u;
|
|
/* 022BFAD4 */ rbrew_write32(cpu->mem, _t55, cpu->r[11]);
|
|
/* 022BFAD8 */ _t56 = cpu->r[5] + 0x0000000Cu;
|
|
/* 022BFAD8 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[8]);
|
|
/* 022BFADC */ _t57 = cpu->r[6] + 0x00000008u;
|
|
/* 022BFADC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 022BFAE0 */ cpu->r[0] = cpu->r[0] + 0x00000788u;
|
|
/* 022BFAE4 */ _t58 = cpu->r[3] + 0x00000010u;
|
|
/* 022BFAE4 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 022BFAE8 */ _t59 = cpu->r[7] + 0x0000000Cu;
|
|
/* 022BFAE8 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[8]);
|
|
/* 022BFAEC */ _t60 = cpu->r[6] + 0x0000000Cu;
|
|
/* 022BFAEC */ rbrew_write_f32(cpu->mem, _t60, cpu->f[8]);
|
|
/* 022BFAF0 */ _t61 = cpu->r[6] + 0x00000004u;
|
|
/* 022BFAF0 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 022BFAF4 */ _t62 = cpu->r[6] + 0x00000000u;
|
|
/* 022BFAF4 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 022BFAF8 */ _t63 = cpu->r[5] + 0x00000008u;
|
|
/* 022BFAF8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
/* 022BFAFC */ _t64 = cpu->r[3] + 0x00000000u;
|
|
/* 022BFAFC */ rbrew_write32(cpu->mem, _t64, cpu->r[10]);
|
|
/* 022BFB00 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022BFB04 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022BFB08 */ cpu->r[3] = cpu->r[3] + 0x000056F4u;
|
|
/* 022BFB0C */ Gambit_fn_02C83090(cpu);
|
|
/* 022BFB10 */ _t65 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFB10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022BFB14 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFB14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022BFB18 */ cpu->lr = cpu->r[0];
|
|
/* 022BFB1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BFB20 */ return;
|
|
}
|
|
|
|
// fn_022BFB24 @ 0x22bfb24
|
|
void Gambit_fn_022BFB24(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_022BFB24: ; // 0x22bfb24
|
|
/* 022BFB24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BFB28 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFB28 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022BFB28 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFB28 */ goto L_022BFB2C;
|
|
L_022BFB2C: ; // 0x22bfb2c
|
|
/* 022BFB2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BFB2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BFB30 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFB30 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BFB30 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFB30 */ goto L_022BFB34;
|
|
L_022BFB34: ; // 0x22bfb34
|
|
/* 022BFB34 */ 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_022BFB38 @ 0x22bfb38
|
|
void Gambit_fn_022BFB38(CPUState* cpu) {
|
|
L_022BFB38: ; // 0x22bfb38
|
|
/* 022BFB38 */ return;
|
|
}
|
|
|
|
// fn_022BFB3C @ 0x22bfb3c
|
|
void Gambit_fn_022BFB3C(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_022BFB3C: ; // 0x22bfb3c
|
|
/* 022BFB3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BFB40 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFB40 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022BFB40 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFB40 */ goto L_022BFB44;
|
|
L_022BFB44: ; // 0x22bfb44
|
|
/* 022BFB44 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BFB44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BFB48 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFB48 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BFB48 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFB48 */ goto L_022BFB4C;
|
|
L_022BFB4C: ; // 0x22bfb4c
|
|
/* 022BFB4C */ 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_022BFB50 @ 0x22bfb50
|
|
void Gambit_fn_022BFB50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022BFB50: ; // 0x22bfb50
|
|
/* 022BFB50 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 022BFB50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFB54 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 022BFB54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BFB58 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 022BFB5C */ cpu->r[11] = 0x10110000u;
|
|
/* 022BFB60 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 022BFB60 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022BFB64 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022BFB64 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 022BFB68 */ return;
|
|
}
|
|
|
|
// fn_022BFB6C @ 0x22bfb6c
|
|
void Gambit_fn_022BFB6C(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_022BFB6C: ; // 0x22bfb6c
|
|
/* 022BFB6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BFB70 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFB70 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022BFB70 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFB70 */ goto L_022BFB74;
|
|
L_022BFB74: ; // 0x22bfb74
|
|
/* 022BFB74 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BFB74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BFB78 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFB78 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BFB78 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFB78 */ goto L_022BFB7C;
|
|
L_022BFB7C: ; // 0x22bfb7c
|
|
/* 022BFB7C */ 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_022BFB80 @ 0x22bfb80
|
|
void Gambit_fn_022BFB80(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_022BFB80: ; // 0x22bfb80
|
|
/* 022BFB80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BFB84 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFB84 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022BFB84 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFB84 */ goto L_022BFB88;
|
|
L_022BFB88: ; // 0x22bfb88
|
|
/* 022BFB88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BFB88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BFB8C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFB8C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BFB8C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFB8C */ goto L_022BFB90;
|
|
L_022BFB90: ; // 0x22bfb90
|
|
/* 022BFB90 */ 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_022BFB94 @ 0x22bfb94
|
|
void Gambit_fn_022BFB94(CPUState* cpu) {
|
|
L_022BFB94: ; // 0x22bfb94
|
|
/* 022BFB94 */ return;
|
|
}
|
|
|
|
// fn_022BFB98 @ 0x22bfb98
|
|
void Gambit_fn_022BFB98(CPUState* cpu) {
|
|
L_022BFB98: ; // 0x22bfb98
|
|
/* 022BFB98 */ return;
|
|
}
|
|
|
|
// fn_022BFB9C @ 0x22bfb9c
|
|
void Gambit_fn_022BFB9C(CPUState* cpu) {
|
|
L_022BFB9C: ; // 0x22bfb9c
|
|
/* 022BFB9C */ return;
|
|
}
|
|
|
|
// fn_022BFBA0 @ 0x22bfba0
|
|
void Gambit_fn_022BFBA0(CPUState* cpu) {
|
|
L_022BFBA0: ; // 0x22bfba0
|
|
/* 022BFBA0 */ return;
|
|
}
|
|
|
|
// fn_022BFBA4 @ 0x22bfba4
|
|
void Gambit_fn_022BFBA4(CPUState* cpu) {
|
|
L_022BFBA4: ; // 0x22bfba4
|
|
/* 022BFBA4 */ return;
|
|
}
|
|
|
|
// fn_022BFBA8 @ 0x22bfba8
|
|
void Gambit_fn_022BFBA8(CPUState* cpu) {
|
|
L_022BFBA8: ; // 0x22bfba8
|
|
/* 022BFBA8 */ return;
|
|
}
|
|
|
|
// fn_022BFBAC @ 0x22bfbac
|
|
void Gambit_fn_022BFBAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022BFBAC: ; // 0x22bfbac
|
|
/* 022BFBAC */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022BFBAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFBB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BFBB4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFBB4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BFBB4 */ if (_t2) goto L_022BFBC0; else goto L_022BFBB8;
|
|
L_022BFBB8: ; // 0x22bfbb8
|
|
/* 022BFBB8 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 022BFBBC */ return;
|
|
L_022BFBC0: ; // 0x22bfbc0
|
|
/* 022BFBC0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFBC4 */ return;
|
|
}
|
|
|
|
// fn_022BFBC8 @ 0x22bfbc8
|
|
void Gambit_fn_022BFBC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022BFBC8: ; // 0x22bfbc8
|
|
/* 022BFBC8 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022BFBC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFBCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BFBD0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFBD0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BFBD0 */ if (_t2) goto L_022BFBDC; else goto L_022BFBD4;
|
|
L_022BFBD4: ; // 0x22bfbd4
|
|
/* 022BFBD4 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 022BFBD8 */ return;
|
|
L_022BFBDC: ; // 0x22bfbdc
|
|
/* 022BFBDC */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFBE0 */ return;
|
|
}
|
|
|
|
// fn_022BFBE4 @ 0x22bfbe4
|
|
void Gambit_fn_022BFBE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022BFBE4: ; // 0x22bfbe4
|
|
/* 022BFBE4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022BFBE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFBE8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BFBE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BFBEC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFBEC */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BFBEC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022BFBEC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFBEC */ goto L_022BFBF0;
|
|
L_022BFBF0: ; // 0x22bfbf0
|
|
/* 022BFBF0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFBF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BFBF4 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 022BFBF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BFBF8 */ cpu->ctr = cpu->r[0];
|
|
/* 022BFBFC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022BFC00 @ 0x22bfc00
|
|
void Gambit_fn_022BFC00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022BFC00: ; // 0x22bfc00
|
|
/* 022BFC00 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022BFC00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFC04 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BFC04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BFC08 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFC08 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BFC08 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022BFC08 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFC08 */ goto L_022BFC0C;
|
|
L_022BFC0C: ; // 0x22bfc0c
|
|
/* 022BFC0C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFC0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BFC10 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 022BFC10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BFC14 */ cpu->ctr = cpu->r[0];
|
|
/* 022BFC18 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022BFC1C @ 0x22bfc1c
|
|
void Gambit_fn_022BFC1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022BFC1C: ; // 0x22bfc1c
|
|
/* 022BFC1C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022BFC1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFC20 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BFC20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BFC24 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFC24 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BFC24 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022BFC24 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFC24 */ goto L_022BFC28;
|
|
L_022BFC28: ; // 0x22bfc28
|
|
/* 022BFC28 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFC28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BFC2C */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 022BFC2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BFC30 */ cpu->ctr = cpu->r[0];
|
|
/* 022BFC34 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022BFC38 @ 0x22bfc38
|
|
void Gambit_fn_022BFC38(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BFC38: ; // 0x22bfc38
|
|
/* 022BFC38 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFC38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFC3C */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022BFC3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BFC40 */ cpu->ctr = cpu->r[0];
|
|
/* 022BFC44 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022BFC48 @ 0x22bfc48
|
|
void Gambit_fn_022BFC48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022BFC48: ; // 0x22bfc48
|
|
/* 022BFC48 */ cpu->r[0] = cpu->lr;
|
|
/* 022BFC4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BFC4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BFC4C */ cpu->r[1] = _t0;
|
|
/* 022BFC50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFC50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BFC54 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BFC58 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFC58 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BFC5C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022BFC5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BFC60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022BFC64 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFC64 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BFC64 */ if (_t5) goto L_022BFC68; else goto L_022BFC84;
|
|
L_022BFC68: ; // 0x22bfc68
|
|
/* 022BFC68 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022BFC68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BFC6C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022BFC6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BFC70 */ cpu->ctr = cpu->r[0];
|
|
/* 022BFC74 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BFC78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BFC7C */ cpu->r[0] = 0x00000002u;
|
|
/* 022BFC80 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022BFC80 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022BFC84: ; // 0x22bfc84
|
|
/* 022BFC84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFC84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BFC88 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFC88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BFC8C */ cpu->lr = cpu->r[0];
|
|
/* 022BFC90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BFC94 */ return;
|
|
}
|
|
|
|
// fn_022BFC4C @ 0x22bfc4c
|
|
void Gambit_fn_022BFC4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022BFC4C: ; // 0x22bfc4c
|
|
/* 022BFC4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BFC4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BFC4C */ cpu->r[1] = _t0;
|
|
/* 022BFC50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFC50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BFC54 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BFC58 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFC58 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BFC5C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022BFC5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BFC60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022BFC64 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFC64 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022BFC64 */ if (_t5) goto L_022BFC68; else goto L_022BFC84;
|
|
L_022BFC68: ; // 0x22bfc68
|
|
/* 022BFC68 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022BFC68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BFC6C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022BFC6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BFC70 */ cpu->ctr = cpu->r[0];
|
|
/* 022BFC74 */ cpu->r[3] = cpu->r[31];
|
|
/* 022BFC78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BFC7C */ cpu->r[0] = 0x00000002u;
|
|
/* 022BFC80 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022BFC80 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022BFC84: ; // 0x22bfc84
|
|
/* 022BFC84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFC84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022BFC88 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFC88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022BFC8C */ cpu->lr = cpu->r[0];
|
|
/* 022BFC90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022BFC94 */ return;
|
|
}
|
|
|
|
// fn_022BFCA0 @ 0x22bfca0
|
|
void Gambit_fn_022BFCA0(CPUState* cpu) {
|
|
L_022BFCA0: ; // 0x22bfca0
|
|
/* 022BFCA0 */ return;
|
|
}
|
|
|
|
// fn_022BFCA4 @ 0x22bfca4
|
|
void Gambit_fn_022BFCA4(CPUState* cpu) {
|
|
L_022BFCA4: ; // 0x22bfca4
|
|
/* 022BFCA4 */ return;
|
|
}
|
|
|
|
// fn_022BFCA8 @ 0x22bfca8
|
|
void Gambit_fn_022BFCA8(CPUState* cpu) {
|
|
L_022BFCA8: ; // 0x22bfca8
|
|
/* 022BFCA8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFCAC */ return;
|
|
}
|
|
|
|
// fn_022BFCB0 @ 0x22bfcb0
|
|
void Gambit_fn_022BFCB0(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_022BFCB0: ; // 0x22bfcb0
|
|
/* 022BFCB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022BFCB4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFCB4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022BFCB4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFCB4 */ goto L_022BFCB8;
|
|
L_022BFCB8: ; // 0x22bfcb8
|
|
/* 022BFCB8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022BFCB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022BFCBC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFCBC */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BFCBC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022BFCBC */ goto L_022BFCC0;
|
|
L_022BFCC0: ; // 0x22bfcc0
|
|
/* 022BFCC0 */ 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_022BFCC4 @ 0x22bfcc4
|
|
void Gambit_fn_022BFCC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BFCC4: ; // 0x22bfcc4
|
|
/* 022BFCC4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFCC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFCC8 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 022BFCC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BFCCC */ cpu->ctr = cpu->r[0];
|
|
/* 022BFCD0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022BFCD4 @ 0x22bfcd4
|
|
void Gambit_fn_022BFCD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BFCD4: ; // 0x22bfcd4
|
|
/* 022BFCD4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFCD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFCD8 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022BFCD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BFCDC */ cpu->ctr = cpu->r[0];
|
|
/* 022BFCE0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022BFCE4 @ 0x22bfce4
|
|
void Gambit_fn_022BFCE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BFCE4: ; // 0x22bfce4
|
|
/* 022BFCE4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFCE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFCE8 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022BFCE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BFCEC */ cpu->ctr = cpu->r[0];
|
|
/* 022BFCF0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022BFCF4 @ 0x22bfcf4
|
|
void Gambit_fn_022BFCF4(CPUState* cpu) {
|
|
L_022BFCF4: ; // 0x22bfcf4
|
|
/* 022BFCF4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFCF8 */ return;
|
|
}
|
|
|
|
// fn_022BFCFC @ 0x22bfcfc
|
|
void Gambit_fn_022BFCFC(CPUState* cpu) {
|
|
L_022BFCFC: ; // 0x22bfcfc
|
|
/* 022BFCFC */ return;
|
|
}
|
|
|
|
// fn_022BFD00 @ 0x22bfd00
|
|
void Gambit_fn_022BFD00(CPUState* cpu) {
|
|
L_022BFD00: ; // 0x22bfd00
|
|
/* 022BFD00 */ return;
|
|
}
|
|
|
|
// fn_022BFD04 @ 0x22bfd04
|
|
void Gambit_fn_022BFD04(CPUState* cpu) {
|
|
L_022BFD04: ; // 0x22bfd04
|
|
/* 022BFD04 */ return;
|
|
}
|
|
|
|
// fn_022BFD08 @ 0x22bfd08
|
|
void Gambit_fn_022BFD08(CPUState* cpu) {
|
|
L_022BFD08: ; // 0x22bfd08
|
|
/* 022BFD08 */ return;
|
|
}
|
|
|
|
// fn_022BFD0C @ 0x22bfd0c
|
|
void Gambit_fn_022BFD0C(CPUState* cpu) {
|
|
L_022BFD0C: ; // 0x22bfd0c
|
|
/* 022BFD0C */ return;
|
|
}
|
|
|
|
// fn_022BFD10 @ 0x22bfd10
|
|
void Gambit_fn_022BFD10(CPUState* cpu) {
|
|
L_022BFD10: ; // 0x22bfd10
|
|
/* 022BFD10 */ return;
|
|
}
|
|
|
|
// fn_022BFD14 @ 0x22bfd14
|
|
void Gambit_fn_022BFD14(CPUState* cpu) {
|
|
L_022BFD14: ; // 0x22bfd14
|
|
/* 022BFD14 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFD18 */ return;
|
|
}
|
|
|
|
// fn_022BFD1C @ 0x22bfd1c
|
|
void Gambit_fn_022BFD1C(CPUState* cpu) {
|
|
L_022BFD1C: ; // 0x22bfd1c
|
|
/* 022BFD1C */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFD20 */ return;
|
|
}
|
|
|
|
// fn_022BFD24 @ 0x22bfd24
|
|
void Gambit_fn_022BFD24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022BFD24: ; // 0x22bfd24
|
|
/* 022BFD24 */ cpu->r[0] = cpu->lr;
|
|
/* 022BFD28 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BFD28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BFD28 */ cpu->r[1] = _t0;
|
|
/* 022BFD2C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFD2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BFD30 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BFD30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BFD34 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022BFD34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BFD38 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022BFD38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BFD3C */ cpu->r[31] = cpu->r[3];
|
|
/* 022BFD40 */ cpu->ctr = cpu->r[9];
|
|
/* 022BFD44 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BFD48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BFD4C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFD4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BFD50 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022BFD50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BFD54 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022BFD54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BFD58 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022BFD58 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022BFD5C */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022BFD5C */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022BFD60 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022BFD60 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022BFD64 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BFD64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BFD68 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFD68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BFD6C */ cpu->lr = cpu->r[0];
|
|
/* 022BFD70 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BFD74 */ return;
|
|
}
|
|
|
|
// fn_022BFD28 @ 0x22bfd28
|
|
void Gambit_fn_022BFD28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022BFD28: ; // 0x22bfd28
|
|
/* 022BFD28 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022BFD28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BFD28 */ cpu->r[1] = _t0;
|
|
/* 022BFD2C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFD2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BFD30 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BFD30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BFD34 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022BFD34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BFD38 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022BFD38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BFD3C */ cpu->r[31] = cpu->r[3];
|
|
/* 022BFD40 */ cpu->ctr = cpu->r[9];
|
|
/* 022BFD44 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022BFD48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022BFD4C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFD4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BFD50 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022BFD50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022BFD54 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022BFD54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BFD58 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022BFD58 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022BFD5C */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022BFD5C */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022BFD60 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022BFD60 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022BFD64 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022BFD64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022BFD68 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFD68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022BFD6C */ cpu->lr = cpu->r[0];
|
|
/* 022BFD70 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022BFD74 */ return;
|
|
}
|
|
|
|
// fn_022BFD78 @ 0x22bfd78
|
|
void Gambit_fn_022BFD78(CPUState* cpu) {
|
|
L_022BFD78: ; // 0x22bfd78
|
|
/* 022BFD78 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFD7C */ return;
|
|
}
|
|
|
|
// fn_022BFD80 @ 0x22bfd80
|
|
void Gambit_fn_022BFD80(CPUState* cpu) {
|
|
L_022BFD80: ; // 0x22bfd80
|
|
/* 022BFD80 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFD84 */ return;
|
|
}
|
|
|
|
// fn_022BFD88 @ 0x22bfd88
|
|
void Gambit_fn_022BFD88(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BFD88: ; // 0x22bfd88
|
|
/* 022BFD88 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFD88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFD8C */ _t1 = cpu->r[12] + 0x000002B4u;
|
|
/* 022BFD8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BFD90 */ cpu->ctr = cpu->r[0];
|
|
/* 022BFD94 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022BFD98 @ 0x22bfd98
|
|
void Gambit_fn_022BFD98(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022BFD98: ; // 0x22bfd98
|
|
/* 022BFD98 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022BFD98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFD9C */ _t1 = cpu->r[12] + 0x000002C4u;
|
|
/* 022BFD9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022BFDA0 */ cpu->ctr = cpu->r[0];
|
|
/* 022BFDA4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022BFDA8 @ 0x22bfda8
|
|
void Gambit_fn_022BFDA8(CPUState* cpu) {
|
|
L_022BFDA8: ; // 0x22bfda8
|
|
/* 022BFDA8 */ return;
|
|
}
|
|
|
|
// fn_022BFDAC @ 0x22bfdac
|
|
void Gambit_fn_022BFDAC(CPUState* cpu) {
|
|
L_022BFDAC: ; // 0x22bfdac
|
|
/* 022BFDAC */ return;
|
|
}
|
|
|
|
// fn_022BFDB0 @ 0x22bfdb0
|
|
void Gambit_fn_022BFDB0(CPUState* cpu) {
|
|
L_022BFDB0: ; // 0x22bfdb0
|
|
/* 022BFDB0 */ return;
|
|
}
|
|
|
|
// fn_022BFDB4 @ 0x22bfdb4
|
|
void Gambit_fn_022BFDB4(CPUState* cpu) {
|
|
L_022BFDB4: ; // 0x22bfdb4
|
|
/* 022BFDB4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFDB8 */ return;
|
|
}
|
|
|
|
// fn_022BFDBC @ 0x22bfdbc
|
|
void Gambit_fn_022BFDBC(CPUState* cpu) {
|
|
L_022BFDBC: ; // 0x22bfdbc
|
|
/* 022BFDBC */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFDC0 */ return;
|
|
}
|
|
|
|
// fn_022BFDC4 @ 0x22bfdc4
|
|
void Gambit_fn_022BFDC4(CPUState* cpu) {
|
|
L_022BFDC4: ; // 0x22bfdc4
|
|
/* 022BFDC4 */ cpu->r[3] = cpu->r[3] + 0x0000011Cu;
|
|
/* 022BFDC8 */ return;
|
|
}
|
|
|
|
// fn_022BFDCC @ 0x22bfdcc
|
|
void Gambit_fn_022BFDCC(CPUState* cpu) {
|
|
L_022BFDCC: ; // 0x22bfdcc
|
|
/* 022BFDCC */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFDD0 */ return;
|
|
}
|
|
|
|
// fn_022BFDD4 @ 0x22bfdd4
|
|
void Gambit_fn_022BFDD4(CPUState* cpu) {
|
|
L_022BFDD4: ; // 0x22bfdd4
|
|
/* 022BFDD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFDD8 */ return;
|
|
}
|
|
|
|
// fn_022BFDDC @ 0x22bfddc
|
|
void Gambit_fn_022BFDDC(CPUState* cpu) {
|
|
L_022BFDDC: ; // 0x22bfddc
|
|
/* 022BFDDC */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFDE0 */ return;
|
|
}
|
|
|
|
// fn_022BFDE4 @ 0x22bfde4
|
|
void Gambit_fn_022BFDE4(CPUState* cpu) {
|
|
L_022BFDE4: ; // 0x22bfde4
|
|
/* 022BFDE4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFDE8 */ return;
|
|
}
|
|
|
|
// fn_022BFDEC @ 0x22bfdec
|
|
void Gambit_fn_022BFDEC(CPUState* cpu) {
|
|
L_022BFDEC: ; // 0x22bfdec
|
|
/* 022BFDEC */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFDF0 */ return;
|
|
}
|
|
|
|
// fn_022BFDF4 @ 0x22bfdf4
|
|
void Gambit_fn_022BFDF4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022BFDF4: ; // 0x22bfdf4
|
|
/* 022BFDF4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BFDF8 */ _t0 = cpu->r[12] + 0x00004340u;
|
|
/* 022BFDF8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022BFDFC */ return;
|
|
}
|
|
|
|
// fn_022BFE00 @ 0x22bfe00
|
|
void Gambit_fn_022BFE00(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022BFE00: ; // 0x22bfe00
|
|
/* 022BFE00 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BFE04 */ _t0 = cpu->r[12] + 0x00004340u;
|
|
/* 022BFE04 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022BFE08 */ return;
|
|
}
|
|
|
|
// fn_022BFE0C @ 0x22bfe0c
|
|
void Gambit_fn_022BFE0C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022BFE0C: ; // 0x22bfe0c
|
|
/* 022BFE0C */ cpu->r[12] = 0x10060000u;
|
|
/* 022BFE10 */ _t0 = cpu->r[12] + 0x00004340u;
|
|
/* 022BFE10 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022BFE14 */ return;
|
|
}
|
|
|
|
// fn_022BFE18 @ 0x22bfe18
|
|
void Gambit_fn_022BFE18(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022BFE18: ; // 0x22bfe18
|
|
/* 022BFE18 */ cpu->r[12] = 0x10060000u;
|
|
/* 022BFE1C */ _t0 = cpu->r[12] + 0x00004340u;
|
|
/* 022BFE1C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022BFE20 */ return;
|
|
}
|
|
|
|
// fn_022BFE24 @ 0x22bfe24
|
|
void Gambit_fn_022BFE24(CPUState* cpu) {
|
|
L_022BFE24: ; // 0x22bfe24
|
|
/* 022BFE24 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFE28 */ return;
|
|
}
|
|
|
|
// fn_022BFE2C @ 0x22bfe2c
|
|
void Gambit_fn_022BFE2C(CPUState* cpu) {
|
|
L_022BFE2C: ; // 0x22bfe2c
|
|
/* 022BFE2C */ return;
|
|
}
|
|
|
|
// fn_022BFE30 @ 0x22bfe30
|
|
void Gambit_fn_022BFE30(CPUState* cpu) {
|
|
L_022BFE30: ; // 0x22bfe30
|
|
/* 022BFE30 */ return;
|
|
}
|
|
|
|
// fn_022BFE34 @ 0x22bfe34
|
|
void Gambit_fn_022BFE34(CPUState* cpu) {
|
|
L_022BFE34: ; // 0x22bfe34
|
|
/* 022BFE34 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFE38 */ return;
|
|
}
|
|
|
|
// fn_022BFE3C @ 0x22bfe3c
|
|
void Gambit_fn_022BFE3C(CPUState* cpu) {
|
|
L_022BFE3C: ; // 0x22bfe3c
|
|
/* 022BFE3C */ return;
|
|
}
|
|
|
|
// fn_022BFE40 @ 0x22bfe40
|
|
void Gambit_fn_022BFE40(CPUState* cpu) {
|
|
L_022BFE40: ; // 0x22bfe40
|
|
/* 022BFE40 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFE44 */ return;
|
|
}
|
|
|
|
// fn_022BFE48 @ 0x22bfe48
|
|
void Gambit_fn_022BFE48(CPUState* cpu) {
|
|
L_022BFE48: ; // 0x22bfe48
|
|
/* 022BFE48 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFE4C */ return;
|
|
}
|
|
|
|
// fn_022BFE50 @ 0x22bfe50
|
|
void Gambit_fn_022BFE50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022BFE50: ; // 0x22bfe50
|
|
/* 022BFE50 */ cpu->r[0] = cpu->lr;
|
|
/* 022BFE54 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022BFE54 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022BFE58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022BFE5C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BFE5C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022BFE5C */ cpu->r[1] = _t1;
|
|
/* 022BFE60 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFE60 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022BFE60 */ if (_t3) goto L_022BFE64; else goto L_022BFE78;
|
|
L_022BFE64: ; // 0x22bfe64
|
|
/* 022BFE64 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BFE68 */ cpu->lr = cpu->r[0];
|
|
/* 022BFE6C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BFE70 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFE74 */ return;
|
|
L_022BFE78: ; // 0x22bfe78
|
|
/* 022BFE78 */ Gambit_fn_022713B8(cpu);
|
|
/* 022BFE7C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFE7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022BFE80 */ cpu->lr = cpu->r[0];
|
|
/* 022BFE84 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BFE88 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFE8C */ return;
|
|
}
|
|
|
|
// fn_022BFE5C @ 0x22bfe5c
|
|
void Gambit_fn_022BFE5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022BFE5C: ; // 0x22bfe5c
|
|
/* 022BFE5C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022BFE5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BFE5C */ cpu->r[1] = _t0;
|
|
/* 022BFE60 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFE60 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BFE60 */ if (_t2) goto L_022BFE64; else goto L_022BFE78;
|
|
L_022BFE64: ; // 0x22bfe64
|
|
/* 022BFE64 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022BFE68 */ cpu->lr = cpu->r[0];
|
|
/* 022BFE6C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BFE70 */ cpu->r[3] = 0x00000000u;
|
|
/* 022BFE74 */ return;
|
|
L_022BFE78: ; // 0x22bfe78
|
|
/* 022BFE78 */ Gambit_fn_022713B8(cpu);
|
|
/* 022BFE7C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFE7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022BFE80 */ cpu->lr = cpu->r[0];
|
|
/* 022BFE84 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022BFE88 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFE8C */ return;
|
|
}
|
|
|
|
// fn_022BFE90 @ 0x22bfe90
|
|
void Gambit_fn_022BFE90(CPUState* cpu) {
|
|
L_022BFE90: ; // 0x22bfe90
|
|
/* 022BFE90 */ return;
|
|
}
|
|
|
|
// fn_022BFE94 @ 0x22bfe94
|
|
void Gambit_fn_022BFE94(CPUState* cpu) {
|
|
L_022BFE94: ; // 0x22bfe94
|
|
/* 022BFE94 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022BFE98 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022BFE9C */ return;
|
|
}
|
|
|
|
// fn_022BFEA0 @ 0x22bfea0
|
|
void Gambit_fn_022BFEA0(CPUState* cpu) {
|
|
L_022BFEA0: ; // 0x22bfea0
|
|
/* 022BFEA0 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022BFEA4 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022BFEA8 */ return;
|
|
}
|
|
|
|
// fn_022BFEAC @ 0x22bfeac
|
|
void Gambit_fn_022BFEAC(CPUState* cpu) {
|
|
L_022BFEAC: ; // 0x22bfeac
|
|
/* 022BFEAC */ return;
|
|
}
|
|
|
|
// fn_022BFEB0 @ 0x22bfeb0
|
|
void Gambit_fn_022BFEB0(CPUState* cpu) {
|
|
L_022BFEB0: ; // 0x22bfeb0
|
|
/* 022BFEB0 */ cpu->r[3] = 0x10060000u;
|
|
/* 022BFEB4 */ cpu->r[3] = cpu->r[3] + 0x00004218u;
|
|
/* 022BFEB8 */ return;
|
|
}
|
|
|
|
// fn_022BFEBC @ 0x22bfebc
|
|
void Gambit_fn_022BFEBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_022BFEBC: ; // 0x22bfebc
|
|
/* 022BFEBC */ cpu->r[9] = 0x101D0000u;
|
|
/* 022BFEC0 */ _t0 = cpu->r[9] + 0x000001A8u;
|
|
/* 022BFEC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022BFEC4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022BFEC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022BFECC */ cpu->r[11] = cpu->r[11] + 0x000001A4u;
|
|
/* 022BFED0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFED0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022BFED0 */ if (_t2) goto L_022BFED4; else goto L_022BFEEC;
|
|
L_022BFED4: ; // 0x22bfed4
|
|
/* 022BFED4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BFED8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022BFEDC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BFEE0 */ cpu->r[9] = cpu->r[9] + 0x000041C8u;
|
|
/* 022BFEE4 */ _t3 = cpu->r[12] + 0x000001A8u;
|
|
/* 022BFEE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022BFEE8 */ _t4 = cpu->r[11] + 0x00000000u;
|
|
/* 022BFEE8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_022BFEEC: ; // 0x22bfeec
|
|
/* 022BFEEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022BFEF0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFEF0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022BFEF0 */ if (_t6) goto L_022BFEF4; else goto L_022BFEFC;
|
|
L_022BFEF4: ; // 0x22bfef4
|
|
/* 022BFEF4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022BFEF8 */ return;
|
|
L_022BFEFC: ; // 0x22bfefc
|
|
/* 022BFEFC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BFF00 */ _t7 = cpu->r[12] + 0xFFFFDAC0u;
|
|
/* 022BFF00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022BFF04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BFF08 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BFF0C */ cpu->r[12] = cpu->r[12] + 0xFFFFFBC4u;
|
|
/* 022BFF10 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFF10 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022BFF10 */ if (_t9) goto L_022BFF14; else goto L_022BFF2C;
|
|
L_022BFF14: ; // 0x22bff14
|
|
/* 022BFF14 */ cpu->r[11] = 0x10060000u;
|
|
/* 022BFF18 */ cpu->r[10] = 0x00000001u;
|
|
/* 022BFF1C */ cpu->r[9] = 0x101D0000u;
|
|
/* 022BFF20 */ cpu->r[11] = cpu->r[11] + 0x000041A8u;
|
|
/* 022BFF24 */ _t10 = cpu->r[9] + 0xFFFFDAC0u;
|
|
/* 022BFF24 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022BFF28 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022BFF28 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_022BFF2C: ; // 0x22bff2c
|
|
/* 022BFF2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022BFF30 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFF30 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022BFF30 */ if (_t13) goto L_022BFF34; else goto L_022BFF3C;
|
|
L_022BFF34: ; // 0x22bff34
|
|
/* 022BFF34 */ cpu->r[0] = 0x00000001u;
|
|
/* 022BFF38 */ goto L_022BFFB0;
|
|
L_022BFF3C: ; // 0x22bff3c
|
|
/* 022BFF3C */ cpu->r[10] = 0x101D0000u;
|
|
/* 022BFF40 */ _t14 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 022BFF40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022BFF40 */ cpu->r[10] = _t14;
|
|
/* 022BFF44 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022BFF48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022BFF4C */ cpu->r[11] = cpu->r[11] + 0xFFFFD4ECu;
|
|
/* 022BFF50 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFF50 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022BFF50 */ if (_t16) goto L_022BFF54; else goto L_022BFF68;
|
|
L_022BFF54: ; // 0x22bff54
|
|
/* 022BFF54 */ cpu->r[9] = 0x10060000u;
|
|
/* 022BFF58 */ cpu->r[0] = 0x00000001u;
|
|
/* 022BFF5C */ cpu->r[9] = cpu->r[9] + 0x00004198u;
|
|
/* 022BFF60 */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 022BFF60 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022BFF64 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022BFF64 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_022BFF68: ; // 0x22bff68
|
|
/* 022BFF68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022BFF6C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFF6C */ _t20 = _t19 & 0x00000001u;
|
|
/* 022BFF6C */ if (_t20) goto L_022BFF70; else goto L_022BFF78;
|
|
L_022BFF70: ; // 0x22bff70
|
|
/* 022BFF70 */ cpu->r[0] = 0x00000001u;
|
|
/* 022BFF74 */ goto L_022BFFB0;
|
|
L_022BFF78: ; // 0x22bff78
|
|
/* 022BFF78 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022BFF7C */ _t21 = cpu->r[9] + 0xFFFFD4E0u;
|
|
/* 022BFF7C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022BFF7C */ cpu->r[9] = _t21;
|
|
/* 022BFF80 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022BFF84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022BFF88 */ cpu->r[12] = cpu->r[12] + 0xFFFFD4E4u;
|
|
/* 022BFF8C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022BFF8C */ _t23 = _t22 & 0x00000001u;
|
|
/* 022BFF8C */ if (_t23) goto L_022BFF90; else goto L_022BFFA4;
|
|
L_022BFF90: ; // 0x22bff90
|
|
/* 022BFF90 */ cpu->r[0] = 0x10060000u;
|
|
/* 022BFF94 */ cpu->r[11] = 0x00000001u;
|
|
/* 022BFF98 */ cpu->r[0] = cpu->r[0] + 0x00004128u;
|
|
/* 022BFF9C */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022BFF9C */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022BFFA0 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 022BFFA0 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_022BFFA4: ; // 0x22bffa4
|
|
/* 022BFFA4 */ cpu->r[9] = cpu->r[4] ^ cpu->r[12];
|
|
/* 022BFFA8 */ cpu->r[0] = rbrew_clz32(cpu->r[9]);
|
|
/* 022BFFAC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022BFFB0: ; // 0x22bffb0
|
|
/* 022BFFB0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022BFFB4 */ return;
|
|
}
|
|
|
|
// fn_022BFFB8 @ 0x22bffb8
|
|
void Gambit_fn_022BFFB8(CPUState* cpu) {
|
|
L_022BFFB8: ; // 0x22bffb8
|
|
/* 022BFFB8 */ return;
|
|
}
|
|
|
|
// fn_022BFFBC @ 0x22bffbc
|
|
void Gambit_fn_022BFFBC(CPUState* cpu) {
|
|
L_022BFFBC: ; // 0x22bffbc
|
|
/* 022BFFBC */ return;
|
|
}
|
|
|
|
// fn_022BFFD8 @ 0x22bffd8
|
|
void Gambit_fn_022BFFD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022BFFD8: ; // 0x22bffd8
|
|
/* 022BFFD8 */ cpu->r[3] = cpu->r[3] + 0x00000198u;
|
|
/* 022BFFDC */ goto L_022C0718;
|
|
L_022C0718: ; // 0x22c0718
|
|
/* 022C0718 */ cpu->r[0] = cpu->lr;
|
|
/* 022C071C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C071C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C071C */ cpu->r[1] = _t0;
|
|
/* 022C0720 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0720 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C0724 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C0728 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0728 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C072C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022C072C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C0730 */ cpu->r[12] = 0x00000000u;
|
|
/* 022C0734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022C0738 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022C0738 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022C073C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C073C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022C073C */ if (_t6) goto L_022C0764; else goto L_022C0740;
|
|
L_022C0740: ; // 0x22c0740
|
|
/* 022C0740 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022C0740 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022C0744 */ /* nop */
|
|
/* 022C0748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022C074C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C074C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C074C */ if (_t9) goto L_022C0750; else goto L_022C0764;
|
|
L_022C0750: ; // 0x22c0750
|
|
/* 022C0750 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022C0750 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C0754 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022C0754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C0758 */ cpu->ctr = cpu->r[0];
|
|
/* 022C075C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0760 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022C0764: ; // 0x22c0764
|
|
/* 022C0764 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0768 */ Gambit_fn_022C0690(cpu);
|
|
/* 022C076C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0770 */ Gambit_fn_027FC37C(cpu);
|
|
/* 022C0774 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022C0778 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0778 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022C077C */ cpu->lr = cpu->r[0];
|
|
/* 022C0780 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C0784 */ return;
|
|
}
|
|
|
|
// fn_022BFFE0 @ 0x22bffe0
|
|
void Gambit_fn_022BFFE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022BFFE0: ; // 0x22bffe0
|
|
/* 022BFFE0 */ cpu->r[0] = cpu->lr;
|
|
/* 022BFFE4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BFFE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BFFE4 */ cpu->r[1] = _t0;
|
|
/* 022BFFE8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFFE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BFFEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFFEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BFFF0 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 022BFFF0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022BFFF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BFFF8 */ /* nop */
|
|
/* 022BFFFC */ Gambit_fn_027FC35C(cpu);
|
|
/* 022C0000 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0004 */ Gambit_fn_022C0590(cpu);
|
|
/* 022C0008 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022C000C */ cpu->lr = cpu->r[0];
|
|
/* 022C0010 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0010 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022C0014 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C0018 */ return;
|
|
}
|
|
|
|
// fn_022BFFE4 @ 0x22bffe4
|
|
void Gambit_fn_022BFFE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022BFFE4: ; // 0x22bffe4
|
|
/* 022BFFE4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022BFFE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022BFFE4 */ cpu->r[1] = _t0;
|
|
/* 022BFFE8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022BFFE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022BFFEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022BFFEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022BFFF0 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 022BFFF0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022BFFF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022BFFF8 */ /* nop */
|
|
/* 022BFFFC */ Gambit_fn_027FC35C(cpu);
|
|
/* 022C0000 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0004 */ Gambit_fn_022C0590(cpu);
|
|
/* 022C0008 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022C000C */ cpu->lr = cpu->r[0];
|
|
/* 022C0010 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0010 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022C0014 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C0018 */ return;
|
|
}
|
|
|
|
// fn_022C001C @ 0x22c001c
|
|
void Gambit_fn_022C001C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022C001C: ; // 0x22c001c
|
|
/* 022C001C */ cpu->r[0] = cpu->lr;
|
|
/* 022C0020 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C0020 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0020 */ cpu->r[1] = _t0;
|
|
/* 022C0024 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0024 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C0028 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C002C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C002C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C0030 */ _t3 = cpu->r[31] + 0x000001A6u;
|
|
/* 022C0030 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C0034 */ cpu->r[3] = cpu->r[31] + 0x00000198u;
|
|
/* 022C0038 */ /* nop */
|
|
/* 022C003C */ Gambit_fn_027FC35C(cpu);
|
|
/* 022C0040 */ cpu->r[3] = cpu->r[31] + 0x00000198u;
|
|
/* 022C0044 */ Gambit_fn_022C0590(cpu);
|
|
/* 022C0048 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022C004C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C004C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022C0050 */ cpu->lr = cpu->r[0];
|
|
/* 022C0054 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C0058 */ return;
|
|
}
|
|
|
|
// fn_022C0020 @ 0x22c0020
|
|
void Gambit_fn_022C0020(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022C0020: ; // 0x22c0020
|
|
/* 022C0020 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C0020 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0020 */ cpu->r[1] = _t0;
|
|
/* 022C0024 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0024 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C0028 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C002C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C002C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C0030 */ _t3 = cpu->r[31] + 0x000001A6u;
|
|
/* 022C0030 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C0034 */ cpu->r[3] = cpu->r[31] + 0x00000198u;
|
|
/* 022C0038 */ /* nop */
|
|
/* 022C003C */ Gambit_fn_027FC35C(cpu);
|
|
/* 022C0040 */ cpu->r[3] = cpu->r[31] + 0x00000198u;
|
|
/* 022C0044 */ Gambit_fn_022C0590(cpu);
|
|
/* 022C0048 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022C004C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C004C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022C0050 */ cpu->lr = cpu->r[0];
|
|
/* 022C0054 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C0058 */ return;
|
|
}
|
|
|
|
// fn_022C005C @ 0x22c005c
|
|
void Gambit_fn_022C005C(CPUState* cpu) {
|
|
L_022C005C: ; // 0x22c005c
|
|
/* 022C005C */ cpu->r[3] = 0x00000000u;
|
|
/* 022C0060 */ return;
|
|
}
|
|
|
|
// fn_022C0064 @ 0x22c0064
|
|
void Gambit_fn_022C0064(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022C0064: ; // 0x22c0064
|
|
/* 022C0064 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C0068 */ _t0 = cpu->r[12] + 0x000042C8u;
|
|
/* 022C0068 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022C006C */ return;
|
|
}
|
|
|
|
// fn_022C0070 @ 0x22c0070
|
|
void Gambit_fn_022C0070(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022C0070: ; // 0x22c0070
|
|
/* 022C0070 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022C0074 */ _t0 = cpu->r[12] + 0x000001B0u;
|
|
/* 022C0074 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022C0078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022C007C */ cpu->r[12] = 0x101D0000u;
|
|
/* 022C0080 */ cpu->r[12] = cpu->r[12] + 0x000001ACu;
|
|
/* 022C0084 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0084 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022C0084 */ if (_t2) goto L_022C0088; else goto L_022C00A0;
|
|
L_022C0088: ; // 0x22c0088
|
|
/* 022C0088 */ cpu->r[0] = 0x10060000u;
|
|
/* 022C008C */ cpu->r[9] = 0x00000001u;
|
|
/* 022C0090 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022C0094 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 022C0098 */ _t3 = cpu->r[8] + 0x000001B0u;
|
|
/* 022C0098 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 022C009C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 022C009C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_022C00A0: ; // 0x22c00a0
|
|
/* 022C00A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022C00A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C00A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022C00A4 */ if (_t6) goto L_022C00A8; else goto L_022C00B0;
|
|
L_022C00A8: ; // 0x22c00a8
|
|
/* 022C00A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022C00AC */ return;
|
|
L_022C00B0: ; // 0x22c00b0
|
|
/* 022C00B0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022C00B4 */ _t7 = cpu->r[11] + 0xFFFFDA38u;
|
|
/* 022C00B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C00B4 */ cpu->r[11] = _t7;
|
|
/* 022C00B8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022C00BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022C00C0 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFE8u;
|
|
/* 022C00C4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C00C4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C00C4 */ if (_t9) goto L_022C00C8; else goto L_022C00DC;
|
|
L_022C00C8: ; // 0x22c00c8
|
|
/* 022C00C8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C00CC */ cpu->r[9] = 0x00000001u;
|
|
/* 022C00D0 */ cpu->r[12] = cpu->r[12] + 0x000041B8u;
|
|
/* 022C00D4 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 022C00D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 022C00D8 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 022C00D8 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_022C00DC: ; // 0x22c00dc
|
|
/* 022C00DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 022C00E0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C00E0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C00E0 */ if (_t13) goto L_022C00E4; else goto L_022C00EC;
|
|
L_022C00E4: ; // 0x22c00e4
|
|
/* 022C00E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022C00E8 */ goto L_022C0124;
|
|
L_022C00EC: ; // 0x22c00ec
|
|
/* 022C00EC */ cpu->r[8] = 0x101D0000u;
|
|
/* 022C00F0 */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 022C00F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022C00F0 */ cpu->r[8] = _t14;
|
|
/* 022C00F4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022C00F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022C00FC */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 022C0100 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0100 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022C0100 */ if (_t16) goto L_022C0104; else goto L_022C0118;
|
|
L_022C0104: ; // 0x22c0104
|
|
/* 022C0104 */ cpu->r[10] = 0x10060000u;
|
|
/* 022C0108 */ cpu->r[9] = 0x00000001u;
|
|
/* 022C010C */ cpu->r[10] = cpu->r[10] + 0x00004128u;
|
|
/* 022C0110 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 022C0110 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 022C0114 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022C0114 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_022C0118: ; // 0x22c0118
|
|
/* 022C0118 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 022C011C */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 022C0120 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022C0124: ; // 0x22c0124
|
|
/* 022C0124 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022C0128 */ return;
|
|
}
|
|
|
|
// fn_022C012C @ 0x22c012c
|
|
void Gambit_fn_022C012C(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_022C012C: ; // 0x22c012c
|
|
/* 022C012C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0130 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0130 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022C0130 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022C0130 */ goto L_022C0134;
|
|
L_022C0134: ; // 0x22c0134
|
|
/* 022C0134 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022C0134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022C0138 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0138 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022C0138 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022C0138 */ goto L_022C013C;
|
|
L_022C013C: ; // 0x22c013c
|
|
/* 022C013C */ 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_022C0140 @ 0x22c0140
|
|
void Gambit_fn_022C0140(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_022C0140: ; // 0x22c0140
|
|
/* 022C0140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0144 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0144 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022C0144 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022C0144 */ goto L_022C0148;
|
|
L_022C0148: ; // 0x22c0148
|
|
/* 022C0148 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022C0148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022C014C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C014C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022C014C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022C014C */ goto L_022C0150;
|
|
L_022C0150: ; // 0x22c0150
|
|
/* 022C0150 */ 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_022C0154 @ 0x22c0154
|
|
void Gambit_fn_022C0154(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022C0154: ; // 0x22c0154
|
|
/* 022C0154 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022C0158 */ _t0 = cpu->r[4] + cpu->r[0];
|
|
/* 022C0158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022C015C */ cpu->r[12] = cpu->r[4] + cpu->r[0];
|
|
/* 022C0160 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 022C0160 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 022C0164 */ _t2 = cpu->r[12] + 0x0000000Cu;
|
|
/* 022C0164 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022C0168 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 022C0168 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 022C016C */ _t4 = cpu->r[12] + 0x00000018u;
|
|
/* 022C016C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022C0170 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 022C0170 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022C0174 */ return;
|
|
}
|
|
|
|
// fn_022C0178 @ 0x22c0178
|
|
void Gambit_fn_022C0178(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104;
|
|
|
|
L_022C0178: ; // 0x22c0178
|
|
/* 022C0178 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022C0178 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0178 */ cpu->r[1] = _t0;
|
|
/* 022C017C */ /* nop */
|
|
/* 022C0180 */ cpu->r[0] = cpu->lr;
|
|
/* 022C0184 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022C0184 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022C0188 */ cpu->r[29] = cpu->r[6];
|
|
/* 022C018C */ cpu->r[28] = cpu->r[3];
|
|
/* 022C0190 */ cpu->r[30] = cpu->r[5];
|
|
/* 022C0194 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 022C0194 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022C0198 */ cpu->r[31] = 0x101D0000u;
|
|
/* 022C019C */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 022C019C */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 022C01A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022C01A4 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022C01A4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 022C01A8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C01A8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022C01A8 */ if (_t6) goto L_022C01EC; else goto L_022C01AC;
|
|
L_022C01AC: ; // 0x22c01ac
|
|
/* 022C01AC */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022C01AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C01B0 */ Gambit_fn_02826F20(cpu);
|
|
/* 022C01B4 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022C01B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022C01B8 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 022C01B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022C01BC */ cpu->ctr = cpu->r[0];
|
|
/* 022C01C0 */ cpu->r[5] = 0x00000004u;
|
|
/* 022C01C4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C01C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C01CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022C01D0 */ cpu->r[0] = cpu->r[27];
|
|
/* 022C01D4 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C01D4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022C01D4 */ if (_t11) goto L_022C01DC; else goto L_022C01D8;
|
|
L_022C01D8: ; // 0x22c01d8
|
|
/* 022C01D8 */ cpu->r[0] = 0x00000001u;
|
|
L_022C01DC: ; // 0x22c01dc
|
|
/* 022C01DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C01E0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C01E0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C01E0 */ if (_t13) goto L_022C01EC; else goto L_022C01E4;
|
|
L_022C01E4: ; // 0x22c01e4
|
|
/* 022C01E4 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 022C01E4 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 022C01E8 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 022C01E8 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_022C01EC: ; // 0x22c01ec
|
|
/* 022C01EC */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 022C01EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C01F0 */ cpu->r[0] = 0x00000000u;
|
|
/* 022C01F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022C01F8 */ cpu->r[12] = cpu->r[0];
|
|
/* 022C01FC */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C01FC */ _t18 = _t17 & 0x00000001u;
|
|
/* 022C01FC */ if (_t18) goto L_022C0200; else goto L_022C0224;
|
|
L_022C0200: ; // 0x22c0200
|
|
/* 022C0200 */ cpu->ctr = cpu->r[7];
|
|
/* 022C0204 */ cpu->r[10] = 0x00000000u;
|
|
L_022C0208: ; // 0x22c0208
|
|
/* 022C0208 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 022C0208 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022C020C */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 022C020C */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 022C0210 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 022C0214 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 022C0214 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 022C0218 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 022C021C */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 022C021C */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 022C0220 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022C0220 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022C0220 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 022C0220 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022C0220 */ if (_t25) goto L_022C0208; else goto L_022C0224;
|
|
L_022C0224: ; // 0x22c0224
|
|
/* 022C0224 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022C0224 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 022C0228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022C022C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C022C */ _t28 = _t27 & 0x00000001u;
|
|
/* 022C022C */ if (_t28) goto L_022C0270; else goto L_022C0230;
|
|
L_022C0230: ; // 0x22c0230
|
|
/* 022C0230 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022C0230 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022C0234 */ Gambit_fn_02826F20(cpu);
|
|
/* 022C0238 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022C0238 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022C023C */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 022C023C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022C0240 */ cpu->ctr = cpu->r[0];
|
|
/* 022C0244 */ cpu->r[5] = 0x00000004u;
|
|
/* 022C0248 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C024C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022C0254 */ cpu->r[11] = cpu->r[27];
|
|
/* 022C0258 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0258 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022C0258 */ if (_t33) goto L_022C0260; else goto L_022C025C;
|
|
L_022C025C: ; // 0x22c025c
|
|
/* 022C025C */ cpu->r[11] = 0x00000001u;
|
|
L_022C0260: ; // 0x22c0260
|
|
/* 022C0260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0264 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0264 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022C0264 */ if (_t35) goto L_022C0270; else goto L_022C0268;
|
|
L_022C0268: ; // 0x22c0268
|
|
/* 022C0268 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022C0268 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 022C026C */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 022C026C */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_022C0270: ; // 0x22c0270
|
|
/* 022C0270 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 022C0270 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022C0274 */ cpu->r[0] = 0x00000000u;
|
|
/* 022C0278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022C027C */ cpu->r[12] = cpu->r[0];
|
|
/* 022C0280 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0280 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022C0280 */ if (_t40) goto L_022C0284; else goto L_022C02A8;
|
|
L_022C0284: ; // 0x22c0284
|
|
/* 022C0284 */ cpu->ctr = cpu->r[6];
|
|
/* 022C0288 */ cpu->r[9] = 0x00000000u;
|
|
L_022C028C: ; // 0x22c028c
|
|
/* 022C028C */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022C028C */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022C0290 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 022C0290 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 022C0294 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 022C0298 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 022C0298 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 022C029C */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 022C02A0 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 022C02A0 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 022C02A4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022C02A4 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022C02A4 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 022C02A4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022C02A4 */ if (_t47) goto L_022C028C; else goto L_022C02A8;
|
|
L_022C02A8: ; // 0x22c02a8
|
|
/* 022C02A8 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022C02A8 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 022C02AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022C02B0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C02B0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022C02B0 */ if (_t50) goto L_022C02F4; else goto L_022C02B4;
|
|
L_022C02B4: ; // 0x22c02b4
|
|
/* 022C02B4 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022C02B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022C02B8 */ Gambit_fn_02826F20(cpu);
|
|
/* 022C02BC */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022C02BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022C02C0 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 022C02C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022C02C4 */ cpu->ctr = cpu->r[0];
|
|
/* 022C02C8 */ cpu->r[5] = 0x00000004u;
|
|
/* 022C02CC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C02D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C02D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022C02D8 */ cpu->r[10] = cpu->r[27];
|
|
/* 022C02DC */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C02DC */ _t55 = _t54 & 0x00000001u;
|
|
/* 022C02DC */ if (_t55) goto L_022C02E4; else goto L_022C02E0;
|
|
L_022C02E0: ; // 0x22c02e0
|
|
/* 022C02E0 */ cpu->r[10] = 0x00000001u;
|
|
L_022C02E4: ; // 0x22c02e4
|
|
/* 022C02E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C02E8 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C02E8 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022C02E8 */ if (_t57) goto L_022C02F4; else goto L_022C02EC;
|
|
L_022C02EC: ; // 0x22c02ec
|
|
/* 022C02EC */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 022C02EC */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 022C02F0 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 022C02F0 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_022C02F4: ; // 0x22c02f4
|
|
/* 022C02F4 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 022C02F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022C02F8 */ cpu->r[0] = 0x00000000u;
|
|
/* 022C02FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022C0300 */ cpu->r[5] = cpu->r[0];
|
|
/* 022C0304 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0304 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022C0304 */ if (_t62) goto L_022C0308; else goto L_022C032C;
|
|
L_022C0308: ; // 0x22c0308
|
|
/* 022C0308 */ cpu->ctr = cpu->r[12];
|
|
/* 022C030C */ cpu->r[8] = 0x00000000u;
|
|
L_022C0310: ; // 0x22c0310
|
|
/* 022C0310 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 022C0310 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022C0314 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 022C0314 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 022C0318 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 022C031C */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 022C031C */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 022C0320 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 022C0324 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 022C0324 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 022C0328 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022C0328 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022C0328 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 022C0328 */ _t69 = _t68 & 0x00000001u;
|
|
/* 022C0328 */ if (_t69) goto L_022C0310; else goto L_022C032C;
|
|
L_022C032C: ; // 0x22c032c
|
|
/* 022C032C */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 022C032C */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 022C0330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022C0334 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0334 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022C0334 */ if (_t72) goto L_022C0410; else goto L_022C0338;
|
|
L_022C0338: ; // 0x22c0338
|
|
/* 022C0338 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022C0338 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022C033C */ Gambit_fn_02826F20(cpu);
|
|
/* 022C0340 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022C0340 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022C0344 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 022C0344 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022C0348 */ cpu->ctr = cpu->r[12];
|
|
/* 022C034C */ cpu->r[5] = 0x00000004u;
|
|
/* 022C0350 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 022C0354 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0358 */ cpu->r[24] = cpu->r[3];
|
|
/* 022C035C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022C0360 */ cpu->r[30] = cpu->r[25];
|
|
/* 022C0364 */ cpu->r[7] = 0x00000000u;
|
|
/* 022C0368 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0368 */ _t77 = _t76 & 0x00000001u;
|
|
/* 022C0368 */ if (_t77) goto L_022C0370; else goto L_022C036C;
|
|
L_022C036C: ; // 0x22c036c
|
|
/* 022C036C */ cpu->r[30] = 0x00000001u;
|
|
L_022C0370: ; // 0x22c0370
|
|
/* 022C0370 */ cpu->r[31] = 0x10110000u;
|
|
/* 022C0374 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 022C0378 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 022C0378 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 022C037C */ cpu->r[23] = 0x00000018u;
|
|
L_022C0380: ; // 0x22c0380
|
|
/* 022C0380 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 022C0380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022C0384 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0384 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022C0384 */ if (_t80) goto L_022C03F4; else goto L_022C0388;
|
|
L_022C0388: ; // 0x22c0388
|
|
/* 022C0388 */ cpu->r[26] = cpu->r[27];
|
|
/* 022C0388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022C038C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C038C */ _t82 = _t81 & 0x00000001u;
|
|
/* 022C038C */ if (_t82) goto L_022C0390; else goto L_022C03A0;
|
|
L_022C0390: ; // 0x22c0390
|
|
/* 022C0390 */ cpu->r[3] = 0x00000024u;
|
|
/* 022C0394 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0398 */ cpu->r[26] = cpu->r[3];
|
|
/* 022C0398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022C039C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C039C */ _t84 = _t83 & 0x00000001u;
|
|
/* 022C039C */ if (_t84) goto L_022C03E8; else goto L_022C03A0;
|
|
L_022C03A0: ; // 0x22c03a0
|
|
/* 022C03A0 */ cpu->r[11] = cpu->r[26];
|
|
/* 022C03A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022C03A4 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C03A4 */ _t86 = _t85 & 0x00000001u;
|
|
/* 022C03A4 */ if (_t86) goto L_022C03A8; else goto L_022C03B8;
|
|
L_022C03A8: ; // 0x22c03a8
|
|
/* 022C03A8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022C03AC */ Gambit_fn_02801A78(cpu);
|
|
/* 022C03B0 */ cpu->r[11] = cpu->r[3];
|
|
/* 022C03B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022C03B4 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C03B4 */ _t88 = _t87 & 0x00000001u;
|
|
/* 022C03B4 */ if (_t88) goto L_022C03D4; else goto L_022C03B8;
|
|
L_022C03B8: ; // 0x22c03b8
|
|
/* 022C03B8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022C03BC */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 022C03BC */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 022C03C0 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 022C03C4 */ cpu->r[5] = cpu->r[5] + 0x00004150u;
|
|
/* 022C03C8 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 022C03C8 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 022C03CC */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 022C03CC */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 022C03D0 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 022C03D0 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_022C03D4: ; // 0x22c03d4
|
|
/* 022C03D4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022C03D8 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 022C03D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022C03DC */ cpu->r[6] = cpu->r[6] + 0x00004168u;
|
|
/* 022C03E0 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 022C03E0 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 022C03E4 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 022C03E4 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_022C03E8: ; // 0x22c03e8
|
|
/* 022C03E8 */ cpu->r[0] = 0x10060000u;
|
|
/* 022C03EC */ cpu->r[0] = cpu->r[0] + 0x00004180u;
|
|
/* 022C03F0 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 022C03F0 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_022C03F4: ; // 0x22c03f4
|
|
/* 022C03F4 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 022C03F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022C03F8 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 022C03FC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C03FC */ _t98 = _t97 & 0x00000001u;
|
|
/* 022C03FC */ if (_t98) goto L_022C0400; else goto L_022C0380;
|
|
L_022C0400: ; // 0x22c0400
|
|
/* 022C0400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 022C0404 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0404 */ _t100 = _t99 & 0x00000001u;
|
|
/* 022C0404 */ if (_t100) goto L_022C0410; else goto L_022C0408;
|
|
L_022C0408: ; // 0x22c0408
|
|
/* 022C0408 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 022C0408 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 022C040C */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 022C040C */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_022C0410: ; // 0x22c0410
|
|
/* 022C0410 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 022C0410 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 022C0414 */ /* nop */
|
|
/* 022C0418 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 022C0418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022C041C */ cpu->lr = cpu->r[0];
|
|
/* 022C0420 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022C0424 */ return;
|
|
}
|
|
|
|
// fn_022C0428 @ 0x22c0428
|
|
void Gambit_fn_022C0428(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_022C0428: ; // 0x22c0428
|
|
/* 022C0428 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 022C0428 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022C042C */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022C042C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022C0430 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022C0430 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022C0434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 022C0438 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 022C0438 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022C043C */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C043C */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C043C */ if (_t5) goto L_022C0440; else goto L_022C0448;
|
|
L_022C0440: ; // 0x22c0440
|
|
/* 022C0440 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C0444 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_022C0448: ; // 0x22c0448
|
|
/* 022C0448 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022C0448 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022C044C */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 022C044C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C0450 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 022C0450 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022C0454 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 022C0454 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 022C0458 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 022C0458 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C045C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 022C0460 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022C0460 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C0464 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C0464 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C0464 */ if (_t13) goto L_022C0468; else goto L_022C0470;
|
|
L_022C0468: ; // 0x22c0468
|
|
/* 022C0468 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C046C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_022C0470: ; // 0x22c0470
|
|
/* 022C0470 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 022C0470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022C0474 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 022C0474 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022C0478 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 022C0478 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C047C */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 022C047C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 022C0480 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 022C0480 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022C0484 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 022C0484 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 022C0488 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 022C0488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022C048C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 022C0490 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 022C0490 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022C0494 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C0494 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022C0494 */ if (_t23) goto L_022C0498; else goto L_022C04A0;
|
|
L_022C0498: ; // 0x22c0498
|
|
/* 022C0498 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C049C */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_022C04A0: ; // 0x22c04a0
|
|
/* 022C04A0 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 022C04A0 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 022C04A4 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 022C04A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022C04A8 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 022C04A8 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 022C04AC */ return;
|
|
}
|
|
|
|
// fn_022C04B0 @ 0x22c04b0
|
|
void Gambit_fn_022C04B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022C04B0: ; // 0x22c04b0
|
|
/* 022C04B0 */ cpu->r[0] = cpu->lr;
|
|
/* 022C04B4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022C04B8 */ cpu->r[7] = 0x022C0000u;
|
|
/* 022C04BC */ cpu->r[6] = 0x022C0000u;
|
|
/* 022C04C0 */ cpu->r[10] = 0x101C0000u;
|
|
/* 022C04C4 */ cpu->r[7] = cpu->r[7] + 0xFFFFFC98u;
|
|
/* 022C04C8 */ cpu->r[6] = cpu->r[6] + 0xFFFFFC98u;
|
|
/* 022C04CC */ cpu->r[10] = cpu->r[10] + 0x00005704u;
|
|
/* 022C04D0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022C04D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022C04D4 */ cpu->r[0] = 0x101C0000u;
|
|
/* 022C04D8 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C04D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022C04D8 */ cpu->r[1] = _t1;
|
|
/* 022C04DC */ cpu->r[0] = cpu->r[0] + 0x00005700u;
|
|
/* 022C04E0 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022C04E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022C04E4 */ cpu->r[8] = 0x00000000u;
|
|
/* 022C04E8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022C04E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022C04EC */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C04F0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C04F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022C04F4 */ Gambit_fn_02791B10(cpu);
|
|
/* 022C04F8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022C04F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022C04FC */ cpu->lr = cpu->r[0];
|
|
/* 022C0500 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C0504 */ return;
|
|
}
|
|
|
|
// fn_022C04D8 @ 0x22c04d8
|
|
void Gambit_fn_022C04D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022C04D8: ; // 0x22c04d8
|
|
/* 022C04D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C04D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C04D8 */ cpu->r[1] = _t0;
|
|
/* 022C04DC */ cpu->r[0] = cpu->r[0] + 0x00005700u;
|
|
/* 022C04E0 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022C04E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022C04E4 */ cpu->r[8] = 0x00000000u;
|
|
/* 022C04E8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022C04E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C04EC */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C04F0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C04F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 022C04F4 */ Gambit_fn_02791B10(cpu);
|
|
/* 022C04F8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022C04F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022C04FC */ cpu->lr = cpu->r[0];
|
|
/* 022C0500 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C0504 */ return;
|
|
}
|
|
|
|
// fn_022C0508 @ 0x22c0508
|
|
void Gambit_fn_022C0508(CPUState* 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_022C0508: ; // 0x22c0508
|
|
/* 022C0508 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022C0508 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022C050C */ /* nop */
|
|
/* 022C0510 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 022C0510 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022C0514 */ cpu->r[7] = cpu->r[0];
|
|
/* 022C0518 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 022C051C */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 022C051C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022C0520 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C0520 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022C0520 */ if (_t4) goto L_022C0524; else goto L_022C053C;
|
|
L_022C0524: ; // 0x22c0524
|
|
/* 022C0524 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C0528 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 022C052C */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022C052C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022C0530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022C0534 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0534 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022C0534 */ if (_t7) goto L_022C0538; else goto L_022C0548;
|
|
L_022C0538: ; // 0x22c0538
|
|
/* 022C0538 */ return;
|
|
L_022C053C: ; // 0x22c053c
|
|
/* 022C053C */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022C053C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022C0540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022C0544 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0544 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022C0544 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022C0544 */ goto L_022C0548;
|
|
L_022C0548: ; // 0x22c0548
|
|
/* 022C0548 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 022C054C */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022C054C */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C0550 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C0550 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C0550 */ if (_t13) goto L_022C0554; else goto L_022C055C;
|
|
L_022C0554: ; // 0x22c0554
|
|
/* 022C0554 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C0558 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022C055C: ; // 0x22c055c
|
|
/* 022C055C */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022C055C */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022C0560 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022C0560 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022C0564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022C0568 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022C0568 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C056C */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 022C0570 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C0570 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022C0570 */ if (_t18) goto L_022C0588; else goto L_022C0574;
|
|
L_022C0574: ; // 0x22c0574
|
|
/* 022C0574 */ /* nop */
|
|
/* 022C0578 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022C0578 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022C057C */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C0580 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 022C0584 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022C0584 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022C0588: ; // 0x22c0588
|
|
/* 022C0588 */ cpu->ctr = cpu->r[11];
|
|
/* 022C058C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022C0590 @ 0x22c0590
|
|
void Gambit_fn_022C0590(CPUState* 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_022C0590: ; // 0x22c0590
|
|
/* 022C0590 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022C0590 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022C0594 */ /* nop */
|
|
/* 022C0598 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022C0598 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022C059C */ cpu->r[8] = cpu->r[0];
|
|
/* 022C05A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 022C05A4 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022C05A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022C05A8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C05A8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022C05A8 */ if (_t4) goto L_022C05AC; else goto L_022C05C4;
|
|
L_022C05AC: ; // 0x22c05ac
|
|
/* 022C05AC */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C05B0 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 022C05B4 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022C05B4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022C05B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022C05BC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C05BC */ _t7 = _t6 & 0x00000001u;
|
|
/* 022C05BC */ if (_t7) goto L_022C05C0; else goto L_022C05D0;
|
|
L_022C05C0: ; // 0x22c05c0
|
|
/* 022C05C0 */ return;
|
|
L_022C05C4: ; // 0x22c05c4
|
|
/* 022C05C4 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022C05C4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022C05C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022C05CC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C05CC */ _t10 = _t9 & 0x00000001u;
|
|
/* 022C05CC */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022C05CC */ goto L_022C05D0;
|
|
L_022C05D0: ; // 0x22c05d0
|
|
/* 022C05D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 022C05D4 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022C05D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C05D8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C05D8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C05D8 */ if (_t13) goto L_022C05DC; else goto L_022C05E4;
|
|
L_022C05DC: ; // 0x22c05dc
|
|
/* 022C05DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C05E0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022C05E4: ; // 0x22c05e4
|
|
/* 022C05E4 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022C05E4 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022C05E8 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022C05E8 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022C05EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022C05F0 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022C05F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C05F4 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 022C05F8 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C05F8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022C05F8 */ if (_t18) goto L_022C0610; else goto L_022C05FC;
|
|
L_022C05FC: ; // 0x22c05fc
|
|
/* 022C05FC */ /* nop */
|
|
/* 022C0600 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022C0600 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022C0604 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C0608 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 022C060C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022C060C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022C0610: ; // 0x22c0610
|
|
/* 022C0610 */ cpu->ctr = cpu->r[11];
|
|
/* 022C0614 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022C0618 @ 0x22c0618
|
|
void Gambit_fn_022C0618(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022C0618: ; // 0x22c0618
|
|
/* 022C0618 */ cpu->r[0] = cpu->lr;
|
|
/* 022C061C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C061C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C061C */ cpu->r[1] = _t0;
|
|
/* 022C0620 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022C0620 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022C0624 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0624 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022C0628 */ cpu->r[30] = cpu->r[3];
|
|
/* 022C062C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022C062C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022C0630 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022C0630 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022C0634 */ /* nop */
|
|
/* 022C0638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 022C063C */ cpu->r[31] = cpu->r[4];
|
|
/* 022C0640 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0640 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022C0640 */ if (_t6) goto L_022C0644; else goto L_022C0658;
|
|
L_022C0644: ; // 0x22c0644
|
|
/* 022C0644 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 022C0644 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C0648 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 022C0648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022C064C */ cpu->ctr = cpu->r[0];
|
|
/* 022C0650 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C0654 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022C0658: ; // 0x22c0658
|
|
/* 022C0658 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C065C */ cpu->r[4] = cpu->r[31];
|
|
/* 022C0660 */ Gambit_fn_022C0508(cpu);
|
|
/* 022C0664 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C0668 */ /* nop */
|
|
/* 022C066C */ Gambit_fn_027FC35C(cpu);
|
|
/* 022C0670 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C0674 */ Gambit_fn_022C0590(cpu);
|
|
/* 022C0678 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0678 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022C067C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022C067C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C0680 */ cpu->lr = cpu->r[0];
|
|
/* 022C0684 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0684 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C0688 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C068C */ return;
|
|
}
|
|
|
|
// fn_022C061C @ 0x22c061c
|
|
void Gambit_fn_022C061C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022C061C: ; // 0x22c061c
|
|
/* 022C061C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C061C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C061C */ cpu->r[1] = _t0;
|
|
/* 022C0620 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022C0620 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022C0624 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0624 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022C0628 */ cpu->r[30] = cpu->r[3];
|
|
/* 022C062C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022C062C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022C0630 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022C0630 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022C0634 */ /* nop */
|
|
/* 022C0638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 022C063C */ cpu->r[31] = cpu->r[4];
|
|
/* 022C0640 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0640 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022C0640 */ if (_t6) goto L_022C0644; else goto L_022C0658;
|
|
L_022C0644: ; // 0x22c0644
|
|
/* 022C0644 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 022C0644 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C0648 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 022C0648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022C064C */ cpu->ctr = cpu->r[0];
|
|
/* 022C0650 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C0654 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022C0658: ; // 0x22c0658
|
|
/* 022C0658 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C065C */ cpu->r[4] = cpu->r[31];
|
|
/* 022C0660 */ Gambit_fn_022C0508(cpu);
|
|
/* 022C0664 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C0668 */ /* nop */
|
|
/* 022C066C */ Gambit_fn_027FC35C(cpu);
|
|
/* 022C0670 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C0674 */ Gambit_fn_022C0590(cpu);
|
|
/* 022C0678 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0678 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022C067C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022C067C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C0680 */ cpu->lr = cpu->r[0];
|
|
/* 022C0684 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0684 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C0688 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C068C */ return;
|
|
}
|
|
|
|
// fn_022C0690 @ 0x22c0690
|
|
void Gambit_fn_022C0690(CPUState* 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_022C0690: ; // 0x22c0690
|
|
/* 022C0690 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022C0690 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022C0694 */ /* nop */
|
|
/* 022C0698 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 022C0698 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022C069C */ cpu->r[8] = cpu->r[0];
|
|
/* 022C06A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 022C06A4 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022C06A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022C06A8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C06A8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022C06A8 */ if (_t4) goto L_022C06AC; else goto L_022C06C4;
|
|
L_022C06AC: ; // 0x22c06ac
|
|
/* 022C06AC */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C06B0 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 022C06B4 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022C06B4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022C06B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022C06BC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C06BC */ _t7 = _t6 & 0x00000001u;
|
|
/* 022C06BC */ if (_t7) goto L_022C06C0; else goto L_022C06D0;
|
|
L_022C06C0: ; // 0x22c06c0
|
|
/* 022C06C0 */ return;
|
|
L_022C06C4: ; // 0x22c06c4
|
|
/* 022C06C4 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022C06C4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022C06C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022C06CC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C06CC */ _t10 = _t9 & 0x00000001u;
|
|
/* 022C06CC */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022C06CC */ goto L_022C06D0;
|
|
L_022C06D0: ; // 0x22c06d0
|
|
/* 022C06D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 022C06D4 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022C06D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C06D8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C06D8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C06D8 */ if (_t13) goto L_022C06DC; else goto L_022C06E4;
|
|
L_022C06DC: ; // 0x22c06dc
|
|
/* 022C06DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C06E0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022C06E4: ; // 0x22c06e4
|
|
/* 022C06E4 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022C06E4 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022C06E8 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022C06E8 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022C06EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022C06F0 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022C06F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C06F4 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 022C06F8 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C06F8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022C06F8 */ if (_t18) goto L_022C0710; else goto L_022C06FC;
|
|
L_022C06FC: ; // 0x22c06fc
|
|
/* 022C06FC */ /* nop */
|
|
/* 022C0700 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022C0700 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022C0704 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022C0708 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 022C070C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022C070C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022C0710: ; // 0x22c0710
|
|
/* 022C0710 */ cpu->ctr = cpu->r[11];
|
|
/* 022C0714 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022C0718 @ 0x22c0718
|
|
void Gambit_fn_022C0718(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022C0718: ; // 0x22c0718
|
|
/* 022C0718 */ cpu->r[0] = cpu->lr;
|
|
/* 022C071C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C071C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C071C */ cpu->r[1] = _t0;
|
|
/* 022C0720 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0720 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C0724 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C0728 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0728 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C072C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022C072C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C0730 */ cpu->r[12] = 0x00000000u;
|
|
/* 022C0734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022C0738 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022C0738 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022C073C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C073C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022C073C */ if (_t6) goto L_022C0764; else goto L_022C0740;
|
|
L_022C0740: ; // 0x22c0740
|
|
/* 022C0740 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022C0740 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022C0744 */ /* nop */
|
|
/* 022C0748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022C074C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C074C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C074C */ if (_t9) goto L_022C0750; else goto L_022C0764;
|
|
L_022C0750: ; // 0x22c0750
|
|
/* 022C0750 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022C0750 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C0754 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022C0754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C0758 */ cpu->ctr = cpu->r[0];
|
|
/* 022C075C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0760 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022C0764: ; // 0x22c0764
|
|
/* 022C0764 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0768 */ Gambit_fn_022C0690(cpu);
|
|
/* 022C076C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0770 */ Gambit_fn_027FC37C(cpu);
|
|
/* 022C0774 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022C0778 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0778 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022C077C */ cpu->lr = cpu->r[0];
|
|
/* 022C0780 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C0784 */ return;
|
|
}
|
|
|
|
// fn_022C071C @ 0x22c071c
|
|
void Gambit_fn_022C071C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022C071C: ; // 0x22c071c
|
|
/* 022C071C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C071C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C071C */ cpu->r[1] = _t0;
|
|
/* 022C0720 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0720 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C0724 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C0728 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0728 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C072C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022C072C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C0730 */ cpu->r[12] = 0x00000000u;
|
|
/* 022C0734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022C0738 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022C0738 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022C073C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C073C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022C073C */ if (_t6) goto L_022C0764; else goto L_022C0740;
|
|
L_022C0740: ; // 0x22c0740
|
|
/* 022C0740 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022C0740 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022C0744 */ /* nop */
|
|
/* 022C0748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022C074C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C074C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C074C */ if (_t9) goto L_022C0750; else goto L_022C0764;
|
|
L_022C0750: ; // 0x22c0750
|
|
/* 022C0750 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022C0750 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C0754 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022C0754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C0758 */ cpu->ctr = cpu->r[0];
|
|
/* 022C075C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0760 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022C0764: ; // 0x22c0764
|
|
/* 022C0764 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0768 */ Gambit_fn_022C0690(cpu);
|
|
/* 022C076C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0770 */ Gambit_fn_027FC37C(cpu);
|
|
/* 022C0774 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022C0778 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0778 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022C077C */ cpu->lr = cpu->r[0];
|
|
/* 022C0780 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C0784 */ return;
|
|
}
|
|
|
|
// fn_022C0788 @ 0x22c0788
|
|
void Gambit_fn_022C0788(CPUState* cpu) {
|
|
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_022C0788: ; // 0x22c0788
|
|
/* 022C0788 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022C0788 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0788 */ cpu->r[1] = _t0;
|
|
/* 022C078C */ cpu->r[0] = cpu->lr;
|
|
/* 022C0790 */ /* nop */
|
|
/* 022C0794 */ cpu->r[30] = cpu->r[5];
|
|
/* 022C0798 */ cpu->r[26] = cpu->r[3];
|
|
/* 022C079C */ cpu->r[27] = cpu->r[7];
|
|
/* 022C07A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C07A4 */ cpu->r[31] = cpu->r[6];
|
|
/* 022C07A8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C07A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022C07AC */ cpu->r[29] = cpu->r[4];
|
|
/* 022C07B0 */ cpu->r[4] = cpu->r[27];
|
|
/* 022C07B4 */ Gambit_fn_027DB318(cpu);
|
|
/* 022C07B8 */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 022C07B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022C07BC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C07BC */ _t3 = _t2 & 0x00000001u;
|
|
/* 022C07BC */ if (_t3) goto L_022C0850; else goto L_022C07C0;
|
|
L_022C07C0: ; // 0x22c07c0
|
|
/* 022C07C0 */ cpu->r[5] = cpu->r[28];
|
|
/* 022C07C4 */ cpu->r[4] = cpu->r[29];
|
|
/* 022C07C8 */ cpu->r[3] = cpu->r[26];
|
|
/* 022C07CC */ Gambit_fn_022C04B0(cpu);
|
|
/* 022C07D0 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022C07D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022C07D4 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 022C07D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022C07D8 */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 022C07DC */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022C07E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022C07E4 */ cpu->r[25] = 0x00000000u;
|
|
/* 022C07E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C07E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022C07E8 */ if (_t7) goto L_022C0850; else goto L_022C07EC;
|
|
L_022C07EC: ; // 0x22c07ec
|
|
/* 022C07EC */ cpu->r[24] = 0x101C0000u;
|
|
L_022C07F0: ; // 0x22c07f0
|
|
/* 022C07F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022C07F4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C07F4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C07F4 */ if (_t9) goto L_022C080C; else goto L_022C07F8;
|
|
L_022C07F8: ; // 0x22c07f8
|
|
/* 022C07F8 */ cpu->ctr = cpu->r[27];
|
|
/* 022C07FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022C0800 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0808 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0808 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022C0808 */ if (_t11) goto L_022C083C; else goto L_022C080C;
|
|
L_022C080C: ; // 0x22c080c
|
|
/* 022C080C */ _t12 = cpu->r[24] + 0x00005700u;
|
|
/* 022C080C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022C0810 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 022C0814 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 022C0814 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022C0818 */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 022C0818 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022C081C */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022C0820 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 022C0820 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022C0824 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022C0828 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 022C0828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C082C */ cpu->r[4] = cpu->r[31];
|
|
/* 022C0830 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 022C0830 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022C0834 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 022C0838 */ Gambit_fn_022711B8(cpu);
|
|
L_022C083C: ; // 0x22c083c
|
|
/* 022C083C */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 022C0840 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 022C0840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022C0844 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022C0848 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022C084C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C084C */ _t20 = _t19 & 0x00000001u;
|
|
/* 022C084C */ if (_t20) goto L_022C0850; else goto L_022C07F0;
|
|
L_022C0850: ; // 0x22c0850
|
|
/* 022C0850 */ cpu->r[3] = cpu->r[28];
|
|
/* 022C0854 */ /* nop */
|
|
/* 022C0858 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C0858 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022C085C */ cpu->lr = cpu->r[0];
|
|
/* 022C0860 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022C0864 */ return;
|
|
}
|
|
|
|
// fn_022C0868 @ 0x22c0868
|
|
void Gambit_fn_022C0868(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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;
|
|
|
|
L_022C0868: ; // 0x22c0868
|
|
/* 022C0868 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022C0868 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0868 */ cpu->r[1] = _t0;
|
|
/* 022C086C */ cpu->r[0] = cpu->lr;
|
|
/* 022C0870 */ /* nop */
|
|
/* 022C0874 */ cpu->r[28] = cpu->r[3];
|
|
/* 022C0874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022C0878 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022C0878 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022C087C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C087C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022C087C */ if (_t3) goto L_022C0880; else goto L_022C0890;
|
|
L_022C0880: ; // 0x22c0880
|
|
/* 022C0880 */ cpu->r[3] = 0x000001CCu;
|
|
/* 022C0884 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0888 */ cpu->r[28] = cpu->r[3];
|
|
/* 022C0888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022C088C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C088C */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C088C */ if (_t5) goto L_022C0E50; else goto L_022C0890;
|
|
L_022C0890: ; // 0x22c0890
|
|
/* 022C0890 */ cpu->r[3] = cpu->r[28];
|
|
/* 022C0894 */ Gambit_fn_0226EA1C(cpu);
|
|
/* 022C0898 */ cpu->r[7] = 0x10060000u;
|
|
/* 022C089C */ cpu->r[31] = cpu->r[28] + 0x00000184u;
|
|
/* 022C089C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C08A0 */ cpu->r[7] = cpu->r[7] + 0x00004D90u;
|
|
/* 022C08A4 */ cpu->r[27] = 0x00000000u;
|
|
/* 022C08A8 */ _t6 = cpu->r[28] + 0x00000004u;
|
|
/* 022C08A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[7]);
|
|
/* 022C08AC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C08AC */ _t8 = _t7 & 0x00000001u;
|
|
/* 022C08AC */ if (_t8) goto L_022C08B0; else goto L_022C08C0;
|
|
L_022C08B0: ; // 0x22c08b0
|
|
/* 022C08B0 */ cpu->r[3] = 0x00000038u;
|
|
/* 022C08B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C08B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C08B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C08BC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C08BC */ _t10 = _t9 & 0x00000001u;
|
|
/* 022C08BC */ if (_t10) goto L_022C08F0; else goto L_022C08C0;
|
|
L_022C08C0: ; // 0x22c08c0
|
|
/* 022C08C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C08C4 */ Gambit_fn_027FC29C(cpu);
|
|
/* 022C08C8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022C08CC */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 022C08CC */ rbrew_write32(cpu->mem, _t11, cpu->r[27]);
|
|
/* 022C08D0 */ cpu->r[9] = cpu->r[9] + 0x000051C8u;
|
|
/* 022C08D4 */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 022C08D4 */ rbrew_write32(cpu->mem, _t12, cpu->r[27]);
|
|
/* 022C08D8 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 022C08D8 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 022C08DC */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 022C08DC */ rbrew_write32(cpu->mem, _t14, cpu->r[27]);
|
|
/* 022C08E0 */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 022C08E0 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 022C08E4 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022C08E4 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 022C08E8 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022C08E8 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 022C08EC */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 022C08EC */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
L_022C08F0: ; // 0x22c08f0
|
|
/* 022C08F0 */ _t19 = cpu->r[28] + 0x000001BCu;
|
|
/* 022C08F0 */ rbrew_write32(cpu->mem, _t19, cpu->r[27]);
|
|
/* 022C08F4 */ cpu->r[8] = 0x10060000u;
|
|
/* 022C08F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022C08FC */ _t20 = cpu->r[8] + 0x00004CA8u;
|
|
/* 022C08FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022C0900 */ _t21 = cpu->r[28] + 0x000001C0u;
|
|
/* 022C0900 */ rbrew_write32(cpu->mem, _t21, cpu->r[27]);
|
|
/* 022C0904 */ cpu->r[0] = 0x00000005u;
|
|
/* 022C0908 */ _t22 = cpu->r[28] + 0x000001C8u;
|
|
/* 022C0908 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 022C090C */ cpu->r[6] = 0x00000000u;
|
|
/* 022C0910 */ _t23 = cpu->r[28] + 0x000001C4u;
|
|
/* 022C0910 */ rbrew_write32(cpu->mem, _t23, cpu->r[27]);
|
|
/* 022C0914 */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022C0918 */ cpu->r[4] = cpu->r[28];
|
|
/* 022C091C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022C091C */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[0]);
|
|
/* 022C0920 */ Gambit_fn_022C1E90(cpu);
|
|
/* 022C0924 */ cpu->r[3] = cpu->r[28];
|
|
/* 022C0928 */ cpu->r[4] = cpu->r[28] + 0x00000184u;
|
|
/* 022C092C */ Gambit_fn_02000834(cpu);
|
|
/* 022C0930 */ cpu->r[26] = 0x10060000u;
|
|
/* 022C0934 */ cpu->r[8] = 0x10060000u;
|
|
/* 022C0938 */ cpu->r[25] = 0x022C0000u;
|
|
/* 022C093C */ cpu->r[8] = cpu->r[8] + 0x00004CC8u;
|
|
/* 022C0940 */ cpu->r[25] = cpu->r[25] + 0x00001884u;
|
|
/* 022C0944 */ cpu->r[26] = cpu->r[26] + 0x00004AECu;
|
|
/* 022C0948 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0948 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 022C094C */ cpu->ctr = cpu->r[25];
|
|
/* 022C0950 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0950 */ rbrew_write32(cpu->mem, _t26, cpu->r[26]);
|
|
/* 022C0954 */ _t27 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022C0954 */ cpu->r[24] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022C0958 */ _t28 = cpu->r[24] + 0x00000000u;
|
|
/* 022C0958 */ cpu->r[29] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022C095C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0960 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0964 */ cpu->r[30] = 0x10110000u;
|
|
/* 022C0968 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0968 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022C096C */ _t30 = cpu->r[30] + 0x00007399u;
|
|
/* 022C096C */ cpu->r[30] = rbrew_read8(cpu->mem, _t30);
|
|
/* 022C0970 */ _t31 = cpu->r[11] + 0x00000000u;
|
|
/* 022C0970 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 022C0974 */ cpu->r[31] = 0x00000000u;
|
|
/* 022C0978 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 022C097C */ cpu->r[0] = 0x00080000u;
|
|
/* 022C0980 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0980 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022C0980 */ if (_t33) goto L_022C09A8; else goto L_022C0984;
|
|
L_022C0984: ; // 0x22c0984
|
|
/* 022C0984 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022C0988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 022C098C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 022C0990 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0990 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022C0990 */ if (_t35) goto L_022C09A4; else goto L_022C0994;
|
|
L_022C0994: ; // 0x22c0994
|
|
/* 022C0994 */ _t36 = cpu->r[11] + 0x00000000u;
|
|
/* 022C0994 */ cpu->r[12] = rbrew_read8(cpu->mem, _t36);
|
|
/* 022C0998 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]);
|
|
/* 022C099C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C099C */ _t38 = _t37 & 0x00000001u;
|
|
/* 022C099C */ if (_t38) goto L_022C09A0; else goto L_022C0984;
|
|
L_022C09A0: ; // 0x22c09a0
|
|
/* 022C09A0 */ goto L_022C09A8;
|
|
L_022C09A4: ; // 0x22c09a4
|
|
/* 022C09A4 */ cpu->r[31] = 0x00000000u;
|
|
L_022C09A8: ; // 0x22c09a8
|
|
/* 022C09A8 */ _t39 = cpu->r[24] + 0x00000008u;
|
|
/* 022C09A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022C09AC */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 022C09AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022C09B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022C09B4 */ _t41 = cpu->r[6] + 0x00000014u;
|
|
/* 022C09B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022C09B8 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C09B8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022C09B8 */ if (_t43) goto L_022C09C0; else goto L_022C09BC;
|
|
L_022C09BC: ; // 0x22c09bc
|
|
/* 022C09BC */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_022C09C0: ; // 0x22c09c0
|
|
/* 022C09C0 */ cpu->ctr = cpu->r[7];
|
|
/* 022C09C4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C09C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C09CC */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C09CC */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022C09D0 */ cpu->r[6] = 0x00000000u;
|
|
/* 022C09D4 */ cpu->r[5] = cpu->r[31];
|
|
/* 022C09D8 */ cpu->r[3] = cpu->r[29];
|
|
/* 022C09DC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022C09E0 */ _t45 = cpu->r[29] + cpu->r[31];
|
|
/* 022C09E0 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[30]);
|
|
/* 022C09E4 */ cpu->r[11] = 0x022C0000u;
|
|
/* 022C09E8 */ _t46 = cpu->r[1] + 0x00000028u;
|
|
/* 022C09E8 */ rbrew_write32(cpu->mem, _t46, cpu->r[27]);
|
|
/* 022C09EC */ cpu->r[11] = cpu->r[11] + 0x00001650u;
|
|
/* 022C09F0 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 022C09F0 */ rbrew_write16(cpu->mem, _t47, (uint16_t)cpu->r[27]);
|
|
/* 022C09F4 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022C09F8 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 022C09F8 */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 022C09FC */ cpu->r[10] = 0x00000000u;
|
|
/* 022C0A00 */ _t49 = cpu->r[1] + 0x00000016u;
|
|
/* 022C0A00 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[0]);
|
|
/* 022C0A04 */ cpu->r[9] = 0x022C0000u;
|
|
/* 022C0A08 */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0A08 */ rbrew_write16(cpu->mem, _t50, (uint16_t)cpu->r[27]);
|
|
/* 022C0A0C */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 022C0A10 */ cpu->r[9] = cpu->r[9] + 0x0000163Cu;
|
|
/* 022C0A14 */ _t51 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022C0A14 */ rbrew_write16(cpu->mem, _t51, (uint16_t)cpu->r[5]);
|
|
/* 022C0A18 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0A1C */ _t52 = cpu->r[1] + 0x00000018u;
|
|
/* 022C0A1C */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
/* 022C0A20 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022C0A24 */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 022C0A24 */ rbrew_write16(cpu->mem, _t53, (uint16_t)cpu->r[27]);
|
|
/* 022C0A28 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022C0A2C */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022C0A30 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 022C0A30 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[10]);
|
|
/* 022C0A34 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022C0A38 */ _t55 = cpu->r[1] + 0x00000026u;
|
|
/* 022C0A38 */ rbrew_write16(cpu->mem, _t55, (uint16_t)cpu->r[27]);
|
|
/* 022C0A3C */ Gambit_fn_022C2140(cpu);
|
|
/* 022C0A40 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C0A44 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0A44 */ rbrew_write32(cpu->mem, _t56, cpu->r[26]);
|
|
/* 022C0A48 */ cpu->r[12] = cpu->r[12] + 0x00004CD8u;
|
|
/* 022C0A4C */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0A4C */ rbrew_write32(cpu->mem, _t57, cpu->r[12]);
|
|
/* 022C0A50 */ _t58 = cpu->r[28] + 0x00000198u;
|
|
/* 022C0A50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022C0A54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022C0A58 */ _t59 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022C0A58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022C0A5C */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0A5C */ _t61 = _t60 & 0x00000001u;
|
|
/* 022C0A5C */ if (_t61) goto L_022C0A60; else goto L_022C0A64;
|
|
L_022C0A60: ; // 0x22c0a60
|
|
/* 022C0A60 */ cpu->r[29] = cpu->r[29] + 0x00000024u;
|
|
L_022C0A64: ; // 0x22c0a64
|
|
/* 022C0A64 */ cpu->ctr = cpu->r[25];
|
|
/* 022C0A68 */ _t62 = cpu->r[29] + 0x00000000u;
|
|
/* 022C0A68 */ cpu->r[24] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022C0A6C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0A70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0A74 */ _t63 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0A74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022C0A78 */ _t64 = cpu->r[7] + 0x00000000u;
|
|
/* 022C0A78 */ cpu->r[5] = rbrew_read8(cpu->mem, _t64);
|
|
/* 022C0A7C */ cpu->r[31] = 0x00000000u;
|
|
/* 022C0A80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022C0A84 */ cpu->r[9] = 0x00080000u;
|
|
/* 022C0A88 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0A88 */ _t66 = _t65 & 0x00000001u;
|
|
/* 022C0A88 */ if (_t66) goto L_022C0AB0; else goto L_022C0A8C;
|
|
L_022C0A8C: ; // 0x22c0a8c
|
|
/* 022C0A8C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022C0A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022C0A94 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 022C0A98 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0A98 */ _t68 = _t67 & 0x00000001u;
|
|
/* 022C0A98 */ if (_t68) goto L_022C0AAC; else goto L_022C0A9C;
|
|
L_022C0A9C: ; // 0x22c0a9c
|
|
/* 022C0A9C */ _t69 = cpu->r[7] + 0x00000000u;
|
|
/* 022C0A9C */ cpu->r[6] = rbrew_read8(cpu->mem, _t69);
|
|
/* 022C0AA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022C0AA4 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0AA4 */ _t71 = _t70 & 0x00000001u;
|
|
/* 022C0AA4 */ if (_t71) goto L_022C0AA8; else goto L_022C0A8C;
|
|
L_022C0AA8: ; // 0x22c0aa8
|
|
/* 022C0AA8 */ goto L_022C0AB0;
|
|
L_022C0AAC: ; // 0x22c0aac
|
|
/* 022C0AAC */ cpu->r[31] = 0x00000000u;
|
|
L_022C0AB0: ; // 0x22c0ab0
|
|
/* 022C0AB0 */ _t72 = cpu->r[29] + 0x00000008u;
|
|
/* 022C0AB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022C0AB4 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0AB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022C0AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 022C0ABC */ _t74 = cpu->r[8] + 0x00000014u;
|
|
/* 022C0ABC */ cpu->r[9] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022C0AC0 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C0AC0 */ _t76 = _t75 & 0x00000001u;
|
|
/* 022C0AC0 */ if (_t76) goto L_022C0AC8; else goto L_022C0AC4;
|
|
L_022C0AC4: ; // 0x22c0ac4
|
|
/* 022C0AC4 */ cpu->r[31] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_022C0AC8: ; // 0x22c0ac8
|
|
/* 022C0AC8 */ cpu->ctr = cpu->r[9];
|
|
/* 022C0ACC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0AD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0AD4 */ _t77 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0AD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022C0AD8 */ cpu->r[6] = 0x00000000u;
|
|
/* 022C0ADC */ cpu->r[5] = cpu->r[31];
|
|
/* 022C0AE0 */ cpu->r[3] = cpu->r[24];
|
|
/* 022C0AE4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022C0AE8 */ _t78 = cpu->r[24] + cpu->r[31];
|
|
/* 022C0AE8 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[30]);
|
|
/* 022C0AEC */ cpu->r[0] = 0x00000001u;
|
|
/* 022C0AF0 */ _t79 = cpu->r[1] + 0x00000026u;
|
|
/* 022C0AF0 */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[27]);
|
|
/* 022C0AF4 */ cpu->r[12] = 0x022C0000u;
|
|
/* 022C0AF8 */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 022C0AF8 */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[0]);
|
|
/* 022C0AFC */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 022C0B00 */ _t81 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0B00 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[27]);
|
|
/* 022C0B04 */ cpu->r[8] = 0x022C0000u;
|
|
/* 022C0B08 */ _t82 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022C0B08 */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[6]);
|
|
/* 022C0B0C */ _t83 = cpu->r[1] + 0x00000024u;
|
|
/* 022C0B0C */ rbrew_write16(cpu->mem, _t83, (uint16_t)cpu->r[27]);
|
|
/* 022C0B10 */ cpu->r[12] = cpu->r[12] + 0x00001670u;
|
|
/* 022C0B14 */ _t84 = cpu->r[1] + 0x00000016u;
|
|
/* 022C0B14 */ rbrew_write16(cpu->mem, _t84, (uint16_t)cpu->r[6]);
|
|
/* 022C0B18 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022C0B1C */ cpu->r[8] = cpu->r[8] + 0x00001D3Cu;
|
|
/* 022C0B20 */ _t85 = cpu->r[1] + 0x00000020u;
|
|
/* 022C0B20 */ rbrew_write32(cpu->mem, _t85, cpu->r[12]);
|
|
/* 022C0B24 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022C0B28 */ _t86 = cpu->r[1] + 0x00000018u;
|
|
/* 022C0B28 */ rbrew_write32(cpu->mem, _t86, cpu->r[8]);
|
|
/* 022C0B2C */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022C0B30 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0B34 */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0B34 */ rbrew_write16(cpu->mem, _t87, (uint16_t)cpu->r[27]);
|
|
/* 022C0B38 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022C0B3C */ _t88 = cpu->r[1] + 0x00000028u;
|
|
/* 022C0B3C */ rbrew_write32(cpu->mem, _t88, cpu->r[27]);
|
|
/* 022C0B40 */ Gambit_fn_022C2140(cpu);
|
|
/* 022C0B44 */ cpu->r[10] = 0x10060000u;
|
|
/* 022C0B48 */ _t89 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0B48 */ rbrew_write32(cpu->mem, _t89, cpu->r[26]);
|
|
/* 022C0B4C */ cpu->r[10] = cpu->r[10] + 0x00004CB8u;
|
|
/* 022C0B50 */ _t90 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0B50 */ rbrew_write32(cpu->mem, _t90, cpu->r[10]);
|
|
/* 022C0B54 */ _t91 = cpu->r[28] + 0x00000198u;
|
|
/* 022C0B54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t91);
|
|
/* 022C0B58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000002u);
|
|
/* 022C0B5C */ _t92 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022C0B5C */ cpu->r[29] = rbrew_read32(cpu->mem, _t92);
|
|
/* 022C0B60 */ _t93 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0B60 */ _t94 = _t93 & 0x00000001u;
|
|
/* 022C0B60 */ if (_t94) goto L_022C0B64; else goto L_022C0B68;
|
|
L_022C0B64: ; // 0x22c0b64
|
|
/* 022C0B64 */ cpu->r[29] = cpu->r[29] + 0x00000048u;
|
|
L_022C0B68: ; // 0x22c0b68
|
|
/* 022C0B68 */ cpu->ctr = cpu->r[25];
|
|
/* 022C0B6C */ _t95 = cpu->r[29] + 0x00000000u;
|
|
/* 022C0B6C */ cpu->r[24] = rbrew_read32(cpu->mem, _t95);
|
|
/* 022C0B70 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0B74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0B78 */ _t96 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0B78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t96);
|
|
/* 022C0B7C */ _t97 = cpu->r[12] + 0x00000000u;
|
|
/* 022C0B7C */ cpu->r[5] = rbrew_read8(cpu->mem, _t97);
|
|
/* 022C0B80 */ cpu->r[31] = 0x00000000u;
|
|
/* 022C0B84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022C0B88 */ cpu->r[0] = 0x00080000u;
|
|
/* 022C0B8C */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0B8C */ _t99 = _t98 & 0x00000001u;
|
|
/* 022C0B8C */ if (_t99) goto L_022C0BB4; else goto L_022C0B90;
|
|
L_022C0B90: ; // 0x22c0b90
|
|
/* 022C0B90 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022C0B94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 022C0B98 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022C0B9C */ _t100 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0B9C */ _t101 = _t100 & 0x00000001u;
|
|
/* 022C0B9C */ if (_t101) goto L_022C0BB0; else goto L_022C0BA0;
|
|
L_022C0BA0: ; // 0x22c0ba0
|
|
/* 022C0BA0 */ _t102 = cpu->r[12] + 0x00000000u;
|
|
/* 022C0BA0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t102);
|
|
/* 022C0BA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022C0BA8 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0BA8 */ _t104 = _t103 & 0x00000001u;
|
|
/* 022C0BA8 */ if (_t104) goto L_022C0BAC; else goto L_022C0B90;
|
|
L_022C0BAC: ; // 0x22c0bac
|
|
/* 022C0BAC */ goto L_022C0BB4;
|
|
L_022C0BB0: ; // 0x22c0bb0
|
|
/* 022C0BB0 */ cpu->r[31] = 0x00000000u;
|
|
L_022C0BB4: ; // 0x22c0bb4
|
|
/* 022C0BB4 */ _t105 = cpu->r[29] + 0x00000008u;
|
|
/* 022C0BB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t105);
|
|
/* 022C0BB8 */ _t106 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0BB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022C0BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 022C0BC0 */ _t107 = cpu->r[8] + 0x00000014u;
|
|
/* 022C0BC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022C0BC4 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C0BC4 */ _t109 = _t108 & 0x00000001u;
|
|
/* 022C0BC4 */ if (_t109) goto L_022C0BCC; else goto L_022C0BC8;
|
|
L_022C0BC8: ; // 0x22c0bc8
|
|
/* 022C0BC8 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_022C0BCC: ; // 0x22c0bcc
|
|
/* 022C0BCC */ cpu->ctr = cpu->r[10];
|
|
/* 022C0BD0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0BD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0BD8 */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0BD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t110);
|
|
/* 022C0BDC */ cpu->r[6] = 0x00000000u;
|
|
/* 022C0BE0 */ cpu->r[5] = cpu->r[31];
|
|
/* 022C0BE4 */ cpu->r[3] = cpu->r[24];
|
|
/* 022C0BE8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022C0BEC */ _t111 = cpu->r[24] + cpu->r[31];
|
|
/* 022C0BEC */ rbrew_write8(cpu->mem, _t111, (uint8_t)cpu->r[30]);
|
|
/* 022C0BF0 */ cpu->r[6] = 0x022C0000u;
|
|
/* 022C0BF4 */ _t112 = cpu->r[1] + 0x00000024u;
|
|
/* 022C0BF4 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[27]);
|
|
/* 022C0BF8 */ cpu->r[6] = cpu->r[6] + 0x00001D44u;
|
|
/* 022C0BFC */ cpu->r[12] = 0x022C0000u;
|
|
/* 022C0C00 */ _t113 = cpu->r[1] + 0x00000026u;
|
|
/* 022C0C00 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[27]);
|
|
/* 022C0C04 */ cpu->r[12] = cpu->r[12] + 0x00001D40u;
|
|
/* 022C0C08 */ _t114 = cpu->r[1] + 0x00000018u;
|
|
/* 022C0C08 */ rbrew_write32(cpu->mem, _t114, cpu->r[6]);
|
|
/* 022C0C0C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 022C0C10 */ _t115 = cpu->r[1] + 0x00000028u;
|
|
/* 022C0C10 */ rbrew_write32(cpu->mem, _t115, cpu->r[27]);
|
|
/* 022C0C14 */ cpu->r[8] = 0x00000002u;
|
|
/* 022C0C18 */ _t116 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0C18 */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[27]);
|
|
/* 022C0C1C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022C0C20 */ _t117 = cpu->r[1] + 0x00000008u;
|
|
/* 022C0C20 */ rbrew_write8(cpu->mem, _t117, (uint8_t)cpu->r[8]);
|
|
/* 022C0C24 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022C0C28 */ _t118 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0C28 */ rbrew_write16(cpu->mem, _t118, (uint16_t)cpu->r[27]);
|
|
/* 022C0C2C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022C0C30 */ _t119 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022C0C30 */ rbrew_write16(cpu->mem, _t119, (uint16_t)cpu->r[11]);
|
|
/* 022C0C34 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0C38 */ _t120 = cpu->r[1] + 0x00000020u;
|
|
/* 022C0C38 */ rbrew_write32(cpu->mem, _t120, cpu->r[12]);
|
|
/* 022C0C3C */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022C0C40 */ _t121 = cpu->r[1] + 0x00000016u;
|
|
/* 022C0C40 */ rbrew_write16(cpu->mem, _t121, (uint16_t)cpu->r[11]);
|
|
/* 022C0C44 */ Gambit_fn_022C2140(cpu);
|
|
/* 022C0C48 */ cpu->r[8] = 0x10060000u;
|
|
/* 022C0C4C */ _t122 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0C4C */ rbrew_write32(cpu->mem, _t122, cpu->r[26]);
|
|
/* 022C0C50 */ cpu->r[8] = cpu->r[8] + 0x00004CE8u;
|
|
/* 022C0C54 */ _t123 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0C54 */ rbrew_write32(cpu->mem, _t123, cpu->r[8]);
|
|
/* 022C0C58 */ _t124 = cpu->r[28] + 0x00000198u;
|
|
/* 022C0C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t124);
|
|
/* 022C0C5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 022C0C60 */ _t125 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022C0C60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t125);
|
|
/* 022C0C64 */ _t126 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0C64 */ _t127 = _t126 & 0x00000001u;
|
|
/* 022C0C64 */ if (_t127) goto L_022C0C68; else goto L_022C0C6C;
|
|
L_022C0C68: ; // 0x22c0c68
|
|
/* 022C0C68 */ cpu->r[31] = cpu->r[31] + 0x0000006Cu;
|
|
L_022C0C6C: ; // 0x22c0c6c
|
|
/* 022C0C6C */ cpu->ctr = cpu->r[25];
|
|
/* 022C0C70 */ _t128 = cpu->r[31] + 0x00000000u;
|
|
/* 022C0C70 */ cpu->r[24] = rbrew_read32(cpu->mem, _t128);
|
|
/* 022C0C74 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0C78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0C7C */ _t129 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0C7C */ cpu->r[6] = rbrew_read32(cpu->mem, _t129);
|
|
/* 022C0C80 */ _t130 = cpu->r[6] + 0x00000000u;
|
|
/* 022C0C80 */ cpu->r[5] = rbrew_read8(cpu->mem, _t130);
|
|
/* 022C0C84 */ cpu->r[9] = 0x00080000u;
|
|
/* 022C0C88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 022C0C8C */ cpu->r[29] = 0x00000000u;
|
|
/* 022C0C90 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0C90 */ _t132 = _t131 & 0x00000001u;
|
|
/* 022C0C90 */ if (_t132) goto L_022C0CB8; else goto L_022C0C94;
|
|
L_022C0C94: ; // 0x22c0c94
|
|
/* 022C0C94 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 022C0C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]);
|
|
/* 022C0C9C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 022C0CA0 */ _t133 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0CA0 */ _t134 = _t133 & 0x00000001u;
|
|
/* 022C0CA0 */ if (_t134) goto L_022C0CB4; else goto L_022C0CA4;
|
|
L_022C0CA4: ; // 0x22c0ca4
|
|
/* 022C0CA4 */ _t135 = cpu->r[6] + 0x00000000u;
|
|
/* 022C0CA4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t135);
|
|
/* 022C0CA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 022C0CAC */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0CAC */ _t137 = _t136 & 0x00000001u;
|
|
/* 022C0CAC */ if (_t137) goto L_022C0CB0; else goto L_022C0C94;
|
|
L_022C0CB0: ; // 0x22c0cb0
|
|
/* 022C0CB0 */ goto L_022C0CB8;
|
|
L_022C0CB4: ; // 0x22c0cb4
|
|
/* 022C0CB4 */ cpu->r[29] = 0x00000000u;
|
|
L_022C0CB8: ; // 0x22c0cb8
|
|
/* 022C0CB8 */ _t138 = cpu->r[31] + 0x00000008u;
|
|
/* 022C0CB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t138);
|
|
/* 022C0CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[6]);
|
|
/* 022C0CC0 */ _t139 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C0CC0 */ _t140 = _t139 & 0x00000001u;
|
|
/* 022C0CC0 */ if (_t140) goto L_022C0CC8; else goto L_022C0CC4;
|
|
L_022C0CC4: ; // 0x22c0cc4
|
|
/* 022C0CC4 */ cpu->r[29] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_022C0CC8: ; // 0x22c0cc8
|
|
/* 022C0CC8 */ _t141 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0CC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t141);
|
|
/* 022C0CCC */ _t142 = cpu->r[9] + 0x00000014u;
|
|
/* 022C0CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
/* 022C0CD0 */ cpu->ctr = cpu->r[0];
|
|
/* 022C0CD4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0CD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0CDC */ _t143 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0CDC */ cpu->r[4] = rbrew_read32(cpu->mem, _t143);
|
|
/* 022C0CE0 */ cpu->r[6] = 0x00000000u;
|
|
/* 022C0CE4 */ cpu->r[5] = cpu->r[29];
|
|
/* 022C0CE8 */ cpu->r[3] = cpu->r[24];
|
|
/* 022C0CEC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022C0CF0 */ _t144 = cpu->r[24] + cpu->r[29];
|
|
/* 022C0CF0 */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[30]);
|
|
/* 022C0CF4 */ cpu->r[0] = 0x00000003u;
|
|
/* 022C0CF8 */ _t145 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0CF8 */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[27]);
|
|
/* 022C0CFC */ cpu->r[8] = 0x022C0000u;
|
|
/* 022C0D00 */ _t146 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0D00 */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[27]);
|
|
/* 022C0D04 */ cpu->r[8] = cpu->r[8] + 0x00001D48u;
|
|
/* 022C0D08 */ _t147 = cpu->r[1] + 0x00000024u;
|
|
/* 022C0D08 */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[27]);
|
|
/* 022C0D0C */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022C0D10 */ _t148 = cpu->r[1] + 0x00000028u;
|
|
/* 022C0D10 */ rbrew_write32(cpu->mem, _t148, cpu->r[27]);
|
|
/* 022C0D14 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022C0D18 */ _t149 = cpu->r[1] + 0x00000008u;
|
|
/* 022C0D18 */ rbrew_write8(cpu->mem, _t149, (uint8_t)cpu->r[0]);
|
|
/* 022C0D1C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022C0D20 */ _t150 = cpu->r[1] + 0x00000018u;
|
|
/* 022C0D20 */ rbrew_write32(cpu->mem, _t150, cpu->r[8]);
|
|
/* 022C0D24 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022C0D28 */ _t151 = cpu->r[1] + 0x00000016u;
|
|
/* 022C0D28 */ rbrew_write16(cpu->mem, _t151, (uint16_t)cpu->r[0]);
|
|
/* 022C0D2C */ cpu->r[11] = 0x022C0000u;
|
|
/* 022C0D30 */ _t152 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022C0D30 */ rbrew_write16(cpu->mem, _t152, (uint16_t)cpu->r[0]);
|
|
/* 022C0D34 */ cpu->r[11] = cpu->r[11] + 0x00001684u;
|
|
/* 022C0D38 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022C0D3C */ _t153 = cpu->r[1] + 0x00000026u;
|
|
/* 022C0D3C */ rbrew_write16(cpu->mem, _t153, (uint16_t)cpu->r[27]);
|
|
/* 022C0D40 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0D44 */ _t154 = cpu->r[1] + 0x00000020u;
|
|
/* 022C0D44 */ rbrew_write32(cpu->mem, _t154, cpu->r[11]);
|
|
/* 022C0D48 */ Gambit_fn_022C2140(cpu);
|
|
/* 022C0D4C */ cpu->r[9] = 0x10060000u;
|
|
/* 022C0D50 */ _t155 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0D50 */ rbrew_write32(cpu->mem, _t155, cpu->r[26]);
|
|
/* 022C0D54 */ cpu->r[9] = cpu->r[9] + 0x00004CACu;
|
|
/* 022C0D58 */ _t156 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0D58 */ rbrew_write32(cpu->mem, _t156, cpu->r[9]);
|
|
/* 022C0D5C */ _t157 = cpu->r[28] + 0x00000198u;
|
|
/* 022C0D5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t157);
|
|
/* 022C0D60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000004u);
|
|
/* 022C0D64 */ _t158 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022C0D64 */ cpu->r[29] = rbrew_read32(cpu->mem, _t158);
|
|
/* 022C0D68 */ _t159 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0D68 */ _t160 = _t159 & 0x00000001u;
|
|
/* 022C0D68 */ if (_t160) goto L_022C0D6C; else goto L_022C0D70;
|
|
L_022C0D6C: ; // 0x22c0d6c
|
|
/* 022C0D6C */ cpu->r[29] = cpu->r[29] + 0x00000090u;
|
|
L_022C0D70: ; // 0x22c0d70
|
|
/* 022C0D70 */ cpu->ctr = cpu->r[25];
|
|
/* 022C0D74 */ _t161 = cpu->r[29] + 0x00000000u;
|
|
/* 022C0D74 */ cpu->r[26] = rbrew_read32(cpu->mem, _t161);
|
|
/* 022C0D78 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0D7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0D80 */ _t162 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0D80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t162);
|
|
/* 022C0D84 */ _t163 = cpu->r[10] + 0x00000000u;
|
|
/* 022C0D84 */ cpu->r[11] = rbrew_read8(cpu->mem, _t163);
|
|
/* 022C0D88 */ cpu->r[31] = 0x00000000u;
|
|
/* 022C0D8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 022C0D90 */ cpu->r[0] = 0x00080000u;
|
|
/* 022C0D94 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0D94 */ _t165 = _t164 & 0x00000001u;
|
|
/* 022C0D94 */ if (_t165) goto L_022C0DBC; else goto L_022C0D98;
|
|
L_022C0D98: ; // 0x22c0d98
|
|
/* 022C0D98 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022C0D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 022C0DA0 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 022C0DA4 */ _t166 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C0DA4 */ _t167 = _t166 & 0x00000001u;
|
|
/* 022C0DA4 */ if (_t167) goto L_022C0DB8; else goto L_022C0DA8;
|
|
L_022C0DA8: ; // 0x22c0da8
|
|
/* 022C0DA8 */ _t168 = cpu->r[10] + 0x00000000u;
|
|
/* 022C0DA8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t168);
|
|
/* 022C0DAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 022C0DB0 */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0DB0 */ _t170 = _t169 & 0x00000001u;
|
|
/* 022C0DB0 */ if (_t170) goto L_022C0DB4; else goto L_022C0D98;
|
|
L_022C0DB4: ; // 0x22c0db4
|
|
/* 022C0DB4 */ goto L_022C0DBC;
|
|
L_022C0DB8: ; // 0x22c0db8
|
|
/* 022C0DB8 */ cpu->r[31] = 0x00000000u;
|
|
L_022C0DBC: ; // 0x22c0dbc
|
|
/* 022C0DBC */ _t171 = cpu->r[29] + 0x00000008u;
|
|
/* 022C0DBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t171);
|
|
/* 022C0DC0 */ _t172 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0DC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t172);
|
|
/* 022C0DC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 022C0DC8 */ _t173 = cpu->r[10] + 0x00000014u;
|
|
/* 022C0DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t173);
|
|
/* 022C0DCC */ _t174 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C0DCC */ _t175 = _t174 & 0x00000001u;
|
|
/* 022C0DCC */ if (_t175) goto L_022C0DD4; else goto L_022C0DD0;
|
|
L_022C0DD0: ; // 0x22c0dd0
|
|
/* 022C0DD0 */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_022C0DD4: ; // 0x22c0dd4
|
|
/* 022C0DD4 */ cpu->ctr = cpu->r[0];
|
|
/* 022C0DD8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0DDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C0DE0 */ _t176 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0DE0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t176);
|
|
/* 022C0DE4 */ cpu->r[3] = cpu->r[26];
|
|
/* 022C0DE8 */ cpu->r[5] = cpu->r[31];
|
|
/* 022C0DEC */ cpu->r[6] = 0x00000000u;
|
|
/* 022C0DF0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022C0DF4 */ _t177 = cpu->r[26] + cpu->r[31];
|
|
/* 022C0DF4 */ rbrew_write8(cpu->mem, _t177, (uint8_t)cpu->r[30]);
|
|
/* 022C0DF8 */ cpu->r[10] = 0x00000004u;
|
|
/* 022C0DFC */ _t178 = cpu->r[1] + 0x00000028u;
|
|
/* 022C0DFC */ rbrew_write32(cpu->mem, _t178, cpu->r[27]);
|
|
/* 022C0E00 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 022C0E04 */ _t179 = cpu->r[1] + 0x00000008u;
|
|
/* 022C0E04 */ rbrew_write8(cpu->mem, _t179, (uint8_t)cpu->r[10]);
|
|
/* 022C0E08 */ cpu->r[12] = 0x022C0000u;
|
|
/* 022C0E0C */ _t180 = cpu->r[1] + 0x00000026u;
|
|
/* 022C0E0C */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[27]);
|
|
/* 022C0E10 */ cpu->r[12] = cpu->r[12] + 0x00001698u;
|
|
/* 022C0E14 */ _t181 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0E14 */ rbrew_write16(cpu->mem, _t181, (uint16_t)cpu->r[27]);
|
|
/* 022C0E18 */ cpu->r[0] = 0x022C0000u;
|
|
/* 022C0E1C */ _t182 = cpu->r[1] + 0x00000020u;
|
|
/* 022C0E1C */ rbrew_write32(cpu->mem, _t182, cpu->r[12]);
|
|
/* 022C0E20 */ cpu->r[0] = cpu->r[0] + 0x00001D4Cu;
|
|
/* 022C0E24 */ _t183 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0E24 */ rbrew_write16(cpu->mem, _t183, (uint16_t)cpu->r[27]);
|
|
/* 022C0E28 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0E2C */ _t184 = cpu->r[1] + 0x00000016u;
|
|
/* 022C0E2C */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[8]);
|
|
/* 022C0E30 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022C0E34 */ _t185 = cpu->r[1] + 0x00000018u;
|
|
/* 022C0E34 */ rbrew_write32(cpu->mem, _t185, cpu->r[0]);
|
|
/* 022C0E38 */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022C0E3C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022C0E40 */ _t186 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022C0E40 */ rbrew_write16(cpu->mem, _t186, (uint16_t)cpu->r[8]);
|
|
/* 022C0E44 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022C0E48 */ _t187 = cpu->r[1] + 0x00000024u;
|
|
/* 022C0E48 */ rbrew_write16(cpu->mem, _t187, (uint16_t)cpu->r[27]);
|
|
/* 022C0E4C */ Gambit_fn_022C2140(cpu);
|
|
L_022C0E50: ; // 0x22c0e50
|
|
/* 022C0E50 */ cpu->r[3] = cpu->r[28];
|
|
/* 022C0E54 */ /* nop */
|
|
/* 022C0E58 */ _t188 = cpu->r[1] + 0x00000054u;
|
|
/* 022C0E58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t188);
|
|
/* 022C0E5C */ cpu->lr = cpu->r[0];
|
|
/* 022C0E60 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022C0E64 */ return;
|
|
}
|
|
|
|
// fn_022C0E68 @ 0x22c0e68
|
|
void Gambit_fn_022C0E68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_022C0E68: ; // 0x22c0e68
|
|
/* 022C0E68 */ cpu->r[0] = cpu->lr;
|
|
/* 022C0E6C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022C0E6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0E6C */ cpu->r[1] = _t0;
|
|
/* 022C0E70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0E70 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022C0E74 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0E74 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022C0E78 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0E78 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022C0E7C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0E7C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022C0E80 */ cpu->r[29] = cpu->r[3];
|
|
/* 022C0E84 */ cpu->r[3] = 0x00000030u;
|
|
/* 022C0E88 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0E90 */ cpu->r[0] = cpu->r[3];
|
|
/* 022C0E94 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0E94 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022C0E94 */ if (_t6) goto L_022C0EA0; else goto L_022C0E98;
|
|
L_022C0E98: ; // 0x22c0e98
|
|
/* 022C0E98 */ Gambit_fn_02246868(cpu);
|
|
/* 022C0E9C */ cpu->r[0] = cpu->r[3];
|
|
L_022C0EA0: ; // 0x22c0ea0
|
|
/* 022C0EA0 */ cpu->r[3] = 0x00000010u;
|
|
/* 022C0EA4 */ _t7 = cpu->r[29] + 0x000001BCu;
|
|
/* 022C0EA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022C0EA8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0EAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0EB0 */ cpu->r[30] = 0x00000000u;
|
|
/* 022C0EB4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0EB4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C0EB4 */ if (_t9) goto L_022C0F14; else goto L_022C0EB8;
|
|
L_022C0EB8: ; // 0x22c0eb8
|
|
/* 022C0EB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C0EB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C0EBC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0EBC */ _t11 = _t10 & 0x00000001u;
|
|
/* 022C0EBC */ if (_t11) goto L_022C0EC0; else goto L_022C0ED0;
|
|
L_022C0EC0: ; // 0x22c0ec0
|
|
/* 022C0EC0 */ cpu->r[3] = 0x00000008u;
|
|
/* 022C0EC4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0EC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0ECC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0ECC */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C0ECC */ if (_t13) goto L_022C0EE0; else goto L_022C0ED0;
|
|
L_022C0ED0: ; // 0x22c0ed0
|
|
/* 022C0ED0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022C0ED4 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 022C0ED4 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 022C0ED8 */ cpu->r[10] = cpu->r[10] + 0x00004B1Cu;
|
|
/* 022C0EDC */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 022C0EDC */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
L_022C0EE0: ; // 0x22c0ee0
|
|
/* 022C0EE0 */ cpu->r[0] = 0x10060000u;
|
|
/* 022C0EE4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C0EE8 */ _t16 = cpu->r[31] + 0x00000008u;
|
|
/* 022C0EE8 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 022C0EEC */ cpu->r[0] = cpu->r[0] + 0x00004B7Cu;
|
|
/* 022C0EF0 */ _t17 = cpu->r[12] + 0x00004CA8u;
|
|
/* 022C0EF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022C0EF4 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 022C0EF4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022C0EF8 */ _t19 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022C0EF8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022C0EFC */ cpu->r[3] = 0x000000A0u;
|
|
/* 022C0F00 */ _t20 = cpu->r[29] + 0x000001C0u;
|
|
/* 022C0F00 */ rbrew_write32(cpu->mem, _t20, cpu->r[31]);
|
|
/* 022C0F04 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0F08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0F0C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0F0C */ _t22 = _t21 & 0x00000001u;
|
|
/* 022C0F0C */ if (_t22) goto L_022C0F30; else goto L_022C0F10;
|
|
L_022C0F10: ; // 0x22c0f10
|
|
/* 022C0F10 */ goto L_022C0F2C;
|
|
L_022C0F14: ; // 0x22c0f14
|
|
/* 022C0F14 */ cpu->r[31] = 0x00000000u;
|
|
/* 022C0F18 */ cpu->r[3] = 0x000000A0u;
|
|
/* 022C0F1C */ _t23 = cpu->r[29] + 0x000001C0u;
|
|
/* 022C0F1C */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 022C0F20 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0F28 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0F28 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022C0F28 */ if (_t25) goto L_022C0F30; else goto L_022C0F2C;
|
|
L_022C0F2C: ; // 0x22c0f2c
|
|
/* 022C0F2C */ Gambit_fn_023AFBAC(cpu);
|
|
L_022C0F30: ; // 0x22c0f30
|
|
/* 022C0F30 */ _t26 = cpu->r[29] + 0x0000005Cu;
|
|
/* 022C0F30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022C0F34 */ _t27 = cpu->r[29] + 0x000001C4u;
|
|
/* 022C0F34 */ rbrew_write32(cpu->mem, _t27, cpu->r[3]);
|
|
/* 022C0F38 */ Gambit_fn_023B0294(cpu);
|
|
/* 022C0F3C */ _t28 = cpu->r[29] + 0x000001C4u;
|
|
/* 022C0F3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022C0F40 */ Gambit_fn_023B054C(cpu);
|
|
/* 022C0F44 */ _t29 = cpu->r[29] + 0x00000070u;
|
|
/* 022C0F44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022C0F48 */ _t30 = cpu->r[9] + 0x00000010u;
|
|
/* 022C0F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022C0F4C */ cpu->r[0] = cpu->r[0] | 0x00000003u;
|
|
/* 022C0F50 */ _t31 = cpu->r[9] + 0x00000010u;
|
|
/* 022C0F50 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 022C0F54 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0F54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022C0F58 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0F58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022C0F5C */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0F5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022C0F60 */ cpu->lr = cpu->r[0];
|
|
/* 022C0F64 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0F64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022C0F68 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022C0F6C */ return;
|
|
}
|
|
|
|
// fn_022C0E6C @ 0x22c0e6c
|
|
void Gambit_fn_022C0E6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_022C0E6C: ; // 0x22c0e6c
|
|
/* 022C0E6C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022C0E6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0E6C */ cpu->r[1] = _t0;
|
|
/* 022C0E70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0E70 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022C0E74 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0E74 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022C0E78 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0E78 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022C0E7C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0E7C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022C0E80 */ cpu->r[29] = cpu->r[3];
|
|
/* 022C0E84 */ cpu->r[3] = 0x00000030u;
|
|
/* 022C0E88 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0E90 */ cpu->r[0] = cpu->r[3];
|
|
/* 022C0E94 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0E94 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022C0E94 */ if (_t6) goto L_022C0EA0; else goto L_022C0E98;
|
|
L_022C0E98: ; // 0x22c0e98
|
|
/* 022C0E98 */ Gambit_fn_02246868(cpu);
|
|
/* 022C0E9C */ cpu->r[0] = cpu->r[3];
|
|
L_022C0EA0: ; // 0x22c0ea0
|
|
/* 022C0EA0 */ cpu->r[3] = 0x00000010u;
|
|
/* 022C0EA4 */ _t7 = cpu->r[29] + 0x000001BCu;
|
|
/* 022C0EA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022C0EA8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0EAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0EB0 */ cpu->r[30] = 0x00000000u;
|
|
/* 022C0EB4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0EB4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C0EB4 */ if (_t9) goto L_022C0F14; else goto L_022C0EB8;
|
|
L_022C0EB8: ; // 0x22c0eb8
|
|
/* 022C0EB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C0EB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C0EBC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0EBC */ _t11 = _t10 & 0x00000001u;
|
|
/* 022C0EBC */ if (_t11) goto L_022C0EC0; else goto L_022C0ED0;
|
|
L_022C0EC0: ; // 0x22c0ec0
|
|
/* 022C0EC0 */ cpu->r[3] = 0x00000008u;
|
|
/* 022C0EC4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0EC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0ECC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0ECC */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C0ECC */ if (_t13) goto L_022C0EE0; else goto L_022C0ED0;
|
|
L_022C0ED0: ; // 0x22c0ed0
|
|
/* 022C0ED0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022C0ED4 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 022C0ED4 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 022C0ED8 */ cpu->r[10] = cpu->r[10] + 0x00004B1Cu;
|
|
/* 022C0EDC */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 022C0EDC */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
L_022C0EE0: ; // 0x22c0ee0
|
|
/* 022C0EE0 */ cpu->r[0] = 0x10060000u;
|
|
/* 022C0EE4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C0EE8 */ _t16 = cpu->r[31] + 0x00000008u;
|
|
/* 022C0EE8 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 022C0EEC */ cpu->r[0] = cpu->r[0] + 0x00004B7Cu;
|
|
/* 022C0EF0 */ _t17 = cpu->r[12] + 0x00004CA8u;
|
|
/* 022C0EF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022C0EF4 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 022C0EF4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022C0EF8 */ _t19 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022C0EF8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022C0EFC */ cpu->r[3] = 0x000000A0u;
|
|
/* 022C0F00 */ _t20 = cpu->r[29] + 0x000001C0u;
|
|
/* 022C0F00 */ rbrew_write32(cpu->mem, _t20, cpu->r[31]);
|
|
/* 022C0F04 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0F08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0F0C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0F0C */ _t22 = _t21 & 0x00000001u;
|
|
/* 022C0F0C */ if (_t22) goto L_022C0F30; else goto L_022C0F10;
|
|
L_022C0F10: ; // 0x22c0f10
|
|
/* 022C0F10 */ goto L_022C0F2C;
|
|
L_022C0F14: ; // 0x22c0f14
|
|
/* 022C0F14 */ cpu->r[31] = 0x00000000u;
|
|
/* 022C0F18 */ cpu->r[3] = 0x000000A0u;
|
|
/* 022C0F1C */ _t23 = cpu->r[29] + 0x000001C0u;
|
|
/* 022C0F1C */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 022C0F20 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C0F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C0F28 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0F28 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022C0F28 */ if (_t25) goto L_022C0F30; else goto L_022C0F2C;
|
|
L_022C0F2C: ; // 0x22c0f2c
|
|
/* 022C0F2C */ Gambit_fn_023AFBAC(cpu);
|
|
L_022C0F30: ; // 0x22c0f30
|
|
/* 022C0F30 */ _t26 = cpu->r[29] + 0x0000005Cu;
|
|
/* 022C0F30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022C0F34 */ _t27 = cpu->r[29] + 0x000001C4u;
|
|
/* 022C0F34 */ rbrew_write32(cpu->mem, _t27, cpu->r[3]);
|
|
/* 022C0F38 */ Gambit_fn_023B0294(cpu);
|
|
/* 022C0F3C */ _t28 = cpu->r[29] + 0x000001C4u;
|
|
/* 022C0F3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022C0F40 */ Gambit_fn_023B054C(cpu);
|
|
/* 022C0F44 */ _t29 = cpu->r[29] + 0x00000070u;
|
|
/* 022C0F44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022C0F48 */ _t30 = cpu->r[9] + 0x00000010u;
|
|
/* 022C0F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022C0F4C */ cpu->r[0] = cpu->r[0] | 0x00000003u;
|
|
/* 022C0F50 */ _t31 = cpu->r[9] + 0x00000010u;
|
|
/* 022C0F50 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 022C0F54 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0F54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022C0F58 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0F58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022C0F5C */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0F5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022C0F60 */ cpu->lr = cpu->r[0];
|
|
/* 022C0F64 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0F64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022C0F68 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022C0F6C */ return;
|
|
}
|
|
|
|
// fn_022C0F70 @ 0x22c0f70
|
|
void Gambit_fn_022C0F70(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_022C0F70: ; // 0x22c0f70
|
|
/* 022C0F70 */ cpu->r[0] = cpu->lr;
|
|
/* 022C0F74 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C0F78 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022C0F78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0F78 */ cpu->r[1] = _t0;
|
|
/* 022C0F7C */ _t1 = cpu->r[12] + 0x00004CA8u;
|
|
/* 022C0F7C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022C0F80 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C0F80 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022C0F84 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 022C0F84 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 022C0F88 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0F88 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 022C0F8C */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 022C0F8C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022C0F90 */ cpu->r[0] = 0x00000000u;
|
|
/* 022C0F94 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0F94 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022C0F98 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022C0F98 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022C0F9C */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 022C0F9C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022C0FA0 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 022C0FA0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022C0FA4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022C0FA8 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0FA8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022C0FAC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022C0FB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C0FB4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0FB4 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 022C0FB8 */ Gambit_fn_02272EF4(cpu);
|
|
/* 022C0FBC */ _t12 = cpu->r[31] + 0x00000190u;
|
|
/* 022C0FBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 022C0FC0 */ /* nop */
|
|
/* 022C0FC4 */ _t13 = cpu->r[31] + 0x00000064u;
|
|
/* 022C0FC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022C0FC8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0FC8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022C0FC8 */ if (_t15) goto L_022C0FD8; else goto L_022C0FCC;
|
|
L_022C0FCC: ; // 0x22c0fcc
|
|
/* 022C0FCC */ cpu->r[12] = 0x10060000u;
|
|
/* 022C0FD0 */ _t16 = cpu->r[12] + 0x00004CF8u;
|
|
/* 022C0FD0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022C0FD4 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0FD4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
L_022C0FD8: ; // 0x22c0fd8
|
|
/* 022C0FD8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022C0FDC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022C0FE0 */ Gambit_fn_023B38B0(cpu);
|
|
/* 022C0FE4 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 022C0FE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022C0FE8 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C0FE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022C0FEC */ cpu->lr = cpu->r[0];
|
|
/* 022C0FF0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022C0FF4 */ return;
|
|
}
|
|
|
|
// fn_022C0F78 @ 0x22c0f78
|
|
void Gambit_fn_022C0F78(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_022C0F78: ; // 0x22c0f78
|
|
/* 022C0F78 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022C0F78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0F78 */ cpu->r[1] = _t0;
|
|
/* 022C0F7C */ _t1 = cpu->r[12] + 0x00004CA8u;
|
|
/* 022C0F7C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022C0F80 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C0F80 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022C0F84 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 022C0F84 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 022C0F88 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0F88 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 022C0F8C */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 022C0F8C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022C0F90 */ cpu->r[0] = 0x00000000u;
|
|
/* 022C0F94 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C0F94 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022C0F98 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022C0F98 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022C0F9C */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 022C0F9C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022C0FA0 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 022C0FA0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022C0FA4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022C0FA8 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C0FA8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022C0FAC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022C0FB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C0FB4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022C0FB4 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 022C0FB8 */ Gambit_fn_02272EF4(cpu);
|
|
/* 022C0FBC */ _t12 = cpu->r[31] + 0x00000190u;
|
|
/* 022C0FBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 022C0FC0 */ /* nop */
|
|
/* 022C0FC4 */ _t13 = cpu->r[31] + 0x00000064u;
|
|
/* 022C0FC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022C0FC8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C0FC8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022C0FC8 */ if (_t15) goto L_022C0FD8; else goto L_022C0FCC;
|
|
L_022C0FCC: ; // 0x22c0fcc
|
|
/* 022C0FCC */ cpu->r[12] = 0x10060000u;
|
|
/* 022C0FD0 */ _t16 = cpu->r[12] + 0x00004CF8u;
|
|
/* 022C0FD0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022C0FD4 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022C0FD4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
L_022C0FD8: ; // 0x22c0fd8
|
|
/* 022C0FD8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022C0FDC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022C0FE0 */ Gambit_fn_023B38B0(cpu);
|
|
/* 022C0FE4 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 022C0FE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022C0FE8 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C0FE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022C0FEC */ cpu->lr = cpu->r[0];
|
|
/* 022C0FF0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022C0FF4 */ return;
|
|
}
|
|
|
|
// fn_022C0FF8 @ 0x22c0ff8
|
|
void Gambit_fn_022C0FF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _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_022C0FF8: ; // 0x22c0ff8
|
|
/* 022C0FF8 */ cpu->r[0] = cpu->lr;
|
|
/* 022C0FFC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022C0FFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0FFC */ cpu->r[1] = _t0;
|
|
/* 022C1000 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022C1000 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022C1004 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 022C1004 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022C1008 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C1008 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022C100C */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 022C100C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022C1010 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C1010 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022C1014 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 022C1014 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022C1018 */ cpu->r[30] = cpu->r[3];
|
|
/* 022C101C */ _t7 = cpu->r[3] + 0x00000070u;
|
|
/* 022C101C */ cpu->r[28] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C1020 */ cpu->r[29] = cpu->r[12] + 0x00000430u;
|
|
/* 022C1024 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022C1028 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022C102C */ _t8 = cpu->r[10] + 0x000001B4u;
|
|
/* 022C102C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022C102C */ cpu->r[10] = _t8;
|
|
/* 022C1030 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022C1034 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C1038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022C103C */ cpu->r[4] = cpu->r[4] + 0x000001B8u;
|
|
/* 022C1040 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1040 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022C1040 */ if (_t10) goto L_022C1044; else goto L_022C1058;
|
|
L_022C1044: ; // 0x22c1044
|
|
/* 022C1044 */ cpu->r[7] = 0x10060000u;
|
|
/* 022C1048 */ cpu->r[0] = 0x00000001u;
|
|
/* 022C104C */ cpu->r[7] = cpu->r[7] + 0x00004BACu;
|
|
/* 022C1050 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 022C1050 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022C1054 */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 022C1054 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
L_022C1058: ; // 0x22c1058
|
|
/* 022C1058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C105C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C105C */ _t14 = _t13 & 0x00000001u;
|
|
/* 022C105C */ if (_t14) goto L_022C107C; else goto L_022C1060;
|
|
L_022C1060: ; // 0x22c1060
|
|
/* 022C1060 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 022C1060 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022C1064 */ _t16 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022C1064 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C1068 */ cpu->ctr = cpu->r[9];
|
|
/* 022C106C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1070 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C1074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1078 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1078 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022C1078 */ if (_t18) goto L_022C107C; else goto L_022C1080;
|
|
L_022C107C: ; // 0x22c107c
|
|
/* 022C107C */ cpu->r[31] = 0x00000000u;
|
|
L_022C1080: ; // 0x22c1080
|
|
/* 022C1080 */ _t19 = cpu->r[29] + 0x00000004u;
|
|
/* 022C1080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022C1084 */ cpu->ctr = cpu->r[0];
|
|
/* 022C1088 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C108C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C1090 */ _t20 = cpu->r[31] + 0x00000D44u;
|
|
/* 022C1090 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022C1094 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022C1094 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 022C1098 */ cpu->r[11] = cpu->r[30] + 0x00000140u;
|
|
/* 022C109C */ _t22 = cpu->r[30] + 0x000001C0u;
|
|
/* 022C109C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022C10A0 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C10A0 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 022C10A4 */ cpu->r[0] = cpu->r[28] + 0x000000A0u;
|
|
/* 022C10A8 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022C10A8 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 022C10AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022C10B0 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 022C10B0 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 022C10B4 */ Gambit_fn_02247510(cpu);
|
|
/* 022C10B8 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 022C10B8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022C10BC */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C10BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022C10C0 */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C10C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022C10C4 */ _t29 = cpu->r[1] + 0x00000020u;
|
|
/* 022C10C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022C10C8 */ cpu->lr = cpu->r[0];
|
|
/* 022C10CC */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 022C10CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022C10D0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022C10D4 */ return;
|
|
}
|
|
|
|
// fn_022C0FFC @ 0x22c0ffc
|
|
void Gambit_fn_022C0FFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _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_022C0FFC: ; // 0x22c0ffc
|
|
/* 022C0FFC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022C0FFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C0FFC */ cpu->r[1] = _t0;
|
|
/* 022C1000 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022C1000 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022C1004 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 022C1004 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022C1008 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C1008 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022C100C */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 022C100C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022C1010 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C1010 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022C1014 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 022C1014 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022C1018 */ cpu->r[30] = cpu->r[3];
|
|
/* 022C101C */ _t7 = cpu->r[3] + 0x00000070u;
|
|
/* 022C101C */ cpu->r[28] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C1020 */ cpu->r[29] = cpu->r[12] + 0x00000430u;
|
|
/* 022C1024 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022C1028 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022C102C */ _t8 = cpu->r[10] + 0x000001B4u;
|
|
/* 022C102C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022C102C */ cpu->r[10] = _t8;
|
|
/* 022C1030 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022C1034 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C1038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022C103C */ cpu->r[4] = cpu->r[4] + 0x000001B8u;
|
|
/* 022C1040 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1040 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022C1040 */ if (_t10) goto L_022C1044; else goto L_022C1058;
|
|
L_022C1044: ; // 0x22c1044
|
|
/* 022C1044 */ cpu->r[7] = 0x10060000u;
|
|
/* 022C1048 */ cpu->r[0] = 0x00000001u;
|
|
/* 022C104C */ cpu->r[7] = cpu->r[7] + 0x00004BACu;
|
|
/* 022C1050 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 022C1050 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022C1054 */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 022C1054 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
L_022C1058: ; // 0x22c1058
|
|
/* 022C1058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C105C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C105C */ _t14 = _t13 & 0x00000001u;
|
|
/* 022C105C */ if (_t14) goto L_022C107C; else goto L_022C1060;
|
|
L_022C1060: ; // 0x22c1060
|
|
/* 022C1060 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 022C1060 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022C1064 */ _t16 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022C1064 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C1068 */ cpu->ctr = cpu->r[9];
|
|
/* 022C106C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1070 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C1074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1078 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1078 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022C1078 */ if (_t18) goto L_022C107C; else goto L_022C1080;
|
|
L_022C107C: ; // 0x22c107c
|
|
/* 022C107C */ cpu->r[31] = 0x00000000u;
|
|
L_022C1080: ; // 0x22c1080
|
|
/* 022C1080 */ _t19 = cpu->r[29] + 0x00000004u;
|
|
/* 022C1080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022C1084 */ cpu->ctr = cpu->r[0];
|
|
/* 022C1088 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C108C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022C1090 */ _t20 = cpu->r[31] + 0x00000D44u;
|
|
/* 022C1090 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022C1094 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022C1094 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 022C1098 */ cpu->r[11] = cpu->r[30] + 0x00000140u;
|
|
/* 022C109C */ _t22 = cpu->r[30] + 0x000001C0u;
|
|
/* 022C109C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022C10A0 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C10A0 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 022C10A4 */ cpu->r[0] = cpu->r[28] + 0x000000A0u;
|
|
/* 022C10A8 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022C10A8 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 022C10AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022C10B0 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 022C10B0 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 022C10B4 */ Gambit_fn_02247510(cpu);
|
|
/* 022C10B8 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 022C10B8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022C10BC */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C10BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022C10C0 */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C10C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022C10C4 */ _t29 = cpu->r[1] + 0x00000020u;
|
|
/* 022C10C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022C10C8 */ cpu->lr = cpu->r[0];
|
|
/* 022C10CC */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 022C10CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022C10D0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022C10D4 */ return;
|
|
}
|
|
|
|
// fn_022C10D8 @ 0x22c10d8
|
|
void Gambit_fn_022C10D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_022C10D8: ; // 0x22c10d8
|
|
/* 022C10D8 */ cpu->r[0] = cpu->lr;
|
|
/* 022C10DC */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 022C10DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C10DC */ cpu->r[1] = _t0;
|
|
/* 022C10E0 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022C10E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C10E4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022C10E8 */ _t2 = cpu->r[11] + 0x00004CFCu;
|
|
/* 022C10E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022C10EC */ cpu->r[31] = cpu->r[3];
|
|
/* 022C10F0 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 022C10F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022C10F4 */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022C10F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022C10F8 */ /* nop */
|
|
/* 022C10FC */ /* nop */
|
|
/* 022C1100 */ /* nop */
|
|
/* 022C1104 */ _t5 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022C1104 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022C1108 */ /* nop */
|
|
/* 022C110C */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 022C110C */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022C1110 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 022C1110 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C1114 */ cpu->f[11] = cpu->f[10] * cpu->f[0];
|
|
/* 022C1118 */ _t8 = cpu->r[1] + 0x00000038u;
|
|
/* 022C1118 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022C111C */ _t9 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022C111C */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022C1120 */ /* nop */
|
|
/* 022C1124 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 022C1124 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[11]);
|
|
/* 022C1128 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 022C1128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C112C */ /* nop */
|
|
/* 022C1130 */ _t12 = cpu->r[31] + 0x00000148u;
|
|
/* 022C1130 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022C1134 */ /* nop */
|
|
/* 022C1138 */ _t13 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C1138 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022C113C */ _t14 = cpu->r[1] + 0x00000040u;
|
|
/* 022C113C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022C1140 */ _t15 = cpu->r[1] + 0x00000040u;
|
|
/* 022C1140 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022C1144 */ _t16 = cpu->r[1] + 0x00000030u;
|
|
/* 022C1144 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C1148 */ cpu->f[12] = cpu->f[0] + cpu->f[10];
|
|
/* 022C114C */ _t17 = cpu->r[1] + 0x00000044u;
|
|
/* 022C114C */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 022C1150 */ _t18 = cpu->r[1] + 0x00000048u;
|
|
/* 022C1150 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022C1154 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 022C1154 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 022C1158 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 022C1158 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022C115C */ _t21 = cpu->r[31] + 0x00000070u;
|
|
/* 022C115C */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022C1160 */ cpu->r[30] = cpu->r[31] + 0x00000140u;
|
|
/* 022C1164 */ _t22 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022C1164 */ rbrew_write32(cpu->mem, _t22, cpu->r[7]);
|
|
/* 022C1168 */ Gambit_fn_0231DF98(cpu);
|
|
/* 022C116C */ cpu->r[10] = cpu->r[1] + 0x00000044u;
|
|
/* 022C1170 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022C1170 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 022C1174 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C1178 */ _t24 = cpu->r[31] + 0x000001BCu;
|
|
/* 022C1178 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022C117C */ cpu->r[9] = 0x10060000u;
|
|
/* 022C1180 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 022C1180 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 022C1184 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1184 */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 022C1188 */ _t27 = cpu->r[9] + 0x00004D04u;
|
|
/* 022C1188 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022C118C */ _t28 = cpu->r[12] + 0x00004D00u;
|
|
/* 022C118C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022C1190 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 022C1190 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 022C1194 */ cpu->r[0] = 0x00000001u;
|
|
/* 022C1198 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1198 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 022C119C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022C11A0 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C11A0 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[0]);
|
|
/* 022C11A4 */ Gambit_fn_022471AC(cpu);
|
|
/* 022C11A8 */ _t32 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022C11A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022C11AC */ _t33 = cpu->r[1] + 0x00000050u;
|
|
/* 022C11AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022C11B0 */ cpu->lr = cpu->r[0];
|
|
/* 022C11B4 */ _t34 = cpu->r[1] + 0x00000054u;
|
|
/* 022C11B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022C11B8 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022C11BC */ return;
|
|
}
|
|
|
|
// fn_022C10DC @ 0x22c10dc
|
|
void Gambit_fn_022C10DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_022C10DC: ; // 0x22c10dc
|
|
/* 022C10DC */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 022C10DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C10DC */ cpu->r[1] = _t0;
|
|
/* 022C10E0 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022C10E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C10E4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022C10E8 */ _t2 = cpu->r[11] + 0x00004CFCu;
|
|
/* 022C10E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022C10EC */ cpu->r[31] = cpu->r[3];
|
|
/* 022C10F0 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 022C10F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022C10F4 */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022C10F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022C10F8 */ /* nop */
|
|
/* 022C10FC */ /* nop */
|
|
/* 022C1100 */ /* nop */
|
|
/* 022C1104 */ _t5 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022C1104 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022C1108 */ /* nop */
|
|
/* 022C110C */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 022C110C */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022C1110 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 022C1110 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C1114 */ cpu->f[11] = cpu->f[10] * cpu->f[0];
|
|
/* 022C1118 */ _t8 = cpu->r[1] + 0x00000038u;
|
|
/* 022C1118 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022C111C */ _t9 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022C111C */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022C1120 */ /* nop */
|
|
/* 022C1124 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 022C1124 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[11]);
|
|
/* 022C1128 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 022C1128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C112C */ /* nop */
|
|
/* 022C1130 */ _t12 = cpu->r[31] + 0x00000148u;
|
|
/* 022C1130 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022C1134 */ /* nop */
|
|
/* 022C1138 */ _t13 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C1138 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022C113C */ _t14 = cpu->r[1] + 0x00000040u;
|
|
/* 022C113C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022C1140 */ _t15 = cpu->r[1] + 0x00000040u;
|
|
/* 022C1140 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022C1144 */ _t16 = cpu->r[1] + 0x00000030u;
|
|
/* 022C1144 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022C1148 */ cpu->f[12] = cpu->f[0] + cpu->f[10];
|
|
/* 022C114C */ _t17 = cpu->r[1] + 0x00000044u;
|
|
/* 022C114C */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 022C1150 */ _t18 = cpu->r[1] + 0x00000048u;
|
|
/* 022C1150 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022C1154 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 022C1154 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 022C1158 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 022C1158 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022C115C */ _t21 = cpu->r[31] + 0x00000070u;
|
|
/* 022C115C */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022C1160 */ cpu->r[30] = cpu->r[31] + 0x00000140u;
|
|
/* 022C1164 */ _t22 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022C1164 */ rbrew_write32(cpu->mem, _t22, cpu->r[7]);
|
|
/* 022C1168 */ Gambit_fn_0231DF98(cpu);
|
|
/* 022C116C */ cpu->r[10] = cpu->r[1] + 0x00000044u;
|
|
/* 022C1170 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022C1170 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 022C1174 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C1178 */ _t24 = cpu->r[31] + 0x000001BCu;
|
|
/* 022C1178 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022C117C */ cpu->r[9] = 0x10060000u;
|
|
/* 022C1180 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 022C1180 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 022C1184 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1184 */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 022C1188 */ _t27 = cpu->r[9] + 0x00004D04u;
|
|
/* 022C1188 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022C118C */ _t28 = cpu->r[12] + 0x00004D00u;
|
|
/* 022C118C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022C1190 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 022C1190 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 022C1194 */ cpu->r[0] = 0x00000001u;
|
|
/* 022C1198 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1198 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 022C119C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022C11A0 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C11A0 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[0]);
|
|
/* 022C11A4 */ Gambit_fn_022471AC(cpu);
|
|
/* 022C11A8 */ _t32 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022C11A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022C11AC */ _t33 = cpu->r[1] + 0x00000050u;
|
|
/* 022C11AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022C11B0 */ cpu->lr = cpu->r[0];
|
|
/* 022C11B4 */ _t34 = cpu->r[1] + 0x00000054u;
|
|
/* 022C11B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022C11B8 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022C11BC */ return;
|
|
}
|
|
|
|
// fn_022C11C0 @ 0x22c11c0
|
|
void Gambit_fn_022C11C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022C11C0: ; // 0x22c11c0
|
|
/* 022C11C0 */ cpu->r[0] = cpu->lr;
|
|
/* 022C11C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C11C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C11C4 */ cpu->r[1] = _t0;
|
|
/* 022C11C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C11C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C11CC */ cpu->r[31] = cpu->r[3];
|
|
/* 022C11D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C11D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C11D4 */ _t3 = cpu->r[31] + 0x00000190u;
|
|
/* 022C11D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C11D8 */ /* nop */
|
|
/* 022C11DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022C11E0 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C11E0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C11E0 */ if (_t5) goto L_022C11F0; else goto L_022C11E4;
|
|
L_022C11E4: ; // 0x22c11e4
|
|
/* 022C11E4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C11E4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022C11E4 */ if (_t7) goto L_022C1214; else goto L_022C11E8;
|
|
L_022C11E8: ; // 0x22c11e8
|
|
/* 022C11E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022C11EC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C11EC */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C11EC */ if (_t9) goto L_022C11F0; else goto L_022C121C;
|
|
L_022C11F0: ; // 0x22c11f0
|
|
/* 022C11F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C11F4 */ Gambit_fn_022C0FF8(cpu);
|
|
/* 022C11F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C11FC */ Gambit_fn_022C10D8(cpu);
|
|
/* 022C1200 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C1204 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C1208 */ cpu->lr = cpu->r[0];
|
|
/* 022C120C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1210 */ return;
|
|
L_022C1214: ; // 0x22c1214
|
|
/* 022C1214 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1218 */ Gambit_fn_022C0FF8(cpu);
|
|
L_022C121C: ; // 0x22c121c
|
|
/* 022C121C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022C121C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022C1220 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1220 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022C1224 */ cpu->lr = cpu->r[0];
|
|
/* 022C1228 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C122C */ return;
|
|
}
|
|
|
|
// fn_022C11C4 @ 0x22c11c4
|
|
void Gambit_fn_022C11C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022C11C4: ; // 0x22c11c4
|
|
/* 022C11C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C11C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C11C4 */ cpu->r[1] = _t0;
|
|
/* 022C11C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C11C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C11CC */ cpu->r[31] = cpu->r[3];
|
|
/* 022C11D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C11D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C11D4 */ _t3 = cpu->r[31] + 0x00000190u;
|
|
/* 022C11D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C11D8 */ /* nop */
|
|
/* 022C11DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022C11E0 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C11E0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C11E0 */ if (_t5) goto L_022C11F0; else goto L_022C11E4;
|
|
L_022C11E4: ; // 0x22c11e4
|
|
/* 022C11E4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C11E4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022C11E4 */ if (_t7) goto L_022C1214; else goto L_022C11E8;
|
|
L_022C11E8: ; // 0x22c11e8
|
|
/* 022C11E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022C11EC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C11EC */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C11EC */ if (_t9) goto L_022C11F0; else goto L_022C121C;
|
|
L_022C11F0: ; // 0x22c11f0
|
|
/* 022C11F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C11F4 */ Gambit_fn_022C0FF8(cpu);
|
|
/* 022C11F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C11FC */ Gambit_fn_022C10D8(cpu);
|
|
/* 022C1200 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C1204 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C1208 */ cpu->lr = cpu->r[0];
|
|
/* 022C120C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1210 */ return;
|
|
L_022C1214: ; // 0x22c1214
|
|
/* 022C1214 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1218 */ Gambit_fn_022C0FF8(cpu);
|
|
L_022C121C: ; // 0x22c121c
|
|
/* 022C121C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022C121C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022C1220 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1220 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022C1224 */ cpu->lr = cpu->r[0];
|
|
/* 022C1228 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C122C */ return;
|
|
}
|
|
|
|
// fn_022C1230 @ 0x22c1230
|
|
void Gambit_fn_022C1230(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022C1230: ; // 0x22c1230
|
|
/* 022C1230 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C1234 */ cpu->r[9] = cpu->r[3];
|
|
/* 022C1238 */ _t0 = cpu->r[12] + 0x00004D08u;
|
|
/* 022C1238 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022C123C */ _t1 = cpu->r[9] + 0x000001C8u;
|
|
/* 022C123C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022C1240 */ cpu->r[10] = 0x10060000u;
|
|
/* 022C1244 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 022C1248 */ _t2 = cpu->r[10] + 0x00004D0Cu;
|
|
/* 022C1248 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022C124C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022C1250 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C1250 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022C1250 */ if (_t4) goto L_022C1254; else goto L_022C1260;
|
|
L_022C1254: ; // 0x22c1254
|
|
/* 022C1254 */ cpu->r[3] = 0x00000000u;
|
|
/* 022C1258 */ _t5 = cpu->r[9] + 0x000001C8u;
|
|
/* 022C1258 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022C125C */ return;
|
|
L_022C1260: ; // 0x22c1260
|
|
/* 022C1260 */ cpu->r[11] = 0x10060000u;
|
|
/* 022C1264 */ _t6 = cpu->r[11] + 0x00004CA8u;
|
|
/* 022C1264 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022C1268 */ cpu->r[3] = 0x00000001u;
|
|
/* 022C126C */ _t7 = cpu->r[9] + 0x000001C8u;
|
|
/* 022C126C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 022C1270 */ return;
|
|
}
|
|
|
|
// fn_022C1274 @ 0x22c1274
|
|
void Gambit_fn_022C1274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_022C1274: ; // 0x22c1274
|
|
/* 022C1274 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022C1274 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C1274 */ cpu->r[1] = _t0;
|
|
/* 022C1278 */ _t1 = cpu->r[3] + 0x0000013Cu;
|
|
/* 022C1278 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022C127C */ cpu->r[10] = 0x10060000u;
|
|
/* 022C1280 */ /* nop */
|
|
/* 022C1284 */ cpu->f[13] = cpu->f[13] + cpu->f[13];
|
|
/* 022C1288 */ _t2 = cpu->r[10] + 0x00004D10u;
|
|
/* 022C1288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022C128C */ /* nop */
|
|
/* 022C1290 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022C1290 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 022C1294 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 022C1294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022C1298 */ /* nop */
|
|
/* 022C129C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 022C129C */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022C12A0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C12A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022C12A4 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 022C12A4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 022C12A8 */ _t8 = cpu->r[4] + 0x00000008u;
|
|
/* 022C12A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022C12AC */ _t9 = cpu->r[4] + 0x00000004u;
|
|
/* 022C12AC */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 022C12B0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022C12B4 */ return;
|
|
}
|
|
|
|
// fn_022C12B8 @ 0x22c12b8
|
|
void Gambit_fn_022C12B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022C12B8: ; // 0x22c12b8
|
|
/* 022C12B8 */ cpu->r[0] = cpu->lr;
|
|
/* 022C12BC */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 022C12BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C12BC */ cpu->r[1] = _t0;
|
|
/* 022C12C0 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022C12C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C12C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C12C8 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 022C12C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022C12CC */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022C12CC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022C12D0 */ Gambit_fn_022C1230(cpu);
|
|
/* 022C12D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C12D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C12D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C12D8 */ if (_t5) goto L_022C1418; else goto L_022C12DC;
|
|
L_022C12DC: ; // 0x22c12dc
|
|
/* 022C12DC */ _t6 = cpu->r[31] + 0x00000134u;
|
|
/* 022C12DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022C12E0 */ _t7 = cpu->r[31] + 0x00000144u;
|
|
/* 022C12E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022C12E4 */ _t8 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C12E4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[9]);
|
|
/* 022C12E8 */ _t9 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022C12E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022C12EC */ _t10 = cpu->r[31] + 0x00000148u;
|
|
/* 022C12EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022C12F0 */ cpu->r[10] = 0x101F0000u;
|
|
/* 022C12F4 */ _t11 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022C12F4 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[12]);
|
|
/* 022C12F8 */ _t12 = cpu->r[10] + 0x00006350u;
|
|
/* 022C12F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022C12F8 */ cpu->r[10] = _t12;
|
|
/* 022C12FC */ _t13 = cpu->r[10] + 0x00000008u;
|
|
/* 022C12FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022C1300 */ _t14 = cpu->r[10] + 0x00000004u;
|
|
/* 022C1300 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022C1304 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 022C1304 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022C1308 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 022C1308 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 022C130C */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 022C130C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 022C1310 */ _t18 = cpu->r[1] + 0x00000040u;
|
|
/* 022C1310 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[9]);
|
|
/* 022C1314 */ cpu->r[4] = 0x10060000u;
|
|
/* 022C1318 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 022C1318 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 022C131C */ _t20 = cpu->r[31] + 0x00000138u;
|
|
/* 022C131C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022C1320 */ _t21 = cpu->r[31] + 0x00000140u;
|
|
/* 022C1320 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022C1324 */ cpu->r[4] = cpu->r[4] + 0x00004D14u;
|
|
/* 022C1328 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 022C1328 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[10]);
|
|
/* 022C132C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022C1330 */ cpu->r[5] = 0x000000D2u;
|
|
/* 022C1334 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 022C1334 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[11]);
|
|
/* 022C1338 */ Gambit_fn_0204D380(cpu);
|
|
/* 022C133C */ cpu->r[12] = 0x101E0000u;
|
|
/* 022C1340 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 022C1340 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022C1344 */ _t25 = cpu->r[12] + 0x00003C98u;
|
|
/* 022C1344 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022C1344 */ cpu->r[12] = _t25;
|
|
/* 022C1348 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1348 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022C134C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C134C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022C1350 */ /* nop */
|
|
/* 022C1354 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 022C1354 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 022C1358 */ cpu->f[8] = cpu->f[8] * cpu->f[11];
|
|
/* 022C135C */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C135C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[10]);
|
|
/* 022C1360 */ /* nop */
|
|
/* 022C1364 */ _t30 = cpu->r[12] + 0x00000004u;
|
|
/* 022C1364 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022C1368 */ /* nop */
|
|
/* 022C136C */ _t31 = cpu->r[1] + 0x00000028u;
|
|
/* 022C136C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022C1370 */ /* nop */
|
|
/* 022C1374 */ _t32 = cpu->r[12] + 0x00000008u;
|
|
/* 022C1374 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022C1378 */ cpu->f[8] = fma(cpu->f[13], cpu->f[9], cpu->f[8]);
|
|
/* 022C137C */ /* nop */
|
|
/* 022C1380 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 022C1380 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022C1384 */ /* nop */
|
|
/* 022C1388 */ /* nop */
|
|
/* 022C138C */ cpu->f[8] = fma(cpu->f[0], cpu->f[12], cpu->f[8]);
|
|
/* 022C1390 */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 022C1390 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022C1394 */ /* nop */
|
|
/* 022C1398 */ cpu->f[10] = cpu->f[8] + cpu->f[12];
|
|
/* 022C139C */ /* nop */
|
|
/* 022C13A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C13A4 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 022C13A8 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022C13A8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[10]);
|
|
/* 022C13AC */ Gambit_fn_022C1274(cpu);
|
|
/* 022C13B0 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022C13B4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022C13B8 */ _t36 = cpu->r[11] + 0x00006000u;
|
|
/* 022C13B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022C13BC */ _t37 = cpu->r[12] + 0x000050F0u;
|
|
/* 022C13BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022C13C0 */ _t38 = cpu->r[11] + 0x00000274u;
|
|
/* 022C13C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022C13C4 */ cpu->r[11] = cpu->r[3] + cpu->r[12];
|
|
/* 022C13C8 */ _t39 = cpu->r[11] + 0x00000104u;
|
|
/* 022C13C8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t39);
|
|
/* 022C13CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022C13D0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C13D0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 022C13D0 */ if (_t41) goto L_022C1418; else goto L_022C13D4;
|
|
L_022C13D4: ; // 0x22c13d4
|
|
/* 022C13D4 */ cpu->r[7] = cpu->r[1] + 0x00000044u;
|
|
/* 022C13D8 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022C13DC */ cpu->r[5] = 0x00000001u;
|
|
/* 022C13E0 */ Gambit_fn_021F000C(cpu);
|
|
/* 022C13E4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022C13E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022C13E8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C13E8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022C13E8 */ if (_t43) goto L_022C1418; else goto L_022C13EC;
|
|
L_022C13EC: ; // 0x22c13ec
|
|
/* 022C13EC */ cpu->r[3] = 0x101D0000u;
|
|
/* 022C13F0 */ _t44 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022C13F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022C13F4 */ Gambit_fn_02830138(cpu);
|
|
/* 022C13F8 */ cpu->r[9] = cpu->r[3];
|
|
/* 022C13FC */ cpu->r[8] = cpu->r[1] + 0x00000044u;
|
|
/* 022C1400 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022C1404 */ cpu->r[6] = 0x00000000u;
|
|
/* 022C1408 */ cpu->r[5] = 0x00000001u;
|
|
/* 022C140C */ cpu->r[4] = cpu->r[31];
|
|
/* 022C1410 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C1414 */ Gambit_fn_021E81D0(cpu);
|
|
L_022C1418: ; // 0x22c1418
|
|
/* 022C1418 */ _t45 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022C1418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022C141C */ _t46 = cpu->r[1] + 0x00000050u;
|
|
/* 022C141C */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022C1420 */ cpu->lr = cpu->r[0];
|
|
/* 022C1424 */ _t47 = cpu->r[1] + 0x00000054u;
|
|
/* 022C1424 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022C1428 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022C142C */ return;
|
|
}
|
|
|
|
// fn_022C12BC @ 0x22c12bc
|
|
void Gambit_fn_022C12BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022C12BC: ; // 0x22c12bc
|
|
/* 022C12BC */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 022C12BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C12BC */ cpu->r[1] = _t0;
|
|
/* 022C12C0 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022C12C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C12C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C12C8 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 022C12C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022C12CC */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022C12CC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022C12D0 */ Gambit_fn_022C1230(cpu);
|
|
/* 022C12D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C12D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C12D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C12D8 */ if (_t5) goto L_022C1418; else goto L_022C12DC;
|
|
L_022C12DC: ; // 0x22c12dc
|
|
/* 022C12DC */ _t6 = cpu->r[31] + 0x00000134u;
|
|
/* 022C12DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022C12E0 */ _t7 = cpu->r[31] + 0x00000144u;
|
|
/* 022C12E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022C12E4 */ _t8 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022C12E4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[9]);
|
|
/* 022C12E8 */ _t9 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022C12E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022C12EC */ _t10 = cpu->r[31] + 0x00000148u;
|
|
/* 022C12EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022C12F0 */ cpu->r[10] = 0x101F0000u;
|
|
/* 022C12F4 */ _t11 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022C12F4 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[12]);
|
|
/* 022C12F8 */ _t12 = cpu->r[10] + 0x00006350u;
|
|
/* 022C12F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022C12F8 */ cpu->r[10] = _t12;
|
|
/* 022C12FC */ _t13 = cpu->r[10] + 0x00000008u;
|
|
/* 022C12FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022C1300 */ _t14 = cpu->r[10] + 0x00000004u;
|
|
/* 022C1300 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022C1304 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 022C1304 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022C1308 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 022C1308 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 022C130C */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 022C130C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 022C1310 */ _t18 = cpu->r[1] + 0x00000040u;
|
|
/* 022C1310 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[9]);
|
|
/* 022C1314 */ cpu->r[4] = 0x10060000u;
|
|
/* 022C1318 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 022C1318 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 022C131C */ _t20 = cpu->r[31] + 0x00000138u;
|
|
/* 022C131C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022C1320 */ _t21 = cpu->r[31] + 0x00000140u;
|
|
/* 022C1320 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022C1324 */ cpu->r[4] = cpu->r[4] + 0x00004D14u;
|
|
/* 022C1328 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 022C1328 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[10]);
|
|
/* 022C132C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022C1330 */ cpu->r[5] = 0x000000D2u;
|
|
/* 022C1334 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 022C1334 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[11]);
|
|
/* 022C1338 */ Gambit_fn_0204D380(cpu);
|
|
/* 022C133C */ cpu->r[12] = 0x101E0000u;
|
|
/* 022C1340 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 022C1340 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022C1344 */ _t25 = cpu->r[12] + 0x00003C98u;
|
|
/* 022C1344 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022C1344 */ cpu->r[12] = _t25;
|
|
/* 022C1348 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1348 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022C134C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022C134C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022C1350 */ /* nop */
|
|
/* 022C1354 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 022C1354 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 022C1358 */ cpu->f[8] = cpu->f[8] * cpu->f[11];
|
|
/* 022C135C */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C135C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[10]);
|
|
/* 022C1360 */ /* nop */
|
|
/* 022C1364 */ _t30 = cpu->r[12] + 0x00000004u;
|
|
/* 022C1364 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022C1368 */ /* nop */
|
|
/* 022C136C */ _t31 = cpu->r[1] + 0x00000028u;
|
|
/* 022C136C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022C1370 */ /* nop */
|
|
/* 022C1374 */ _t32 = cpu->r[12] + 0x00000008u;
|
|
/* 022C1374 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022C1378 */ cpu->f[8] = fma(cpu->f[13], cpu->f[9], cpu->f[8]);
|
|
/* 022C137C */ /* nop */
|
|
/* 022C1380 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 022C1380 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022C1384 */ /* nop */
|
|
/* 022C1388 */ /* nop */
|
|
/* 022C138C */ cpu->f[8] = fma(cpu->f[0], cpu->f[12], cpu->f[8]);
|
|
/* 022C1390 */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 022C1390 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022C1394 */ /* nop */
|
|
/* 022C1398 */ cpu->f[10] = cpu->f[8] + cpu->f[12];
|
|
/* 022C139C */ /* nop */
|
|
/* 022C13A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C13A4 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 022C13A8 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022C13A8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[10]);
|
|
/* 022C13AC */ Gambit_fn_022C1274(cpu);
|
|
/* 022C13B0 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022C13B4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022C13B8 */ _t36 = cpu->r[11] + 0x00006000u;
|
|
/* 022C13B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022C13BC */ _t37 = cpu->r[12] + 0x000050F0u;
|
|
/* 022C13BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022C13C0 */ _t38 = cpu->r[11] + 0x00000274u;
|
|
/* 022C13C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022C13C4 */ cpu->r[11] = cpu->r[3] + cpu->r[12];
|
|
/* 022C13C8 */ _t39 = cpu->r[11] + 0x00000104u;
|
|
/* 022C13C8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t39);
|
|
/* 022C13CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022C13D0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C13D0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 022C13D0 */ if (_t41) goto L_022C1418; else goto L_022C13D4;
|
|
L_022C13D4: ; // 0x22c13d4
|
|
/* 022C13D4 */ cpu->r[7] = cpu->r[1] + 0x00000044u;
|
|
/* 022C13D8 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 022C13DC */ cpu->r[5] = 0x00000001u;
|
|
/* 022C13E0 */ Gambit_fn_021F000C(cpu);
|
|
/* 022C13E4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022C13E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022C13E8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C13E8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022C13E8 */ if (_t43) goto L_022C1418; else goto L_022C13EC;
|
|
L_022C13EC: ; // 0x22c13ec
|
|
/* 022C13EC */ cpu->r[3] = 0x101D0000u;
|
|
/* 022C13F0 */ _t44 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022C13F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022C13F4 */ Gambit_fn_02830138(cpu);
|
|
/* 022C13F8 */ cpu->r[9] = cpu->r[3];
|
|
/* 022C13FC */ cpu->r[8] = cpu->r[1] + 0x00000044u;
|
|
/* 022C1400 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022C1404 */ cpu->r[6] = 0x00000000u;
|
|
/* 022C1408 */ cpu->r[5] = 0x00000001u;
|
|
/* 022C140C */ cpu->r[4] = cpu->r[31];
|
|
/* 022C1410 */ cpu->r[3] = cpu->r[30];
|
|
/* 022C1414 */ Gambit_fn_021E81D0(cpu);
|
|
L_022C1418: ; // 0x22c1418
|
|
/* 022C1418 */ _t45 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022C1418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022C141C */ _t46 = cpu->r[1] + 0x00000050u;
|
|
/* 022C141C */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022C1420 */ cpu->lr = cpu->r[0];
|
|
/* 022C1424 */ _t47 = cpu->r[1] + 0x00000054u;
|
|
/* 022C1424 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022C1428 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022C142C */ return;
|
|
}
|
|
|
|
// fn_022C1430 @ 0x22c1430
|
|
void Gambit_fn_022C1430(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022C1430: ; // 0x22c1430
|
|
/* 022C1430 */ _t0 = cpu->r[3] + 0x00000064u;
|
|
/* 022C1430 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022C1434 */ goto L_023B3304;
|
|
L_023B3304: ; // 0x23b3304
|
|
/* 023B3304 */ _t1 = cpu->r[3] + 0x00000048u;
|
|
/* 023B3304 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 023B3308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000001u);
|
|
/* 023B330C */ cpu->r[9] = 0x00000001u;
|
|
/* 023B3310 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023B3310 */ _t3 = _t2 & 0x00000001u;
|
|
/* 023B3310 */ if (_t3) goto L_023B332C; else goto L_023B3314;
|
|
L_023B3314: ; // 0x23b3314
|
|
/* 023B3314 */ _t4 = cpu->r[3] + 0x0000006Cu;
|
|
/* 023B3314 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023B3318 */ cpu->r[11] = cpu->r[10] ^ 0x00000001u;
|
|
/* 023B331C */ cpu->r[12] = rbrew_clz32(cpu->r[11]);
|
|
/* 023B3320 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 023B3320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023B3324 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023B3324 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023B3324 */ if (_t6) goto L_023B3328; else goto L_023B332C;
|
|
L_023B3328: ; // 0x23b3328
|
|
/* 023B3328 */ cpu->r[9] = 0x00000000u;
|
|
L_023B332C: ; // 0x23b332c
|
|
/* 023B332C */ cpu->r[3] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 023B3330 */ return;
|
|
}
|
|
|
|
// fn_022C1438 @ 0x22c1438
|
|
void Gambit_fn_022C1438(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022C1438: ; // 0x22c1438
|
|
/* 022C1438 */ cpu->r[0] = cpu->lr;
|
|
/* 022C143C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C143C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C143C */ cpu->r[1] = _t0;
|
|
/* 022C1440 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1440 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C1444 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C1448 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1448 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C144C */ _t3 = cpu->r[31] + 0x00000190u;
|
|
/* 022C144C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C1450 */ /* nop */
|
|
/* 022C1454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 022C1458 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1458 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C1458 */ if (_t5) goto L_022C1490; else goto L_022C145C;
|
|
L_022C145C: ; // 0x22c145c
|
|
/* 022C145C */ cpu->r[12] = 0x10060000u;
|
|
/* 022C1460 */ _t6 = cpu->r[31] + 0x000000E0u;
|
|
/* 022C1460 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022C1464 */ _t7 = cpu->r[12] + 0x00004CA8u;
|
|
/* 022C1464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022C1468 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022C146C */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C146C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C146C */ if (_t9) goto L_022C1490; else goto L_022C1470;
|
|
L_022C1470: ; // 0x22c1470
|
|
/* 022C1470 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C1474 */ cpu->r[4] = 0x00000004u;
|
|
/* 022C1478 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C147C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022C147C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C1480 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C1484 */ cpu->lr = cpu->r[0];
|
|
/* 022C1488 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C148C */ return;
|
|
L_022C1490: ; // 0x22c1490
|
|
/* 022C1490 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022C1494 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C1494 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C1494 */ if (_t13) goto L_022C1498; else goto L_022C14A4;
|
|
L_022C1498: ; // 0x22c1498
|
|
/* 022C1498 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022C149C */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C149C */ _t15 = _t14 & 0x00000001u;
|
|
/* 022C149C */ if (_t15) goto L_022C14CC; else goto L_022C14A0;
|
|
L_022C14A0: ; // 0x22c14a0
|
|
/* 022C14A0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C14A0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022C14A0 */ if (_t17) goto L_022C14FC; else goto L_022C14A4;
|
|
L_022C14A4: ; // 0x22c14a4
|
|
/* 022C14A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 022C14A8 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C14A8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022C14A8 */ if (_t19) goto L_022C152C; else goto L_022C14AC;
|
|
L_022C14AC: ; // 0x22c14ac
|
|
/* 022C14AC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C14AC */ _t21 = _t20 & 0x00000001u;
|
|
/* 022C14AC */ if (_t21) goto L_022C155C; else goto L_022C14B0;
|
|
L_022C14B0: ; // 0x22c14b0
|
|
/* 022C14B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 022C14B4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C14B4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022C14B4 */ if (_t23) goto L_022C158C; else goto L_022C14B8;
|
|
L_022C14B8: ; // 0x22c14b8
|
|
/* 022C14B8 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022C14B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022C14BC */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C14BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022C14C0 */ cpu->lr = cpu->r[0];
|
|
/* 022C14C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C14C8 */ return;
|
|
L_022C14CC: ; // 0x22c14cc
|
|
/* 022C14CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022C14D0 */ Gambit_fn_022C1430(cpu);
|
|
/* 022C14D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C14D8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C14D8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022C14D8 */ if (_t27) goto L_022C15BC; else goto L_022C14DC;
|
|
L_022C14DC: ; // 0x22c14dc
|
|
/* 022C14DC */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C14E0 */ cpu->r[4] = 0x00000001u;
|
|
/* 022C14E4 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C14E8 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 022C14E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022C14EC */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C14EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022C14F0 */ cpu->lr = cpu->r[0];
|
|
/* 022C14F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C14F8 */ return;
|
|
L_022C14FC: ; // 0x22c14fc
|
|
/* 022C14FC */ _t30 = cpu->r[31] + 0x00000094u;
|
|
/* 022C14FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022C1500 */ Gambit_fn_023991BC(cpu);
|
|
/* 022C1504 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1508 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1508 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022C1508 */ if (_t32) goto L_022C15BC; else goto L_022C150C;
|
|
L_022C150C: ; // 0x22c150c
|
|
/* 022C150C */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C1510 */ cpu->r[4] = 0x00000002u;
|
|
/* 022C1514 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C1518 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022C151C */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C151C */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022C1520 */ cpu->lr = cpu->r[0];
|
|
/* 022C1524 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1528 */ return;
|
|
L_022C152C: ; // 0x22c152c
|
|
/* 022C152C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1530 */ Gambit_fn_022C1430(cpu);
|
|
/* 022C1534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1538 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1538 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022C1538 */ if (_t36) goto L_022C153C; else goto L_022C15BC;
|
|
L_022C153C: ; // 0x22c153c
|
|
/* 022C153C */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C1540 */ cpu->r[4] = 0x00000003u;
|
|
/* 022C1544 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C1548 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1548 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022C154C */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C154C */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022C1550 */ cpu->lr = cpu->r[0];
|
|
/* 022C1554 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1558 */ return;
|
|
L_022C155C: ; // 0x22c155c
|
|
/* 022C155C */ _t39 = cpu->r[31] + 0x00000094u;
|
|
/* 022C155C */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022C1560 */ Gambit_fn_023991BC(cpu);
|
|
/* 022C1564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1568 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1568 */ _t41 = _t40 & 0x00000001u;
|
|
/* 022C1568 */ if (_t41) goto L_022C15BC; else goto L_022C156C;
|
|
L_022C156C: ; // 0x22c156c
|
|
/* 022C156C */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C1570 */ cpu->r[4] = 0x00000000u;
|
|
/* 022C1574 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C1578 */ _t42 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022C157C */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C157C */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022C1580 */ cpu->lr = cpu->r[0];
|
|
/* 022C1584 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1588 */ return;
|
|
L_022C158C: ; // 0x22c158c
|
|
/* 022C158C */ _t44 = cpu->r[31] + 0x00000094u;
|
|
/* 022C158C */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022C1590 */ Gambit_fn_02398FA8(cpu);
|
|
/* 022C1594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1598 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1598 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022C1598 */ if (_t46) goto L_022C15BC; else goto L_022C159C;
|
|
L_022C159C: ; // 0x22c159c
|
|
/* 022C159C */ cpu->r[12] = 0x10060000u;
|
|
/* 022C15A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C15A4 */ _t47 = cpu->r[12] + 0x00004D30u;
|
|
/* 022C15A4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022C15A8 */ cpu->r[4] = 0x00000001u;
|
|
/* 022C15AC */ cpu->r[5] = 0x00000000u;
|
|
/* 022C15B0 */ Gambit_fn_02272C78(cpu);
|
|
/* 022C15B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C15B8 */ Gambit_fn_02790488(cpu);
|
|
L_022C15BC: ; // 0x22c15bc
|
|
/* 022C15BC */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 022C15BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022C15C0 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C15C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022C15C4 */ cpu->lr = cpu->r[0];
|
|
/* 022C15C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C15CC */ return;
|
|
}
|
|
|
|
// fn_022C143C @ 0x22c143c
|
|
void Gambit_fn_022C143C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022C143C: ; // 0x22c143c
|
|
/* 022C143C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C143C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C143C */ cpu->r[1] = _t0;
|
|
/* 022C1440 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1440 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C1444 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C1448 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1448 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C144C */ _t3 = cpu->r[31] + 0x00000190u;
|
|
/* 022C144C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C1450 */ /* nop */
|
|
/* 022C1454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 022C1458 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1458 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C1458 */ if (_t5) goto L_022C1490; else goto L_022C145C;
|
|
L_022C145C: ; // 0x22c145c
|
|
/* 022C145C */ cpu->r[12] = 0x10060000u;
|
|
/* 022C1460 */ _t6 = cpu->r[31] + 0x000000E0u;
|
|
/* 022C1460 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022C1464 */ _t7 = cpu->r[12] + 0x00004CA8u;
|
|
/* 022C1464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022C1468 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022C146C */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C146C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022C146C */ if (_t9) goto L_022C1490; else goto L_022C1470;
|
|
L_022C1470: ; // 0x22c1470
|
|
/* 022C1470 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C1474 */ cpu->r[4] = 0x00000004u;
|
|
/* 022C1478 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C147C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 022C147C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C1480 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022C1484 */ cpu->lr = cpu->r[0];
|
|
/* 022C1488 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C148C */ return;
|
|
L_022C1490: ; // 0x22c1490
|
|
/* 022C1490 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022C1494 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C1494 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022C1494 */ if (_t13) goto L_022C1498; else goto L_022C14A4;
|
|
L_022C1498: ; // 0x22c1498
|
|
/* 022C1498 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022C149C */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C149C */ _t15 = _t14 & 0x00000001u;
|
|
/* 022C149C */ if (_t15) goto L_022C14CC; else goto L_022C14A0;
|
|
L_022C14A0: ; // 0x22c14a0
|
|
/* 022C14A0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C14A0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022C14A0 */ if (_t17) goto L_022C14FC; else goto L_022C14A4;
|
|
L_022C14A4: ; // 0x22c14a4
|
|
/* 022C14A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 022C14A8 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022C14A8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022C14A8 */ if (_t19) goto L_022C152C; else goto L_022C14AC;
|
|
L_022C14AC: ; // 0x22c14ac
|
|
/* 022C14AC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C14AC */ _t21 = _t20 & 0x00000001u;
|
|
/* 022C14AC */ if (_t21) goto L_022C155C; else goto L_022C14B0;
|
|
L_022C14B0: ; // 0x22c14b0
|
|
/* 022C14B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 022C14B4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C14B4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022C14B4 */ if (_t23) goto L_022C158C; else goto L_022C14B8;
|
|
L_022C14B8: ; // 0x22c14b8
|
|
/* 022C14B8 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022C14B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022C14BC */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C14BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022C14C0 */ cpu->lr = cpu->r[0];
|
|
/* 022C14C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C14C8 */ return;
|
|
L_022C14CC: ; // 0x22c14cc
|
|
/* 022C14CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022C14D0 */ Gambit_fn_022C1430(cpu);
|
|
/* 022C14D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C14D8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C14D8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022C14D8 */ if (_t27) goto L_022C15BC; else goto L_022C14DC;
|
|
L_022C14DC: ; // 0x22c14dc
|
|
/* 022C14DC */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C14E0 */ cpu->r[4] = 0x00000001u;
|
|
/* 022C14E4 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C14E8 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 022C14E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022C14EC */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C14EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022C14F0 */ cpu->lr = cpu->r[0];
|
|
/* 022C14F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C14F8 */ return;
|
|
L_022C14FC: ; // 0x22c14fc
|
|
/* 022C14FC */ _t30 = cpu->r[31] + 0x00000094u;
|
|
/* 022C14FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022C1500 */ Gambit_fn_023991BC(cpu);
|
|
/* 022C1504 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1508 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1508 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022C1508 */ if (_t32) goto L_022C15BC; else goto L_022C150C;
|
|
L_022C150C: ; // 0x22c150c
|
|
/* 022C150C */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C1510 */ cpu->r[4] = 0x00000002u;
|
|
/* 022C1514 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C1518 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022C151C */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C151C */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022C1520 */ cpu->lr = cpu->r[0];
|
|
/* 022C1524 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1528 */ return;
|
|
L_022C152C: ; // 0x22c152c
|
|
/* 022C152C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1530 */ Gambit_fn_022C1430(cpu);
|
|
/* 022C1534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1538 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1538 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022C1538 */ if (_t36) goto L_022C153C; else goto L_022C15BC;
|
|
L_022C153C: ; // 0x22c153c
|
|
/* 022C153C */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C1540 */ cpu->r[4] = 0x00000003u;
|
|
/* 022C1544 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C1548 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1548 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022C154C */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C154C */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022C1550 */ cpu->lr = cpu->r[0];
|
|
/* 022C1554 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1558 */ return;
|
|
L_022C155C: ; // 0x22c155c
|
|
/* 022C155C */ _t39 = cpu->r[31] + 0x00000094u;
|
|
/* 022C155C */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022C1560 */ Gambit_fn_023991BC(cpu);
|
|
/* 022C1564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1568 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1568 */ _t41 = _t40 & 0x00000001u;
|
|
/* 022C1568 */ if (_t41) goto L_022C15BC; else goto L_022C156C;
|
|
L_022C156C: ; // 0x22c156c
|
|
/* 022C156C */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022C1570 */ cpu->r[4] = 0x00000000u;
|
|
/* 022C1574 */ Gambit_fn_022C2330(cpu);
|
|
/* 022C1578 */ _t42 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022C157C */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C157C */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022C1580 */ cpu->lr = cpu->r[0];
|
|
/* 022C1584 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1588 */ return;
|
|
L_022C158C: ; // 0x22c158c
|
|
/* 022C158C */ _t44 = cpu->r[31] + 0x00000094u;
|
|
/* 022C158C */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022C1590 */ Gambit_fn_02398FA8(cpu);
|
|
/* 022C1594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022C1598 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1598 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022C1598 */ if (_t46) goto L_022C15BC; else goto L_022C159C;
|
|
L_022C159C: ; // 0x22c159c
|
|
/* 022C159C */ cpu->r[12] = 0x10060000u;
|
|
/* 022C15A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C15A4 */ _t47 = cpu->r[12] + 0x00004D30u;
|
|
/* 022C15A4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022C15A8 */ cpu->r[4] = 0x00000001u;
|
|
/* 022C15AC */ cpu->r[5] = 0x00000000u;
|
|
/* 022C15B0 */ Gambit_fn_02272C78(cpu);
|
|
/* 022C15B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C15B8 */ Gambit_fn_02790488(cpu);
|
|
L_022C15BC: ; // 0x22c15bc
|
|
/* 022C15BC */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 022C15BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022C15C0 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C15C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022C15C4 */ cpu->lr = cpu->r[0];
|
|
/* 022C15C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C15CC */ return;
|
|
}
|
|
|
|
// fn_022C15D0 @ 0x22c15d0
|
|
void Gambit_fn_022C15D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022C15D0: ; // 0x22c15d0
|
|
/* 022C15D0 */ cpu->r[0] = cpu->lr;
|
|
/* 022C15D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C15D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C15D4 */ cpu->r[1] = _t0;
|
|
/* 022C15D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C15D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C15DC */ cpu->r[31] = cpu->r[3];
|
|
/* 022C15E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C15E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C15E4 */ _t3 = cpu->r[31] + 0x00000190u;
|
|
/* 022C15E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C15E8 */ /* nop */
|
|
/* 022C15EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 022C15F0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C15F0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C15F0 */ if (_t5) goto L_022C161C; else goto L_022C15F4;
|
|
L_022C15F4: ; // 0x22c15f4
|
|
/* 022C15F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C15F8 */ Gambit_fn_022C0F70(cpu);
|
|
/* 022C15FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1600 */ Gambit_fn_022C11C0(cpu);
|
|
/* 022C1604 */ _t6 = cpu->r[31] + 0x00000190u;
|
|
/* 022C1604 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 022C1608 */ /* nop */
|
|
/* 022C160C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022C1610 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1610 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022C1610 */ if (_t8) goto L_022C1614; else goto L_022C161C;
|
|
L_022C1614: ; // 0x22c1614
|
|
/* 022C1614 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1618 */ Gambit_fn_022C12B8(cpu);
|
|
L_022C161C: ; // 0x22c161c
|
|
/* 022C161C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1620 */ Gambit_fn_022C1438(cpu);
|
|
/* 022C1624 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022C1628 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1628 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C162C */ cpu->lr = cpu->r[0];
|
|
/* 022C1630 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1634 */ return;
|
|
}
|
|
|
|
// fn_022C15D4 @ 0x22c15d4
|
|
void Gambit_fn_022C15D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022C15D4: ; // 0x22c15d4
|
|
/* 022C15D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C15D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C15D4 */ cpu->r[1] = _t0;
|
|
/* 022C15D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C15D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C15DC */ cpu->r[31] = cpu->r[3];
|
|
/* 022C15E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022C15E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022C15E4 */ _t3 = cpu->r[31] + 0x00000190u;
|
|
/* 022C15E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022C15E8 */ /* nop */
|
|
/* 022C15EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 022C15F0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C15F0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C15F0 */ if (_t5) goto L_022C161C; else goto L_022C15F4;
|
|
L_022C15F4: ; // 0x22c15f4
|
|
/* 022C15F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C15F8 */ Gambit_fn_022C0F70(cpu);
|
|
/* 022C15FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1600 */ Gambit_fn_022C11C0(cpu);
|
|
/* 022C1604 */ _t6 = cpu->r[31] + 0x00000190u;
|
|
/* 022C1604 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 022C1608 */ /* nop */
|
|
/* 022C160C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022C1610 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1610 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022C1610 */ if (_t8) goto L_022C1614; else goto L_022C161C;
|
|
L_022C1614: ; // 0x22c1614
|
|
/* 022C1614 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1618 */ Gambit_fn_022C12B8(cpu);
|
|
L_022C161C: ; // 0x22c161c
|
|
/* 022C161C */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1620 */ Gambit_fn_022C1438(cpu);
|
|
/* 022C1624 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022C1628 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C1628 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022C162C */ cpu->lr = cpu->r[0];
|
|
/* 022C1630 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C1634 */ return;
|
|
}
|
|
|
|
// fn_022C1638 @ 0x22c1638
|
|
void Gambit_fn_022C1638(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_022709EC: ; // 0x22709ec
|
|
/* 022709EC */ cpu->r[0] = cpu->lr;
|
|
/* 022709F0 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022709F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022709F0 */ cpu->r[1] = _t0;
|
|
/* 022709F4 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022709F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022709F8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022709FC */ _t2 = cpu->r[12] + 0xFFFF8F14u;
|
|
/* 022709FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02270A00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02270A04 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02270A04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02270A08 */ _t4 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02270A08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02270A0C */ _t5 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02270A0C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02270A10 */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 02270A10 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 02270A14 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02270A14 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[7]);
|
|
/* 02270A18 */ _t8 = cpu->r[31] + 0x00000140u;
|
|
/* 02270A18 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02270A1C */ _t9 = cpu->r[31] + 0x0000017Cu;
|
|
/* 02270A1C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02270A20 */ _t10 = cpu->r[31] + 0x00000120u;
|
|
/* 02270A20 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02270A24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02270A28 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 02270A28 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[10]);
|
|
/* 02270A2C */ _t12 = cpu->r[31] + 0x00000124u;
|
|
/* 02270A2C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02270A30 */ _t13 = cpu->r[31] + 0x00000138u;
|
|
/* 02270A30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02270A34 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 02270A34 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02270A38 */ _t15 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02270A38 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02270A3C */ _t16 = cpu->r[31] + 0x00000130u;
|
|
/* 02270A3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02270A40 */ _t17 = cpu->r[31] + 0x00000128u;
|
|
/* 02270A40 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02270A44 */ _t18 = cpu->r[1] + 0x00000038u;
|
|
/* 02270A44 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02270A48 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 02270A48 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[8]);
|
|
/* 02270A4C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 02270A4C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 02270A50 */ _t21 = cpu->r[31] + 0x00000134u;
|
|
/* 02270A50 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02270A54 */ _t22 = cpu->r[31] + 0x00000148u;
|
|
/* 02270A54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02270A58 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02270A58 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 02270A5C */ _t24 = cpu->r[1] + 0x00000040u;
|
|
/* 02270A5C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 02270A60 */ _t25 = cpu->r[31] + 0x0000013Cu;
|
|
/* 02270A60 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02270A64 */ _t26 = cpu->r[31] + 0x00000144u;
|
|
/* 02270A64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02270A68 */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02270A68 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[6]);
|
|
/* 02270A6C */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 02270A6C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 02270A70 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02270A70 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02270A70 */ if (_t30) goto L_02270A90; else goto L_02270A74;
|
|
L_02270A74: ; // 0x2270a74
|
|
/* 02270A74 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02270A78 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02270A78 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[7]);
|
|
/* 02270A7C */ cpu->r[4] = cpu->r[3];
|
|
/* 02270A80 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02270A80 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[7]);
|
|
/* 02270A84 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02270A88 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02270A88 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[7]);
|
|
/* 02270A8C */ Gambit_fn_02253CE4(cpu);
|
|
L_02270A90: ; // 0x2270a90
|
|
/* 02270A90 */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 02270A90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02270A94 */ _t35 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02270A94 */ cpu->r[0] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02270A98 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02270A9C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02270AA0 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02270AA4 */ _t36 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02270AA4 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[0]);
|
|
/* 02270AA8 */ Gambit_fn_02C69510(cpu);
|
|
/* 02270AAC */ cpu->r[4] = 0x00000003u;
|
|
/* 02270AB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02270AB4 */ Gambit_fn_02980304(cpu);
|
|
/* 02270AB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02270ABC */ Gambit_fn_02980318(cpu);
|
|
/* 02270AC0 */ _t37 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02270AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02270AC4 */ _t38 = cpu->r[1] + 0x00000044u;
|
|
/* 02270AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02270AC8 */ cpu->lr = cpu->r[0];
|
|
/* 02270ACC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02270AD0 */ return;
|
|
L_022C1638: ; // 0x22c1638
|
|
/* 022C1638 */ goto L_022709EC;
|
|
}
|
|
|
|
// fn_022C16AC @ 0x22c16ac
|
|
void Gambit_fn_022C16AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_022C16AC: ; // 0x22c16ac
|
|
/* 022C16AC */ _t0 = cpu->r[3] + 0x00000190u;
|
|
/* 022C16AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022C16B0 */ /* nop */
|
|
/* 022C16B4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C16B4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022C16B4 */ if (_t2) goto L_022C16C8; else goto L_022C16B8;
|
|
L_022C16B8: ; // 0x22c16b8
|
|
/* 022C16B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022C16BC */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022C16BC */ _t4 = _t3 & 0x00000001u;
|
|
/* 022C16BC */ if (_t4) goto L_022C16DC; else goto L_022C16C0;
|
|
L_022C16C0: ; // 0x22c16c0
|
|
/* 022C16C0 */ _t5 = cpu->r[3] + 0x00000064u;
|
|
/* 022C16C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022C16C4 */ goto L_023B3AF8;
|
|
L_022C16C8: ; // 0x22c16c8
|
|
/* 022C16C8 */ _t6 = cpu->r[3] + 0x000001C4u;
|
|
/* 022C16C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022C16CC */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 022C16CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022C16D0 */ _t8 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022C16D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022C16D4 */ cpu->ctr = cpu->r[12];
|
|
/* 022C16D8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_022C16DC: ; // 0x22c16dc
|
|
/* 022C16DC */ cpu->r[3] = 0x101F0000u;
|
|
/* 022C16E0 */ cpu->r[3] = cpu->r[3] + 0x00006338u;
|
|
/* 022C16E4 */ return;
|
|
L_023B3AF8: ; // 0x23b3af8
|
|
/* 023B3AF8 */ _t9 = cpu->r[3] + 0x0000006Cu;
|
|
/* 023B3AF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023B3AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 023B3B00 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023B3B00 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023B3B00 */ if (_t11) goto L_023B3B04; else goto L_023B3B0C;
|
|
L_023B3B04: ; // 0x23b3b04
|
|
/* 023B3B04 */ cpu->r[3] = cpu->r[3] + 0x00000080u;
|
|
/* 023B3B08 */ return;
|
|
L_023B3B0C: ; // 0x23b3b0c
|
|
/* 023B3B0C */ _t12 = cpu->r[3] + 0x00000048u;
|
|
/* 023B3B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023B3B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 023B3B14 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023B3B14 */ _t14 = _t13 & 0x00000001u;
|
|
/* 023B3B14 */ if (_t14) goto L_023B3B18; else goto L_023B3B20;
|
|
L_023B3B18: ; // 0x23b3b18
|
|
/* 023B3B18 */ cpu->r[3] = cpu->r[3] + 0x0000005Cu;
|
|
/* 023B3B1C */ return;
|
|
L_023B3B20: ; // 0x23b3b20
|
|
/* 023B3B20 */ cpu->r[3] = cpu->r[3] + 0x00000020u;
|
|
/* 023B3B24 */ return;
|
|
}
|
|
|
|
// fn_022C16E8 @ 0x22c16e8
|
|
void Gambit_fn_022C16E8(CPUState* cpu) {
|
|
uint32_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_022C16E8: ; // 0x22c16e8
|
|
/* 022C16E8 */ cpu->r[0] = cpu->lr;
|
|
/* 022C16EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C16EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C16EC */ cpu->r[1] = _t0;
|
|
/* 022C16F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C16F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C16F4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022C16F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022C16F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C16F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C16FC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022C16FC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022C1700 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1700 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C1700 */ if (_t5) goto L_022C1704; else goto L_022C1714;
|
|
L_022C1704: ; // 0x22c1704
|
|
/* 022C1704 */ cpu->r[3] = 0x00000D50u;
|
|
/* 022C1708 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C170C */ cpu->r[31] = cpu->r[3];
|
|
/* 022C170C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C1710 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1710 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022C1710 */ if (_t7) goto L_022C1794; else goto L_022C1714;
|
|
L_022C1714: ; // 0x22c1714
|
|
/* 022C1714 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1718 */ Gambit_fn_02318964(cpu);
|
|
/* 022C171C */ cpu->r[0] = 0x10060000u;
|
|
/* 022C1720 */ cpu->r[0] = cpu->r[0] + 0x00004C08u;
|
|
/* 022C1724 */ cpu->r[30] = cpu->r[31] + 0x00000CF0u;
|
|
/* 022C1724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022C1728 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022C1728 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022C172C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C172C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022C172C */ if (_t10) goto L_022C1730; else goto L_022C1740;
|
|
L_022C1730: ; // 0x22c1730
|
|
/* 022C1730 */ cpu->r[3] = 0x00000060u;
|
|
/* 022C1734 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C1738 */ cpu->r[30] = cpu->r[3];
|
|
/* 022C1738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022C173C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C173C */ _t12 = _t11 & 0x00000001u;
|
|
/* 022C173C */ if (_t12) goto L_022C1794; else goto L_022C1740;
|
|
L_022C1740: ; // 0x22c1740
|
|
/* 022C1740 */ cpu->r[5] = 0x10060000u;
|
|
/* 022C1744 */ cpu->r[4] = cpu->r[31];
|
|
/* 022C1748 */ cpu->r[6] = 0x10060000u;
|
|
/* 022C174C */ cpu->r[5] = cpu->r[5] + 0x00004D5Cu;
|
|
/* 022C1750 */ cpu->r[8] = 0x00000000u;
|
|
/* 022C1754 */ cpu->r[6] = cpu->r[6] + 0x00004D68u;
|
|
/* 022C1758 */ cpu->r[7] = cpu->r[5];
|
|
/* 022C175C */ cpu->r[3] = cpu->r[30];
|
|
/* 022C1760 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022C1764 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C1768 */ cpu->r[11] = 0x10060000u;
|
|
/* 022C176C */ _t13 = cpu->r[12] + 0x00004D58u;
|
|
/* 022C176C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022C1770 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C1774 */ _t14 = cpu->r[11] + 0x00004D54u;
|
|
/* 022C1774 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022C1778 */ _t15 = cpu->r[12] + 0x00004D0Cu;
|
|
/* 022C1778 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022C177C */ _t16 = cpu->r[30] + 0x00000054u;
|
|
/* 022C177C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 022C1780 */ cpu->r[0] = 0x10110000u;
|
|
/* 022C1784 */ _t17 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022C1784 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 022C1788 */ cpu->r[0] = cpu->r[0] + 0x00000A2Cu;
|
|
/* 022C178C */ _t18 = cpu->r[30] + 0x00000058u;
|
|
/* 022C178C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 022C1790 */ _t19 = cpu->r[30] + 0x00000000u;
|
|
/* 022C1790 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_022C1794: ; // 0x22c1794
|
|
/* 022C1794 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1794 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022C1798 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C179C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C179C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022C17A0 */ cpu->lr = cpu->r[0];
|
|
/* 022C17A4 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022C17A4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022C17A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C17AC */ return;
|
|
}
|
|
|
|
// fn_022C16EC @ 0x22c16ec
|
|
void Gambit_fn_022C16EC(CPUState* cpu) {
|
|
uint32_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_022C16EC: ; // 0x22c16ec
|
|
/* 022C16EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022C16EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022C16EC */ cpu->r[1] = _t0;
|
|
/* 022C16F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C16F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022C16F4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022C16F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022C16F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022C16F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C16FC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022C16FC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022C1700 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1700 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022C1700 */ if (_t5) goto L_022C1704; else goto L_022C1714;
|
|
L_022C1704: ; // 0x22c1704
|
|
/* 022C1704 */ cpu->r[3] = 0x00000D50u;
|
|
/* 022C1708 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C170C */ cpu->r[31] = cpu->r[3];
|
|
/* 022C170C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022C1710 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C1710 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022C1710 */ if (_t7) goto L_022C1794; else goto L_022C1714;
|
|
L_022C1714: ; // 0x22c1714
|
|
/* 022C1714 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C1718 */ Gambit_fn_02318964(cpu);
|
|
/* 022C171C */ cpu->r[0] = 0x10060000u;
|
|
/* 022C1720 */ cpu->r[0] = cpu->r[0] + 0x00004C08u;
|
|
/* 022C1724 */ cpu->r[30] = cpu->r[31] + 0x00000CF0u;
|
|
/* 022C1724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022C1728 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022C1728 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022C172C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C172C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022C172C */ if (_t10) goto L_022C1730; else goto L_022C1740;
|
|
L_022C1730: ; // 0x22c1730
|
|
/* 022C1730 */ cpu->r[3] = 0x00000060u;
|
|
/* 022C1734 */ Gambit_fn_02801A78(cpu);
|
|
/* 022C1738 */ cpu->r[30] = cpu->r[3];
|
|
/* 022C1738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022C173C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022C173C */ _t12 = _t11 & 0x00000001u;
|
|
/* 022C173C */ if (_t12) goto L_022C1794; else goto L_022C1740;
|
|
L_022C1740: ; // 0x22c1740
|
|
/* 022C1740 */ cpu->r[5] = 0x10060000u;
|
|
/* 022C1744 */ cpu->r[4] = cpu->r[31];
|
|
/* 022C1748 */ cpu->r[6] = 0x10060000u;
|
|
/* 022C174C */ cpu->r[5] = cpu->r[5] + 0x00004D5Cu;
|
|
/* 022C1750 */ cpu->r[8] = 0x00000000u;
|
|
/* 022C1754 */ cpu->r[6] = cpu->r[6] + 0x00004D68u;
|
|
/* 022C1758 */ cpu->r[7] = cpu->r[5];
|
|
/* 022C175C */ cpu->r[3] = cpu->r[30];
|
|
/* 022C1760 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022C1764 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C1768 */ cpu->r[11] = 0x10060000u;
|
|
/* 022C176C */ _t13 = cpu->r[12] + 0x00004D58u;
|
|
/* 022C176C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022C1770 */ cpu->r[12] = 0x10060000u;
|
|
/* 022C1774 */ _t14 = cpu->r[11] + 0x00004D54u;
|
|
/* 022C1774 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022C1778 */ _t15 = cpu->r[12] + 0x00004D0Cu;
|
|
/* 022C1778 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022C177C */ _t16 = cpu->r[30] + 0x00000054u;
|
|
/* 022C177C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 022C1780 */ cpu->r[0] = 0x10110000u;
|
|
/* 022C1784 */ _t17 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022C1784 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 022C1788 */ cpu->r[0] = cpu->r[0] + 0x00000A2Cu;
|
|
/* 022C178C */ _t18 = cpu->r[30] + 0x00000058u;
|
|
/* 022C178C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 022C1790 */ _t19 = cpu->r[30] + 0x00000000u;
|
|
/* 022C1790 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_022C1794: ; // 0x22c1794
|
|
/* 022C1794 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 022C1794 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022C1798 */ cpu->r[3] = cpu->r[31];
|
|
/* 022C179C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022C179C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022C17A0 */ cpu->lr = cpu->r[0];
|
|
/* 022C17A4 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022C17A4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022C17A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022C17AC */ return;
|
|
}
|
|
|